openMSX
DirectScalerOutput.hh
Go to the documentation of this file.
1 #ifndef DIRECTSCALEROUTPUT_HH
2 #define DIRECTSCALEROUTPUT_HH
3 
4 #include "ScalerOutput.hh"
5 
6 namespace openmsx {
7 
8 class OutputSurface;
9 
10 template<typename Pixel>
11 class DirectScalerOutput final : public ScalerOutput<Pixel>
12 {
13 public:
14  explicit DirectScalerOutput(OutputSurface& output);
15 
16  unsigned getWidth() const override;
17  unsigned getHeight() const override;
18  Pixel* acquireLine(unsigned y) override;
19  void releaseLine(unsigned y, Pixel* buf) override;
20  void fillLine (unsigned y, Pixel color) override;
21 
22 private:
23  OutputSurface& output;
24 };
25 
26 } // namespace openmsx
27 
28 #endif
void fillLine(unsigned y, Pixel color) override
unsigned getWidth() const override
A frame buffer where pixels can be written to.
uint32_t Pixel
Thanks to enen for testing this on a real cartridge:
Definition: Autofire.cc:5
Pixel * acquireLine(unsigned y) override
void releaseLine(unsigned y, Pixel *buf) override
unsigned getHeight() const override
DirectScalerOutput(OutputSurface &output)