i6engine  1.0
i6e::modules::GraphicsManager Class Reference

#include <D:/Projekte/i6engine/libs/i6engine-modules/include/i6engine/modules/graphics/GraphicsManager.h>

Public Member Functions

 GraphicsManager (GraphicsController *ctrl, HWND hWnd)
 initializes Ogre graphics More...
 
 ~GraphicsManager ()
 deletes all Ogre stuff More...
 
Ogre::Root * getRoot () const
 Returns a pointer the root element of the graphics library. More...
 
Ogre::SceneManager * getSceneManager () const
 Returns a pointer to the sceneManager of the object. More...
 
GraphicsNodegetOrCreateGraphicsNode (const int64_t goid, const Vec3 &position=Vec3(0.0, 0.0, 0.0), const Quaternion &rotation=Quaternion(1.0, 0.0, 0.0, 0.0), const Vec3 &scale=Vec3(1.0, 1.0, 1.0))
 Gets or creates a graphic node for given goid. More...
 
GraphicsNodegetGraphicsNode (const int64_t goid) const
 Gets a graphic node for given goid. More...
 
void deleteGraphicsNode (const int64_t goid)
 Deletes GraphicsNode by goid. More...
 
void addTerrain (const int64_t id, const boost::shared_ptr< Terrain > &t)
 addTerrain More...
 
void removeTerrain (const int64_t id)
 removeTerrain More...
 
void Tick ()
 Called on every tick of the graphics subsystem. More...
 
bool windowClosing (Ogre::RenderWindow *rw)
 windowClosing More...
 
void NewsCreate (const api::GameMessage::Ptr &msg)
 handles all create messages for the graphics subsystem More...
 
void NewsUpdate (const api::GameMessage::Ptr &msg)
 handles all update messages for the graphics subsystem More...
 
void NewsDelete (const api::GameMessage::Ptr &msg)
 handles all delete messages for the graphics subsystem More...
 
void NewsNodeCreate (const api::GameMessage::Ptr &msg)
 handles all create messages for the graphic nodes More...
 
void NewsNodeUpdate (const api::GameMessage::Ptr &msg)
 handles all update messages for the graphic nodes More...
 
void NewsNodeDelete (const api::GameMessage::Ptr &msg)
 handles all delete messages for the graphic nodes More...
 
void addTicker (GraphicsNode *gn)
 adds GraphicsNode to tickList More...
 
void removeTicker (GraphicsNode *gn)
 removes GraphicsNode to tickList More...
 
Ogre::RenderWindow * getRenderWindow () const
 

Detailed Description

Definition at line 58 of file GraphicsManager.h.

Constructor & Destructor Documentation

i6e::modules::GraphicsManager::GraphicsManager ( GraphicsController ctrl,
HWND  hWnd 
)

initializes Ogre graphics

i6e::modules::GraphicsManager::~GraphicsManager ( )

deletes all Ogre stuff

Member Function Documentation

void i6e::modules::GraphicsManager::addTerrain ( const int64_t  id,
const boost::shared_ptr< Terrain > &  t 
)

addTerrain

Writes terrain object to an array by index (possibly overwriting!)

void i6e::modules::GraphicsManager::addTicker ( GraphicsNode gn)

adds GraphicsNode to tickList

void i6e::modules::GraphicsManager::deleteGraphicsNode ( const int64_t  goid)

Deletes GraphicsNode by goid.

Deletes GraphicsNode by goid

GraphicsNode* i6e::modules::GraphicsManager::getGraphicsNode ( const int64_t  goid) const

Gets a graphic node for given goid.

Parameters
[in]goidID for the graphic node
GraphicsNode* i6e::modules::GraphicsManager::getOrCreateGraphicsNode ( const int64_t  goid,
const Vec3 position = Vec3(0.0, 0.0, 0.0),
const Quaternion rotation = Quaternion(1.0, 0.0, 0.0, 0.0),
const Vec3 scale = Vec3(1.0, 1.0, 1.0) 
)

Gets or creates a graphic node for given goid.

Ogre::RenderWindow* i6e::modules::GraphicsManager::getRenderWindow ( ) const
inline

Definition at line 180 of file GraphicsManager.h.

Ogre::Root* i6e::modules::GraphicsManager::getRoot ( ) const
inline

Returns a pointer the root element of the graphics library.

Returns
Root Element of the graphics library

Definition at line 74 of file GraphicsManager.h.

Ogre::SceneManager* i6e::modules::GraphicsManager::getSceneManager ( ) const
inline

Returns a pointer to the sceneManager of the object.

Returns a pointer to the sceneManager of the object

Returns
SceneManager of the object

Definition at line 83 of file GraphicsManager.h.

void i6e::modules::GraphicsManager::NewsCreate ( const api::GameMessage::Ptr msg)

handles all create messages for the graphics subsystem

void i6e::modules::GraphicsManager::NewsDelete ( const api::GameMessage::Ptr msg)

handles all delete messages for the graphics subsystem

void i6e::modules::GraphicsManager::NewsNodeCreate ( const api::GameMessage::Ptr msg)

handles all create messages for the graphic nodes

void i6e::modules::GraphicsManager::NewsNodeDelete ( const api::GameMessage::Ptr msg)

handles all delete messages for the graphic nodes

void i6e::modules::GraphicsManager::NewsNodeUpdate ( const api::GameMessage::Ptr msg)

handles all update messages for the graphic nodes

void i6e::modules::GraphicsManager::NewsUpdate ( const api::GameMessage::Ptr msg)

handles all update messages for the graphics subsystem

void i6e::modules::GraphicsManager::removeTerrain ( const int64_t  id)

removeTerrain

Removes terrain object in array by index.

void i6e::modules::GraphicsManager::removeTicker ( GraphicsNode gn)

removes GraphicsNode to tickList

void i6e::modules::GraphicsManager::Tick ( )

Called on every tick of the graphics subsystem.

In effect the main render-loop invokes Ogre's _objRoot->renderOneFrame() calls tick on GUIController and injectTimePulse on CEGUI

Updates the GUI and tells Ogre to render the scene.

bool i6e::modules::GraphicsManager::windowClosing ( Ogre::RenderWindow *  rw)

windowClosing

Tells core to shutdown (Thereby possibly adding a shutdown message to the message pipe which in turn will call GraphicsController::ShutdownImpl() back in this module?)

Parameters
Ogre::RenderWindow* rw
Returns
bool: true on success

The documentation for this class was generated from the following file: