Public Types | Public Member Functions | Protected Member Functions | List of all members
openmsx::VideoLayer Class Referenceabstract

#include <VideoLayer.hh>

Inheritance diagram for openmsx::VideoLayer:
Inheritance graph
Collaboration diagram for openmsx::VideoLayer:
Collaboration graph

Public Types

enum  Video9000Active { INACTIVE , ACTIVE_FRONT , ACTIVE_BACK }
- Public Types inherited from openmsx::Layer
enum  ZIndex {
  Z_DUMMY = -1 , Z_BACKGROUND = 0 , Z_MSX_PASSIVE = 30 , Z_MSX_ACTIVE = 40 ,
  Z_OSDGUI = 50 , Z_CONSOLE = 100
 Determines stacking order of layers: layers with higher Z-indices are closer to the viewer. More...
 Describes how much of the screen is currently covered by a particular layer. More...

Public Member Functions

 VideoLayer (const VideoLayer &)=delete
VideoLayeroperator= (const VideoLayer &)=delete
int getVideoSource () const
 Returns the ID for this videolayer. More...
int getVideoSourceSetting () const
virtual void takeRawScreenShot (unsigned height, const std::string &filename)=0
 Create a raw (=non-postprocessed) screenshot. More...
void setVideo9000Active (int video9000Source_, Video9000Active active)
bool needRender () const
bool needRecord () const
- Public Member Functions inherited from openmsx::Layer
virtual ~Layer ()=default
virtual void paint (OutputSurface &output)=0
 Paint this layer. More...
ZIndex getZ () const
 Query the Z-index of this layer. More...
Coverage getCoverage () const
 Query the coverage of this layer. More...
void setDisplay (LayerListener &display_)
 Store pointer to Display. More...

Protected Member Functions

 VideoLayer (MSXMotherBoard &motherBoard, const std::string &videoSource)
 ~VideoLayer () override
void update (const Setting &setting) noexcept override
- Protected Member Functions inherited from openmsx::Layer
 Layer (Coverage coverage_=COVER_NONE, ZIndex z_=Z_DUMMY)
 Construct a layer. More...
void setCoverage (Coverage coverage_)
 Changes the current coverage of this layer. More...
void setZ (ZIndex z)
 Changes the current Z-index of this layer. More...
- Protected Member Functions inherited from openmsx::Observer< Setting >
 ~Observer ()=default
virtual void subjectDeleted (const Setting &)

Detailed Description

Definition at line 17 of file VideoLayer.hh.

Member Enumeration Documentation

◆ Video9000Active


Definition at line 41 of file VideoLayer.hh.

Constructor & Destructor Documentation

◆ VideoLayer() [1/2]

openmsx::VideoLayer::VideoLayer ( const VideoLayer )

◆ VideoLayer() [2/2]

openmsx::VideoLayer::VideoLayer ( MSXMotherBoard motherBoard,
const std::string &  videoSource 

◆ ~VideoLayer()

openmsx::VideoLayer::~VideoLayer ( )

Member Function Documentation

◆ getVideoSource()

int openmsx::VideoLayer::getVideoSource ( ) const

Returns the ID for this videolayer.

These IDs are globally unique. The 'videosource' setting uses these IDs as possible values.

Definition at line 41 of file

References openmsx::VideoSourceActivator::getID().

Referenced by needRecord(), and needRender().

◆ getVideoSourceSetting()

int openmsx::VideoLayer::getVideoSourceSetting ( ) const

Definition at line 45 of file

References openmsx::VideoSourceSetting::getSource().

◆ needRecord()

bool openmsx::VideoLayer::needRecord ( ) const

◆ needRender()

bool openmsx::VideoLayer::needRender ( ) const

◆ operator=()

VideoLayer& openmsx::VideoLayer::operator= ( const VideoLayer )

◆ setVideo9000Active()

void openmsx::VideoLayer::setVideo9000Active ( int  video9000Source_,
Video9000Active  active 

Definition at line 42 of file VideoLayer.hh.

◆ takeRawScreenShot()

virtual void openmsx::VideoLayer::takeRawScreenShot ( unsigned  height,
const std::string &  filename 
pure virtual

Create a raw (=non-postprocessed) screenshot.

The 'height' parameter should be either '240' or '480'. The current image will be scaled to '320x240' or '640x480' and written to a png file.

Implemented in openmsx::PostProcessor.

◆ update()

void openmsx::VideoLayer::update ( const Setting setting)

Implements openmsx::Observer< Setting >.

Definition at line 50 of file

Referenced by openmsx::GLPostProcessor::update().

The documentation for this class was generated from the following files: