#include <src/orxonox/GraphicsManager.h>
Public Member Functions | |
void | detailLevelParticleChanged () |
unsigned int | getDetailLevelParticle () const |
Ogre::RenderWindow * | getRenderWindow () |
Ogre::Viewport * | getViewport () |
GraphicsManager () | |
Non-initialising constructor. | |
void | setCamera (Ogre::Camera *camera) |
void | setConfigValues () |
Function to collect the SetConfigValue-macro calls. | |
void | update (const Clock &time) |
~GraphicsManager () | |
Destroys all the Ogre related objects. | |
Static Public Member Functions | |
static GraphicsManager & | getInstance () |
Private Member Functions | |
void | declareResources () |
GraphicsManager (GraphicsManager &) | |
void | initialiseResources () |
void | loadOgrePlugins () |
void | loadRenderer () |
void | messageLogged (const std::string &message, Ogre::LogMessageLevel lml, bool maskDebug, const std::string &logName) |
Method called by the LogListener interface from Ogre. We use it to capture Ogre log messages and handle it ourselves. | |
void | printScreen () |
void | setupOgre () |
Creates the Ogre Root object and sets up the ogre log. | |
Private Attributes | |
ConsoleCommand * | ccPrintScreen_ |
unsigned int | detailLevelParticle_ |
Detail level of particle effects (0: off, 1: low, 2: normal, 3: high). | |
std::string | ogreConfigFile_ |
ogre config file name | |
std::string | ogreLogFile_ |
log file name for Ogre log messages | |
Ogre::LogManager * | ogreLogger_ |
int | ogreLogLevelCritical_ |
Corresponding Orxonx debug level for LL_CRITICAL. | |
int | ogreLogLevelNormal_ |
Corresponding Orxonx debug level for LL_NORMAL. | |
int | ogreLogLevelTrivial_ |
Corresponding Orxonx debug level for LL_TRIVIAL. | |
std::string | ogrePlugins_ |
Comma separated list of all plugins to load. | |
std::string | ogrePluginsFolder_ |
Folder where the Ogre plugins are located. | |
Ogre::Root * | ogreRoot_ |
Ogre's root. | |
OgreWindowEventListener * | ogreWindowEventListener_ |
Pimpl to hide OgreWindowUtilities.h. | |
Ogre::RenderWindow * | renderWindow_ |
the one and only render window | |
std::string | resourceFile_ |
resources file name | |
Ogre::Viewport * | viewport_ |
default full size viewport | |
Static Private Attributes | |
static GraphicsManager * | singletonRef_s = 0 |
Pointer to the Singleton. |
orxonox::GraphicsManager::GraphicsManager | ( | ) |
Non-initialising constructor.
References orxonox::CommandExecutor::addConsoleCommandShortcut(), ccPrintScreen_, orxonox::createConsoleCommand(), declareResources(), initialiseResources(), loadOgrePlugins(), loadRenderer(), ogreLogger_, ogreRoot_, ogreWindowEventListener_, printScreen(), RegisterObject, setConfigValues(), orxonox::FunctorMember< T >::setObject(), setupOgre(), and singletonRef_s.
orxonox::GraphicsManager::~GraphicsManager | ( | ) |
Destroys all the Ogre related objects.
References orxonox::Map::hackDestroyMap(), ogreLogger_, ogreRoot_, ogreWindowEventListener_, and singletonRef_s.
orxonox::GraphicsManager::GraphicsManager | ( | GraphicsManager & | ) | [private] |
void orxonox::GraphicsManager::declareResources | ( | ) | [private] |
References CCOUT, COUT, orxonox::Core::getMediaPath(), ModifyConfigValue, and resourceFile_.
Referenced by GraphicsManager().
void orxonox::GraphicsManager::detailLevelParticleChanged | ( | ) |
Referenced by setConfigValues().
unsigned int orxonox::GraphicsManager::getDetailLevelParticle | ( | ) | const [inline] |
static GraphicsManager& orxonox::GraphicsManager::getInstance | ( | ) | [inline, static] |
Ogre::RenderWindow* orxonox::GraphicsManager::getRenderWindow | ( | ) | [inline] |
Referenced by orxonox::GSGraphics::activate().
Ogre::Viewport* orxonox::GraphicsManager::getViewport | ( | ) | [inline] |
Referenced by orxonox::Shader::changedCompositor(), and orxonox::Shader::~Shader().
void orxonox::GraphicsManager::initialiseResources | ( | ) | [private] |
void orxonox::GraphicsManager::loadOgrePlugins | ( | ) | [private] |
References ogrePlugins_, ogrePluginsFolder_, ogreRoot_, and orxonox::SubString::size().
Referenced by GraphicsManager().
void orxonox::GraphicsManager::loadRenderer | ( | ) | [private] |
References CCOUT, ogreRoot_, ogreWindowEventListener_, renderWindow_, ThrowException, and viewport_.
Referenced by GraphicsManager().
void orxonox::GraphicsManager::messageLogged | ( | const std::string & | message, | |
Ogre::LogMessageLevel | lml, | |||
bool | maskDebug, | |||
const std::string & | logName | |||
) | [private] |
Method called by the LogListener interface from Ogre. We use it to capture Ogre log messages and handle it ourselves.
message | The message to be logged | |
lml | The message level the log is using | |
maskDebug | If we are printing to the console or not | |
logName | The name of this log (so you can have several listeners for different logs, and identify them) |
References orxonox::OutputHandler::getOutStream(), ogreLogLevelCritical_, ogreLogLevelNormal_, ogreLogLevelTrivial_, and orxonox::OutputHandler::setOutputLevel().
void orxonox::GraphicsManager::printScreen | ( | ) | [private] |
void orxonox::GraphicsManager::setCamera | ( | Ogre::Camera * | camera | ) |
References viewport_.
Referenced by orxonox::GSMainMenu::activate(), and orxonox::GSMainMenu::deactivate().
void orxonox::GraphicsManager::setConfigValues | ( | ) |
Function to collect the SetConfigValue-macro calls.
Reimplemented from orxonox::OrxonoxClass.
References detailLevelParticle_, detailLevelParticleChanged(), ogreConfigFile_, ogreLogFile_, ogreLogLevelCritical_, ogreLogLevelNormal_, ogreLogLevelTrivial_, ogrePlugins_, ogrePluginsFolder_, orxonox::ORXONOX_OGRE_PLUGINS, orxonox::ORXONOX_OGRE_PLUGINS_FOLDER, resourceFile_, and SetConfigValue.
Referenced by GraphicsManager().
void orxonox::GraphicsManager::setupOgre | ( | ) | [private] |
Creates the Ogre Root object and sets up the ogre log.
References COUT, orxonox::Core::getConfigPath(), orxonox::Core::getLogPath(), ModifyConfigValue, ogreConfigFile_, ogreLogFile_, ogreLogger_, and ogreRoot_.
Referenced by GraphicsManager().
void orxonox::GraphicsManager::update | ( | const Clock & | time | ) |
References orxonox::Clock::getDeltaTime(), ogreRoot_, and renderWindow_.
Referenced by orxonox::GSGraphics::update().
Referenced by GraphicsManager().
unsigned int orxonox::GraphicsManager::detailLevelParticle_ [private] |
Detail level of particle effects (0: off, 1: low, 2: normal, 3: high).
Referenced by setConfigValues().
Ogre::LogManager* orxonox::GraphicsManager::ogreLogger_ [private] |
Referenced by GraphicsManager(), setupOgre(), and ~GraphicsManager().
int orxonox::GraphicsManager::ogreLogLevelCritical_ [private] |
Corresponding Orxonx debug level for LL_CRITICAL.
Referenced by messageLogged(), and setConfigValues().
int orxonox::GraphicsManager::ogreLogLevelNormal_ [private] |
Corresponding Orxonx debug level for LL_NORMAL.
Referenced by messageLogged(), and setConfigValues().
int orxonox::GraphicsManager::ogreLogLevelTrivial_ [private] |
Corresponding Orxonx debug level for LL_TRIVIAL.
Referenced by messageLogged(), and setConfigValues().
Comma separated list of all plugins to load.
Referenced by loadOgrePlugins(), and setConfigValues().
Ogre::Root* orxonox::GraphicsManager::ogreRoot_ [private] |
Ogre's root.
Referenced by GraphicsManager(), loadOgrePlugins(), loadRenderer(), setupOgre(), update(), and ~GraphicsManager().
Pimpl to hide OgreWindowUtilities.h.
Referenced by GraphicsManager(), loadRenderer(), and ~GraphicsManager().
Ogre::RenderWindow* orxonox::GraphicsManager::renderWindow_ [private] |
GraphicsManager * orxonox::GraphicsManager::singletonRef_s = 0 [static, private] |
Ogre::Viewport* orxonox::GraphicsManager::viewport_ [private] |