diff options
author | Max Horn | 2008-10-06 12:48:52 +0000 |
---|---|---|
committer | Max Horn | 2008-10-06 12:48:52 +0000 |
commit | 6a2f3dc0b984bcd8bd84d98ae456ed57fca740d6 (patch) | |
tree | 6c900838c9aacdaa301ce1bab2e75826f9ec67bc /engines/engine.h | |
parent | 6ca906d7aa4e515d0b0ce9c6a5a38500721d2483 (diff) | |
download | scummvm-rg350-6a2f3dc0b984bcd8bd84d98ae456ed57fca740d6.tar.gz scummvm-rg350-6a2f3dc0b984bcd8bd84d98ae456ed57fca740d6.tar.bz2 scummvm-rg350-6a2f3dc0b984bcd8bd84d98ae456ed57fca740d6.zip |
Added new type Engine::Feature; pushed down some #include dependencies
svn-id: r34755
Diffstat (limited to 'engines/engine.h')
-rw-r--r-- | engines/engine.h | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/engines/engine.h b/engines/engine.h index 2bc44ab415..69caafac49 100644 --- a/engines/engine.h +++ b/engines/engine.h @@ -26,12 +26,9 @@ #define ENGINES_ENGINE_H #include "common/scummsys.h" -#include "common/events.h" #include "common/fs.h" #include "common/str.h" -#include "engines/metaengine.h" - class OSystem; namespace Audio { @@ -73,7 +70,7 @@ protected: const Common::String _targetName; // target name for saves - const Common::FSNode _gameDataDir; + const Common::FSNode _gameDataDir; // FIXME: Get rid of this private: /** @@ -151,7 +148,7 @@ public: * Return whether the ENGINE should quit respectively should return to the * launcher. */ - bool shouldQuit() const { return (_eventMan->shouldQuit() || _eventMan->shouldRTL()); } + bool shouldQuit() const; /** * Pause or resume the engine. This should stop/resume any audio playback @@ -176,14 +173,24 @@ public: */ void openMainMenuDialog(); + + /** + * A feature in this context means an ability of the engine which can be + * either available or not. + */ + enum EngineFeature { + /** + * 'Return to launcher' feature is supported, i.e., EVENT_RTL is handled. + */ + kSupportsRTL + }; + /** - * Determine whether the engine supports the specified MetaEngine feature. + * Determine whether the engine supports the specified feature. * - * FIXME: This should not call through to the MetaEngine, but rather should support - * its own list of features. In particular, kSupportsRTL should be an EngineFeature, - * not a MetaEngineFeature. + * @todo Let this return false by default, or even turn it into a pure virtual method. */ - bool hasFeature(MetaEngine::MetaEngineFeature f); + bool hasFeature(EngineFeature f); public: |