aboutsummaryrefslogtreecommitdiff
path: root/common/system.h
diff options
context:
space:
mode:
authorcpasjuste2017-03-01 14:00:17 -0600
committerrsn88872017-03-04 15:42:19 -0600
commit70988527c64947fd7fe3c361907e9f0806b0cb5c (patch)
tree9472f2a894e65f98dcbdda60e7c46c32d28defd6 /common/system.h
parent3a7c0911224adc0d0d467dc530f62f97a8868bee (diff)
downloadscummvm-rg350-70988527c64947fd7fe3c361907e9f0806b0cb5c.tar.gz
scummvm-rg350-70988527c64947fd7fe3c361907e9f0806b0cb5c.tar.bz2
scummvm-rg350-70988527c64947fd7fe3c361907e9f0806b0cb5c.zip
PSP2: Add Playstation Vita (PSP2) support
Diffstat (limited to 'common/system.h')
-rw-r--r--common/system.h35
1 files changed, 34 insertions, 1 deletions
diff --git a/common/system.h b/common/system.h
index 83bc457707..68d33b78be 100644
--- a/common/system.h
+++ b/common/system.h
@@ -361,7 +361,12 @@ public:
/**
* change analog joystick deadzone
*/
- kFeatureJoystickDeadzone
+ kFeatureJoystickDeadzone,
+
+ /**
+ * shaders
+ */
+ kFeatureShader
};
@@ -573,6 +578,34 @@ public:
#endif
/**
+ * Retrieve a list of all hardware shaders supported by this backend.
+ * This can be only hardware shaders.
+ * it is completely up to the backend maintainer to decide what is
+ * appropriate here and what not.
+ * The list is terminated by an all-zero entry.
+ * @return a list of supported shaders
+ */
+ virtual const GraphicsMode *getSupportedShaders() const {
+ static const OSystem::GraphicsMode no_shader[2] = {{"NONE", "Normal (no shader)", 0}, {0, 0, 0}};
+ return no_shader;
+ }
+
+ /**
+ * Switch to the specified shader mode. If switching to the new mode
+ * failed, this method returns false.
+ *
+ * @param mode the ID of the new shader mode
+ * @return true if the switch was successful, false otherwise
+ */
+ virtual bool setShader(int id) { return false; }
+
+ /**
+ * Determine which shader is currently active.
+ * @return the ID of the active shader
+ */
+ virtual int getShader() { return 0; }
+
+ /**
* Set the size and color format of the virtual screen. Typical sizes include:
* - 320x200 (e.g. for most SCUMM games, and Simon)
* - 320x240 (e.g. for FM-TOWN SCUMM games)