openMSX
V9990Rasterizer.hh
Go to the documentation of this file.
1 #ifndef V9990RASTERIZER_HH
2 #define V9990RASTERIZER_HH
3 
4 #include "V9990ModeEnum.hh"
5 #include "EmuTime.hh"
6 #include "openmsx.hh"
7 
8 namespace openmsx {
9 
10 class PostProcessor;
11 
16 {
17 public:
18  virtual ~V9990Rasterizer() = default;
19 
21  virtual PostProcessor* getPostProcessor() const = 0;
22 
28  virtual bool isActive() = 0;
29 
32  virtual void reset() = 0;
33 
36  virtual void frameStart() = 0;
37 
40  virtual void frameEnd(EmuTime::param time) = 0;
41 
46  virtual void setDisplayMode(enum V9990DisplayMode displayMode) = 0;
47 
52  virtual void setColorMode(enum V9990ColorMode colorMode) = 0;
53 
61  virtual void setPalette(int index, byte r, byte g, byte b, bool ys) = 0;
62 
64  virtual void setSuperimpose(bool enabled) = 0;
65 
73  virtual void drawBorder(
74  int fromX, int fromY,
75  int limitX, int limitY) = 0;
76 
91  virtual void drawDisplay(
92  int fromX, int fromY, int toX, int toY,
93  int displayX, int displayY, int displayYA, int displayYB) = 0;
94 
97  virtual bool isRecording() const = 0;
98 };
99 
100 } // namespace openmsx
101 
102 #endif
openmsx::V9990Rasterizer::drawBorder
virtual void drawBorder(int fromX, int fromY, int limitX, int limitY)=0
Render a rectangle of border pixels on the host screen.
openmsx.hh
openmsx::V9990Rasterizer::reset
virtual void reset()=0
Resynchronize with VDP - flush caches etc.
openmsx::V9990Rasterizer::isActive
virtual bool isActive()=0
Will the output of this Rasterizer be displayed? There is no point in producing a frame that will not...
openmsx::V9990Rasterizer::setPalette
virtual void setPalette(int index, byte r, byte g, byte b, bool ys)=0
Set RGB values for a palette entry.
V9990ModeEnum.hh
openmsx::V9990ColorMode
V9990ColorMode
Definition: V9990ModeEnum.hh:11
openmsx::V9990Rasterizer::setColorMode
virtual void setColorMode(enum V9990ColorMode colorMode)=0
The color mode determines how the V9990 VRAM data gets converted to pixel colors.
openmsx::V9990Rasterizer::setSuperimpose
virtual void setSuperimpose(bool enabled)=0
Is superimpose enabled?
openmsx::V9990DisplayMode
V9990DisplayMode
Definition: V9990ModeEnum.hh:6
openmsx::V9990Rasterizer::setDisplayMode
virtual void setDisplayMode(enum V9990DisplayMode displayMode)=0
The display mode determines the screens geometry and how V9990 pixels are mapped to pixels on screen.
openmsx::PostProcessor
Abstract base class for post processors.
Definition: PostProcessor.hh:30
g
int g
Definition: ScopedAssign_test.cc:20
openmsx::V9990Rasterizer::frameEnd
virtual void frameEnd(EmuTime::param time)=0
Indicates the end of the current frame.
openmsx::V9990Rasterizer::getPostProcessor
virtual PostProcessor * getPostProcessor() const =0
See V9990::getPostProcessor().
EmuTime.hh
openmsx::V9990Rasterizer::frameStart
virtual void frameStart()=0
Indicates the start of a new frame.
openmsx::V9990Rasterizer::drawDisplay
virtual void drawDisplay(int fromX, int fromY, int toX, int toY, int displayX, int displayY, int displayYA, int displayYB)=0
Render a rectangle of display pixels on the host screen.
openmsx::V9990Rasterizer::isRecording
virtual bool isRecording() const =0
Is video recording active?
openmsx
This file implemented 3 utility functions:
Definition: Autofire.cc:5
openmsx::V9990Rasterizer::~V9990Rasterizer
virtual ~V9990Rasterizer()=default
openmsx::V9990Rasterizer
If this seems awfully familiar, take a look at Rasterizer.hh It's virtually the same class,...
Definition: V9990Rasterizer.hh:16