openMSX
SuperImposedFrame.hh
Go to the documentation of this file.
1#ifndef SUPERIMPOSEDFRAME_HH
2#define SUPERIMPOSEDFRAME_HH
3
4#include "FrameSource.hh"
5
6namespace openmsx {
7
13class SuperImposedFrame final : public FrameSource
14{
15public:
16 void init(const FrameSource* top, const FrameSource* bottom);
17
18 [[nodiscard]] unsigned getLineWidth(unsigned line) const override;
19 [[nodiscard]] std::span<const Pixel> getUnscaledLine(
20 unsigned line, std::span<Pixel> helpBuf) const override;
21
22private:
23 const FrameSource* top;
24 const FrameSource* bottom;
25};
26
27} // namespace openmsx
28
29#endif
Interface for getting lines from a video frame.
This class represents a frame that is the (per-pixel) alpha-blend of two other frames.
void init(const FrameSource *top, const FrameSource *bottom)
unsigned getLineWidth(unsigned line) const override
Gets the number of display pixels on the given line.
std::span< const Pixel > getUnscaledLine(unsigned line, std::span< Pixel > helpBuf) const override
Get a specific line, with the 'native' line-width.
This file implemented 3 utility functions:
Definition Autofire.cc:11