|  | OGRE
    1.11.6
    Object-Oriented Graphics Rendering Engine | 
Base class responsible for setting up a common context for applications. More...
#include <OgreApplicationContext.h>
 Inheritance diagram for OgreBites::ApplicationContext:
 Inheritance diagram for OgreBites::ApplicationContext:| Public Member Functions | |
| ApplicationContext (const Ogre::String &appName=OGRE_VERSION_NAME, bool unused=true) | |
| virtual | ~ApplicationContext () | 
| void | _fireInputEvent (const Event &event, uint32_t windowID) const | 
| inspect the event and call one of the corresponding functions on the registered InputListener  More... | |
| void | addInputListener (NativeWindowType *win, InputListener *lis) | 
| attach input listener  More... | |
| void | addInputListener (InputListener *lis) | 
| void | closeApp () | 
| This function closes down the application - saves the configuration then shutdowns.  More... | |
| void | createDummyScene () | 
| Creates dummy scene to allow rendering GUI in viewport.  More... | |
| virtual void | createRoot () | 
| Creates the OGRE root.  More... | |
| virtual NativeWindowPair | createWindow (const Ogre::String &name, uint32_t w=0, uint32_t h=0, Ogre::NameValuePairList miscParams=Ogre::NameValuePairList()) | 
| Create a new render window.  More... | |
| void | destroyDummyScene () | 
| Destroys dummy scene.  More... | |
| void | destroyRTShaderSystem () | 
| Destroy the RT Shader system.  More... | |
| void | enableShaderCache () const | 
| enables the caching of compiled shaders to file  More... | |
| virtual bool | frameEnded (const Ogre::FrameEvent &evt) | 
| Called just after a frame has been rendered.  More... | |
| virtual bool | frameRenderingQueued (const Ogre::FrameEvent &evt) | 
| Called after all render targets have had their rendering commands issued, but before render windows have been asked to flip their buffers over.  More... | |
| virtual bool | frameStarted (const Ogre::FrameEvent &evt) | 
| Called when a frame is about to begin rendering.  More... | |
| Ogre::FileSystemLayer & | getFSLayer () | 
| get the FileSystemLayer instace pointing to an application specific directory  More... | |
| Ogre::OverlaySystem * | getOverlaySystem () const | 
| Ogre::RenderWindow * | getRenderWindow () const | 
| get the main RenderWindow owns the context on OpenGL  More... | |
| Ogre::Root * | getRoot () const | 
| void | initApp () | 
| This function initializes the render system and resources.  More... | |
| bool | initialiseRTShaderSystem () | 
| Initialize the RT Shader system.  More... | |
| virtual void | loadResources () | 
| Loads context-wide resource groups.  More... | |
| virtual void | locateResources () | 
| Finds context-wide resource groups.  More... | |
| virtual bool | oneTimeConfig () | 
| Configures the startup settings for OGRE.  More... | |
| void | pollEvents () | 
| process all window events since last call  More... | |
| virtual void | reconfigure (const Ogre::String &renderer, Ogre::NameValuePairList &options) | 
| Reconfigures the context.  More... | |
| void | removeInputListener (NativeWindowType *win, InputListener *lis) | 
| detatch input listener  More... | |
| void | removeInputListener (InputListener *lis) | 
| void | setRTSSWriteShadersToDisk (bool write) | 
| make the RTSS write out the generated shaders for caching and debugging  More... | |
| virtual void | setup () | 
| Sets up the context after configuration.  More... | |
| void | setWindowGrab (NativeWindowType *win, bool grab=true) | 
| When input is grabbed the mouse is confined to the window.  More... | |
| void | setWindowGrab (bool grab=true) | 
| virtual void | shutdown () | 
| Cleans up and shuts down the context.  More... | |
| virtual void | windowClosed (Ogre::RenderWindow *rw) | 
| virtual bool | windowClosing (Ogre::RenderWindow *rw) | 
| virtual void | windowFocusChange (Ogre::RenderWindow *rw) | 
| virtual void | windowMoved (Ogre::RenderWindow *rw) | 
| virtual void | windowResized (Ogre::RenderWindow *rw) | 
| Static Public Member Functions | |
| static Ogre::String | getDefaultMediaDir () | 
| the directory where the media files were installed  More... | |
Base class responsible for setting up a common context for applications.
Subclass to implement specific event callbacks.
| 
 | explicit | 
| 
 | virtual | 
| 
 | inline | 
get the main RenderWindow owns the context on OpenGL
| 
 | inline | 
| 
 | inline | 
| void OgreBites::ApplicationContext::initApp | ( | ) | 
This function initializes the render system and resources.
| void OgreBites::ApplicationContext::closeApp | ( | ) | 
This function closes down the application - saves the configuration then shutdowns.
| 
 | inlinevirtual | 
Called when a frame is about to begin rendering.
Reimplemented from Ogre::FrameListener.
| 
 | virtual | 
Called after all render targets have had their rendering commands issued, but before render windows have been asked to flip their buffers over.
Reimplemented from Ogre::FrameListener.
| 
 | inlinevirtual | 
Called just after a frame has been rendered.
Reimplemented from Ogre::FrameListener.
| 
 | inlinevirtual | 
| 
 | inlinevirtual | 
| 
 | inlinevirtual | 
| 
 | inlinevirtual | 
| 
 | inlinevirtual | 
| void OgreBites::ApplicationContext::_fireInputEvent | ( | const Event & | event, | 
| uint32_t | windowID | ||
| ) | const | 
inspect the event and call one of the corresponding functions on the registered InputListener
| event | Input Event | 
| windowID | only call listeners of this window | 
| bool OgreBites::ApplicationContext::initialiseRTShaderSystem | ( | ) | 
Initialize the RT Shader system.
| void OgreBites::ApplicationContext::setRTSSWriteShadersToDisk | ( | bool | write | ) | 
make the RTSS write out the generated shaders for caching and debugging
by default all shaders are generated to system memory. Must be called before loadResources
| write | 
| void OgreBites::ApplicationContext::destroyRTShaderSystem | ( | ) | 
Destroy the RT Shader system.
| 
 | virtual | 
Sets up the context after configuration.
| 
 | virtual | 
Creates the OGRE root.
| 
 | virtual | 
Configures the startup settings for OGRE.
I use the config dialog here, but you can also restore from a config file. Note that this only happens when you start the context, and not when you reset it.
| void OgreBites::ApplicationContext::setWindowGrab | ( | NativeWindowType * | win, | 
| bool | grab = true | ||
| ) | 
When input is grabbed the mouse is confined to the window.
| 
 | inline | 
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
References OgreAssert.
| 
 | virtual | 
Finds context-wide resource groups.
I load paths from a config file here, but you can choose your resource locations however you want.
| 
 | virtual | 
Loads context-wide resource groups.
I chose here to simply initialise all groups, but you can fully load specific ones if you wish.
| 
 | virtual | 
Reconfigures the context.
Attempts to preserve the current sample state.
| 
 | virtual | 
Cleans up and shuts down the context.
| void OgreBites::ApplicationContext::pollEvents | ( | ) | 
process all window events since last call
| void OgreBites::ApplicationContext::createDummyScene | ( | ) | 
Creates dummy scene to allow rendering GUI in viewport.
| void OgreBites::ApplicationContext::destroyDummyScene | ( | ) | 
Destroys dummy scene.
| void OgreBites::ApplicationContext::enableShaderCache | ( | ) | const | 
enables the caching of compiled shaders to file
also loads any existing cache
| void OgreBites::ApplicationContext::addInputListener | ( | NativeWindowType * | win, | 
| InputListener * | lis | ||
| ) | 
attach input listener
| lis | the listener | 
| win | the window to receive the events for. | 
| 
 | inline | 
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
References OgreAssert.
| void OgreBites::ApplicationContext::removeInputListener | ( | NativeWindowType * | win, | 
| InputListener * | lis | ||
| ) | 
detatch input listener
| lis | the listener | 
| win | the window to receive the events for. | 
| 
 | inline | 
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
References OgreAssert.
| 
 | virtual | 
Create a new render window.
You must use SDL and not an auto-created window as SDL does not get the events otherwise.
By default the values from ogre.cfg are used for w, h and miscParams.
| 
 | inline | 
get the FileSystemLayer instace pointing to an application specific directory
| 
 | static | 
the directory where the media files were installed
same as OGRE_MEDIA_DIR in CMake