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 virtual ~SuperImposedFrame() = default;
17 void init(const FrameSource* top, const FrameSource* bottom);
18
19 [[nodiscard]] unsigned getLineWidth(unsigned line) const override;
20 [[nodiscard]] const void* getLineInfo(
21 unsigned line, unsigned& width,
22 void* buf, unsigned bufWidth) const override;
23
24private:
25 const FrameSource* top;
26 const FrameSource* bottom;
27};
28
29} // namespace openmsx
30
31#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.
const void * getLineInfo(unsigned line, unsigned &width, void *buf, unsigned bufWidth) const override
Abstract implementation of getLinePtr().
virtual ~SuperImposedFrame()=default
void init(const FrameSource *top, const FrameSource *bottom)
unsigned getLineWidth(unsigned line) const override
Gets the number of display pixels on the given line.
This file implemented 3 utility functions:
Definition Autofire.cc:9