1 #ifndef RENDERSETTINGS_HH
2 #define RENDERSETTINGS_HH
14 class CommandController;
96 return (horizontalBlurSetting.
getInt()) * 256 / 100;
101 return 255 - ((scanlineAlphaSetting.
getInt() * 255) / 100);
106 return scanlineAlphaSetting.
getInt() * 0.01f;
115 return scaleAlgorithmSetting.
getEnum();
155 return horizontalStretchSetting;
158 return horizontalStretchSetting.
getDouble();
164 return pointerHideDelaySetting;
167 return pointerHideDelaySetting.
getDouble();
172 return interleaveBlackFrameSetting.
getBoolean();
197 void update(
const Setting& setting)
override;
202 void updateBrightnessAndContrast();
bool getBoolean() const noexcept
T getEnum() const noexcept
A Setting with a floating point value.
double getDouble() const noexcept
A Setting with an integer value.
int getInt() const noexcept
Generic Gang-of-Four Observer class, templatized edition.
Class containing all settings for renderers.
bool getDeflicker() const
Deflicker [on, off].
float getBrightness() const
bool getDeinterlace() const
Deinterlacing [on, off].
float transformComponent(float c) const
Apply brightness, contrast and gamma transformation on the input color component.
gl::vec3 transformRGB(gl::vec3 rgb) const
Apply brightness, contrast and gamma transformation on the input color.
Accuracy
Render accuracy: granularity of the rendered area.
int getGlow() const
The amount of glow [0..100].
StringSetting & getColorMatrixSetting()
Color matrix setting.
int getScanlineFactor() const
The alpha value [0..255] of the gap between scanlines.
EnumSetting< bool > & getTooFastAccessSetting()
TooFastAccess [real, ignored].
bool getInterleaveBlackFrame() const
Is black frame interleaving enabled?
RenderSettings(CommandController &commandController)
float getScanlineGap() const
The amount of space [0..1] between scanlines.
bool isColorMatrixIdentity()
Returns true iff the current color matrix is the identity matrix.
BooleanSetting & getFullScreenSetting()
Full screen [on, off].
IntegerSetting & getMinFrameSkipSetting()
The current min frameskip.
RendererID getRenderer() const
Accuracy getAccuracy() const
Accuracy [screen, line, pixel].
float getHorizontalStretch() const
float getPointerHideDelay() const
BooleanSetting & getLimitSpritesSetting()
Limit number of sprites per line? If true, limit number of sprites per line as real VDP does.
EnumSetting< RendererID > RendererSetting
FloatSetting & getNoiseSetting()
The amount of noise to add to the frame.
FloatSetting & getHorizontalStretchSetting()
Amount of horizontal stretch.
int getScaleFactor() const
FloatSetting & getPointerHideDelaySetting()
The amount of time until the pointer is hidden in the openMSX window.
int getMinFrameSkip() const
int getMaxFrameSkip() const
BooleanSetting & getVSyncSetting()
VSync [on, off] ATM this only works when using the SDLGL-PP renderer.
ScaleAlgorithm
Scaler algorithm.
FloatSetting & getGammaSetting()
The amount of gamma correction.
int getBlurFactor() const
The amount of horizontal blur [0..256].
bool getDisableSprites() const
Disable sprite rendering?
FloatSetting & getBrightnessSetting()
Brightness video setting.
IntegerSetting & getMaxFrameSkipSetting()
The current max frameskip.
bool getFullScreen() const
DisplayDeform getDisplayDeform()
Display deformation (normal, 3d) ATM this only works when using the SDLGL-PP renderer.
FloatSetting & getContrastSetting()
Contrast video setting.
RendererID
Enumeration of Renderers known to openMSX.
float getContrast() const
RendererSetting & getRendererSetting()
The current renderer.
IntegerSetting & getScaleFactorSetting()
The current scaling factor.
EnumSetting< bool > & getCmdTimingSetting()
CmdTiming [real, broken].
ScaleAlgorithm getScaleAlgorithm() const
The current scaling algorithm.
This file implemented 3 utility functions: