Crazy Eddie's GUI System  ${CEGUI_VERSION}
CEGuiOgreBaseApplication Class Reference
+ Inheritance diagram for CEGuiOgreBaseApplication:
+ Collaboration diagram for CEGuiOgreBaseApplication:

Public Member Functions

 CEGuiOgreBaseApplication ()
 Constructor.
 
 ~CEGuiOgreBaseApplication ()
 Destructor.
 
bool init (SamplesFrameworkBase *sampleApp, const CEGUI::String &logFile, const CEGUI::String &dataPathPrefixOverride)
 Initialise the base application. More...
 
void destroyRenderer ()
 
void doFrameUpdate (float elapsed)
 called by the frame listener to perform requried per-frame updates.
 
bool frameRenderingQueued (const Ogre::FrameEvent &evt)
 Ogre frame listener callback that will trigger our specific context rendering.
 
bool isInitialised ()
 
- Public Member Functions inherited from CEGuiBaseApplication
 CEGuiBaseApplication ()
 Constructor.
 
virtual ~CEGuiBaseApplication ()
 Destructor.
 
virtual void cleanup ()
 Performs any required cleanup of the base application system. More...
 
void renderSingleFrame (const float elapsed)
 Render a single display frame. This should be called by subclasses to perform rendering. More...
 
bool isInitialised ()
 
CEGUI::String getDataPathPrefix () const
 Return the path prefix to use for datafiles. The value returned is obtained via a environment variable named 'CEGUI_SAMPLE_DATAPATH' if the variable is not set, a default will be used depending on the build system in use.
 
void initDataPathPrefix (const CEGUI::String &override)
 
void registerSampleOverlayHandler (CEGUI::GUIContext *gui_context)
 Registers the overlay handler for rendering the FPS for a specified GUIContext.
 
virtual void run ()
 The abstract function for running the application.
 

Protected Member Functions

void initialiseResourceGroupDirectories ()
 
void destroyWindow ()
 The abstract function for destroying the renderer and the window.
 
void beginRendering (const float elapsed)
 Implementation function to perform required pre-render operations.
 
void endRendering ()
 Implementation function to perform required post-render operations.
 
void setupDefaultConfigIfNeeded ()
 
- Protected Member Functions inherited from CEGuiBaseApplication
virtual void initialiseResourceGroupDirectories (const CEGUI::String &dataPathPrefixOverride)
 Setup standard sample resource group directory locations. Default uses the CEGUI::DefaultResourceProvider - override if the sample base app being implemented uses something else!
 
virtual void initialiseDefaultResourceGroups ()
 initialise the standard default resource groups used by the samples.
 
void updateFPS (const float elapsed)
 function that updates the FPS rendering as needed.
 
void updateLogo (const float elapsed)
 function that updates the logo rotation as needed.
 
void positionLogo ()
 function that positions the logo in the correct place.
 
void positionFPS ()
 positions the FPS counter at the correct place.
 
bool sampleBrowserOverlayHandler (const CEGUI::EventArgs &args)
 event handler function that draws the logo and FPS overlay elements.
 
bool sampleOverlayHandler (const CEGUI::EventArgs &args)
 event handler function that draws the FPS overlay elements.
 
bool resizeHandler (const CEGUI::EventArgs &args)
 event handler function called when main view is resized
 

Protected Attributes

Ogre::Rootd_ogreRoot
 
Ogre::Camera * d_camera
 
Ogre::RenderWindow * d_window
 
bool d_initialised
 
CEGuiDemoFrameListenerd_frameListener
 
WndEvtListenerd_windowEventListener
 
- Protected Attributes inherited from CEGuiBaseApplication
bool d_quitting
 true when the base app should cleanup and exit.
 
CEGUI::Rendererd_renderer
 Renderer to use. This MUST be set in the subclass constructor.
 
CEGUI::ImageCodecd_imageCodec
 ImageCodec to use. Set in subclass constructor, may be 0.
 
CEGUI::ResourceProviderd_resourceProvider
 ResourceProvider to use. Set in subclass constructor, may be 0.
 
CEGUI::GeometryBufferd_logoGeometry
 GeometryBuffer used for drawing the spinning CEGUI logo.
 
CEGUI::GeometryBufferd_FPSGeometry
 GeometryBuffer used for drawing the FPS value.
 
float d_FPSElapsed
 Fraction of second elapsed (used for counting frames per second).
 
int d_FPSFrames
 Number of frames drawn so far.
 
int d_FPSValue
 Last changed FPS value.
 
bool d_spinLogo
 whether to spin the logo
 

Additional Inherited Members

- Static Protected Attributes inherited from CEGuiBaseApplication
static const char DATAPATH_VAR_NAME [] = "CEGUI_SAMPLE_DATAPATH"
 name of env var that holds the path prefix to the data files.
 
static SamplesFrameworkBased_sampleApp
 SampleFramework base used in the application.
 
static const int s_defaultWindowWidth = 1280
 The window width the application should get created with at start.
 
static const int s_defaultWindowHeight = 720
 The window height the application should get created with at start.
 

Member Function Documentation

bool CEGuiOgreBaseApplication::init ( SamplesFrameworkBase sampleApp,
const CEGUI::String logFile,
const CEGUI::String dataPathPrefixOverride 
)
virtual

Initialise the base application.

This will fully initialise the application, finish initialisation of the demo via calls to 'sampleApp', and finally control execution of the sample. This calls calls the virtual run function.

Classes that override this method must first call the implementation of the superclass!

Parameters
sampleAppPointer to the CEGuiSample object that the CEGuiBaseApplication is being invoked for.
Returns
  • true if the application initialised okay (cleanup function will be called).

Reimplemented from CEGuiBaseApplication.