OpenMW
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
environment.hpp
Go to the documentation of this file.
1 #ifndef GAME_BASE_ENVIRONMENT_H
2 #define GAME_BASE_ENVIRONMENT_H
3 
4 namespace MWBase
5 {
6  class World;
7  class ScriptManager;
8  class DialogueManager;
9  class Journal;
10  class SoundManager;
11  class MechanicsManager;
12  class InputManager;
13  class WindowManager;
14  class StateManager;
15 
23  {
24  static Environment *sThis;
25 
37 
38  Environment (const Environment&);
40 
43 
44  public:
45 
46  Environment();
47 
48  ~Environment();
49 
50  void setWorld (World *world);
51 
52  void setSoundManager (SoundManager *soundManager);
53 
54  void setScriptManager (MWBase::ScriptManager *scriptManager);
55 
56  void setWindowManager (WindowManager *windowManager);
57 
58  void setMechanicsManager (MechanicsManager *mechanicsManager);
59 
60  void setDialogueManager (DialogueManager *dialogueManager);
61 
62  void setJournal (Journal *journal);
63 
64  void setInputManager (InputManager *inputManager);
65 
66  void setStateManager (StateManager *stateManager);
67 
68  void setFrameDuration (float duration);
70 
71  void setFrameRateLimit(float frameRateLimit);
72  float getFrameRateLimit() const;
73  void limitFrameRate(double dt) const;
74 
75  World *getWorld() const;
76 
78 
80 
82 
84 
86 
87  Journal *getJournal() const;
88 
90 
92 
93  float getFrameDuration() const;
94 
95  void cleanup();
97 
98  static const Environment& get();
100  };
101 }
102 
103 #endif
Interface for dialogue manager (implemented in MWDialogue)
Definition: dialoguemanager.hpp:29
void setStateManager(StateManager *stateManager)
Definition: environment.cpp:74
void setWindowManager(WindowManager *windowManager)
Definition: environment.cpp:49
Interface for input manager (implemented in MWInput)
Definition: inputmanager.hpp:24
World * getWorld() const
Definition: environment.cpp:107
Interface for the World (implemented in MWWorld)
Definition: world.hpp:77
StateManager * mStateManager
Definition: environment.hpp:34
World * mWorld
Definition: environment.hpp:26
Interface for the player's journal (implemented in MWDialogue)
Definition: journal.hpp:28
WindowManager * getWindowManager() const
Definition: environment.cpp:125
Central hub for mw-subsystems.
Definition: environment.hpp:22
SoundManager * mSoundManager
Definition: environment.hpp:27
SoundManager * getSoundManager() const
Definition: environment.cpp:113
float getFrameRateLimit() const
Definition: environment.cpp:89
MechanicsManager * getMechanicsManager() const
Definition: environment.cpp:131
static Environment * sThis
Definition: environment.hpp:24
ScriptManager * mScriptManager
Definition: environment.hpp:28
Journal * getJournal() const
Definition: environment.cpp:143
ScriptManager * getScriptManager() const
Definition: environment.cpp:119
InputManager * mInputManager
Definition: environment.hpp:33
Environment & operator=(const Environment &)
not implemented
float mFrameDuration
Definition: environment.hpp:35
float getFrameDuration() const
Definition: environment.cpp:161
Environment()
Definition: environment.cpp:19
void setDialogueManager(DialogueManager *dialogueManager)
Definition: environment.cpp:59
void setInputManager(InputManager *inputManager)
Definition: environment.cpp:69
Interface for game state manager (implemented in MWState)
Definition: statemanager.hpp:16
Journal * mJournal
Definition: environment.hpp:32
float mFrameRateLimit
Definition: environment.hpp:36
Interface for widnow manager (implemented in MWGui)
Definition: windowmanager.hpp:89
void setScriptManager(MWBase::ScriptManager *scriptManager)
Definition: environment.cpp:44
void limitFrameRate(double dt) const
Definition: environment.cpp:94
void setFrameRateLimit(float frameRateLimit)
Definition: environment.cpp:84
Interface for script manager (implemented in MWScript)
Definition: scriptmanager.hpp:24
DialogueManager * getDialogueManager() const
Definition: environment.cpp:137
Interface for sound manager (implemented in MWSound)
Definition: soundmanager.hpp:60
void setWorld(World *world)
Definition: environment.cpp:34
StateManager * getStateManager() const
Definition: environment.cpp:155
void setFrameDuration(float duration)
Set length of current frame in seconds.
Definition: environment.cpp:79
InputManager * getInputManager() const
Definition: environment.cpp:149
Interface for game mechanics manager (implemented in MWMechanics)
Definition: mechanicsmanager.hpp:40
void setJournal(Journal *journal)
Definition: environment.cpp:64
void cleanup()
Delete all mw*-subsystems.
Definition: environment.cpp:166
MechanicsManager * mMechanicsManager
Definition: environment.hpp:30
DialogueManager * mDialogueManager
Definition: environment.hpp:31
WindowManager * mWindowManager
Definition: environment.hpp:29
void setMechanicsManager(MechanicsManager *mechanicsManager)
Definition: environment.cpp:54
void setSoundManager(SoundManager *soundManager)
Definition: environment.cpp:39
~Environment()
Definition: environment.cpp:28