openMSX
|
#include <VideoLayer.hh>
Public Types | |
enum class | Video9000Active { NO , FRONT , BACK } |
Public Types inherited from openmsx::Layer | |
enum class | ZIndex { BACKGROUND , MSX_PASSIVE , MSX_ACTIVE , OSDGUI , IMGUI } |
Determines stacking order of layers: layers with higher Z-indices are closer to the viewer. More... | |
enum class | Coverage { FULL , PARTIAL , NONE } |
Describes how much of the screen is currently covered by a particular layer. More... | |
Public Member Functions | |
VideoLayer (const VideoLayer &)=delete | |
VideoLayer (VideoLayer &&)=delete | |
VideoLayer & | operator= (const VideoLayer &)=delete |
VideoLayer & | operator= (VideoLayer &&)=delete |
int | getVideoSource () const |
Returns the ID for this VideoLayer. | |
int | getVideoSourceSetting () const |
virtual void | takeRawScreenShot (unsigned height, const std::string &filename)=0 |
Create a raw (=non-post-processed) screenshot. | |
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. | |
ZIndex | getZ () const |
Query the Z-index of this layer. | |
bool | isActive () const |
Coverage | getCoverage () const |
Query the coverage of this layer. | |
void | setDisplay (Display &display_) |
Store pointer to Display. | |
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_, ZIndex z_) | |
Construct a layer. | |
void | setCoverage (Coverage coverage_) |
Changes the current coverage of this layer. | |
void | setZ (ZIndex z) |
Changes the current Z-index of this layer. | |
Protected Member Functions inherited from openmsx::Observer< Setting > | |
Observer ()=default | |
~Observer ()=default | |
Observer (const Observer &)=delete | |
Observer (Observer &&)=delete | |
Observer & | operator= (const Observer &)=delete |
Observer & | operator= (Observer &&)=delete |
virtual void | subjectDeleted (const Setting &) |
Definition at line 17 of file VideoLayer.hh.
|
strong |
Enumerator | |
---|---|
NO | |
FRONT | |
BACK |
Definition at line 43 of file VideoLayer.hh.
|
delete |
|
delete |
|
protected |
Definition at line 13 of file VideoLayer.cc.
References openmsx::Display::addLayer(), openmsx::Subject< T >::attach(), openmsx::MSXMotherBoard::getMSXEventDistributor(), and openmsx::MSXEventDistributor::registerEventListener().
|
overrideprotected |
Definition at line 31 of file VideoLayer.cc.
References openmsx::Subject< T >::detach(), openmsx::MSXMotherBoard::getMSXEventDistributor(), openmsx::Display::removeLayer(), and openmsx::MSXEventDistributor::unregisterEventListener().
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 40 of file VideoLayer.cc.
References openmsx::VideoSourceActivator::getID().
Referenced by needRecord(), and needRender().
int openmsx::VideoLayer::getVideoSourceSetting | ( | ) | const |
Definition at line 44 of file VideoLayer.cc.
References openmsx::VideoSourceSetting::getSource().
bool openmsx::VideoLayer::needRecord | ( | ) | const |
Definition at line 92 of file VideoLayer.cc.
References FRONT, openmsx::VideoSourceSetting::getSource(), and getVideoSource().
Referenced by openmsx::PostProcessor::rotateFrames().
bool openmsx::VideoLayer::needRender | ( | ) | const |
Definition at line 82 of file VideoLayer.cc.
References openmsx::VideoSourceSetting::getSource(), getVideoSource(), and NO.
|
delete |
|
delete |
|
inline |
Definition at line 44 of file VideoLayer.hh.
|
pure virtual |
Create a raw (=non-post-processed) 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.
|
overrideprotectedvirtualnoexcept |
Implements openmsx::Observer< Setting >.
Definition at line 49 of file VideoLayer.cc.
References setting.