FIFE
be64c707dea6b3250bd4355bf5c825d25920087d
|
Engine acts as a controller to the whole system Responsibilities of the engine are: More...
#include <engine.h>
Public Member Functions | |
Engine () | |
Constructor. More... | |
virtual | ~Engine () |
Destructor. More... | |
EngineSettings & | getSettings () |
Gets settings class for engine. More... | |
const DeviceCaps & | getDeviceCaps () const |
Gets device capabilities. More... | |
void | changeScreenMode (const ScreenMode &mode) |
Changes the screen mode. More... | |
void | init () |
Initializes the engine. More... | |
void | destroy () |
Explicit destruction of engine. More... | |
void | initializePumping () |
Initializes the continuous processing of the engine Call this only once in your program. More... | |
void | finalizePumping () |
Finalizes the continuous processing of the engine Call this only once in your program, after you have called initializePumping + (pump() * N times) More... | |
void | pump () |
Runs one cycle for the engine. More... | |
SoundManager * | getSoundManager () const |
Provides access point to the SoundManager. More... | |
EventManager * | getEventManager () const |
Provides access point to the EventManager. More... | |
TimeManager * | getTimeManager () const |
Provides access point to the TimeManager. More... | |
void | setGuiManager (IGUIManager *guimanager) |
Sets the GUI Manager to use. More... | |
IGUIManager * | getGuiManager () const |
Provides access point to the GUI Manager. More... | |
ImageManager * | getImageManager () const |
Provides access point to the ImageManager. More... | |
AnimationManager * | getAnimationManager () const |
Provides access point to the ImageManager. More... | |
SoundClipManager * | getSoundClipManager () const |
Provides access point to the SoundClipManager. More... | |
RenderBackend * | getRenderBackend () const |
Provides access point to the RenderBackend. More... | |
Model * | getModel () const |
Provides access point to the Model. More... | |
LogManager * | getLogManager () const |
Provides access point to the LogManager. More... | |
VFS * | getVFS () const |
Provides access point to the VFS. More... | |
Cursor * | getCursor () const |
Returns cursor used in the engine. More... | |
OffRenderer * | getOffRenderer () const |
Provides access point to the OffRenderer. More... | |
TargetRenderer * | getTargetRenderer () const |
Provides access point to the TargetRenderer. More... | |
void | addChangeListener (IEngineChangeListener *listener) |
Adds new change listener. More... | |
void | removeChangeListener (IEngineChangeListener *listener) |
Removes associated change listener. More... | |
Private Attributes | |
RenderBackend * | m_renderbackend |
IGUIManager * | m_guimanager |
EventManager * | m_eventmanager |
SoundManager * | m_soundmanager |
TimeManager * | m_timemanager |
ImageManager * | m_imagemanager |
AnimationManager * | m_animationmanager |
SoundClipManager * | m_soundclipmanager |
VFS * | m_vfs |
Model * | m_model |
LogManager * | m_logmanager |
Cursor * | m_cursor |
bool | m_destroyed |
EngineSettings | m_settings |
DeviceCaps | m_devcaps |
ScreenMode | m_screenMode |
OffRenderer * | m_offrenderer |
TargetRenderer * | m_targetrenderer |
std::vector< RendererBase * > | m_renderers |
std::vector< IEngineChangeListener * > | m_changelisteners |
Engine acts as a controller to the whole system Responsibilities of the engine are:
FIFE::Engine::Engine | ( | ) |
Constructor.
Definition at line 91 of file engine.cpp.
References FIFE::LogManager::instance(), and m_logmanager.
|
virtual |
void FIFE::Engine::addChangeListener | ( | IEngineChangeListener * | listener | ) |
Adds new change listener.
listener | to add |
Definition at line 389 of file engine.cpp.
References m_changelisteners.
void FIFE::Engine::changeScreenMode | ( | const ScreenMode & | mode | ) |
Changes the screen mode.
This should be called instead of the renderer's setScreenMode() function. It takes care of any objects that need to be re-created after switching screen modes.
mode | A valid ScreenMode retrieved from FIFE::DeviceCaps::getNearestScreenMode() |
Definition at line 140 of file engine.cpp.
References FIFE::RenderBackend::createMainScreen(), FIFE::ScreenMode::getHeight(), FIFE::ScreenMode::getWidth(), FIFE::EngineSettings::getWindowIcon(), FIFE::EngineSettings::getWindowTitle(), FIFE::Cursor::invalidate(), FIFE::ImageManager::invalidateAll(), m_changelisteners, m_cursor, m_guimanager, m_imagemanager, m_renderbackend, m_settings, and FIFE::IGUIManager::resizeTopContainer().
void FIFE::Engine::destroy | ( | ) |
Explicit destruction of engine.
Definition at line 322 of file engine.cpp.
References FIFE::_log, FL_LOG, m_animationmanager, m_cursor, m_destroyed, m_eventmanager, m_guimanager, m_imagemanager, m_model, m_offrenderer, m_renderbackend, m_renderers, m_soundclipmanager, m_soundmanager, m_targetrenderer, m_timemanager, and m_vfs.
Referenced by ~Engine().
void FIFE::Engine::finalizePumping | ( | ) |
Finalizes the continuous processing of the engine Call this only once in your program, after you have called initializePumping + (pump() * N times)
Definition at line 385 of file engine.cpp.
|
inline |
Provides access point to the ImageManager.
|
inline |
const DeviceCaps & FIFE::Engine::getDeviceCaps | ( | ) | const |
|
inline |
Provides access point to the EventManager.
|
inline |
|
inline |
Provides access point to the ImageManager.
|
inline |
Provides access point to the LogManager.
|
inline |
|
inline |
Provides access point to the OffRenderer.
|
inline |
Provides access point to the RenderBackend.
EngineSettings & FIFE::Engine::getSettings | ( | ) |
|
inline |
Provides access point to the SoundClipManager.
|
inline |
Provides access point to the SoundManager.
|
inline |
Provides access point to the TargetRenderer.
|
inline |
Provides access point to the TimeManager.
|
inline |
void FIFE::Engine::init | ( | ) |
Initializes the engine.
Definition at line 159 of file engine.cpp.
References FIFE::_log, FIFE::VFS::addProvider(), FIFE::VFS::addSource(), FIFE::Model::adoptCellGrid(), FIFE::Model::adoptPather(), FIFE::RenderBackend::createMainScreen(), FIFE::DeviceCaps::fillDeviceCaps(), FL_LOG, FL_WARN, FIFE::DeviceCaps::getAvailableRenderDrivers(), FIFE::DeviceCaps::getAvailableVideoDrivers(), FIFE::EngineSettings::getBitsPerPixel(), FIFE::EngineSettings::getColorKey(), FIFE::EngineSettings::getDisplay(), FIFE::EngineSettings::getFrameLimit(), FIFE::EngineSettings::getGLAlphaTestValue(), FIFE::EngineSettings::getGLTextureFiltering(), FIFE::EngineSettings::getInitialVolume(), FIFE::EngineSettings::getLightingModel(), FIFE::EngineSettings::getMouseSensitivity(), FIFE::DeviceCaps::getNearestScreenMode(), FIFE::EngineSettings::getRefreshRate(), FIFE::EngineSettings::getRenderBackend(), FIFE::EngineSettings::getScreenHeight(), FIFE::EngineSettings::getScreenWidth(), FIFE::EngineSettings::getSDLDriver(), FIFE::EngineSettings::getVideoDriver(), FIFE::EngineSettings::getWindowIcon(), FIFE::EngineSettings::getWindowTitle(), FIFE::RenderBackend::init(), FIFE::EngineSettings::isColorKeyEnabled(), FIFE::EngineSettings::isFrameLimitEnabled(), FIFE::EngineSettings::isFullScreen(), FIFE::EngineSettings::isGLCompressImages(), FIFE::EngineSettings::isGLUseDepthBuffer(), FIFE::EngineSettings::isGLUseFramebuffer(), FIFE::EngineSettings::isGLUseMipmapping(), FIFE::EngineSettings::isGLUseMonochrome(), FIFE::EngineSettings::isGLUseNPOT(), FIFE::EngineSettings::isJoystickSupport(), FIFE::EngineSettings::isMouseAccelerationEnabled(), FIFE::EngineSettings::isNativeImageCursorEnabled(), FIFE::EngineSettings::isVSync(), m_animationmanager, m_cursor, m_destroyed, m_devcaps, m_eventmanager, m_imagemanager, m_model, m_offrenderer, m_renderbackend, m_renderers, m_screenMode, m_settings, m_soundclipmanager, m_soundmanager, m_targetrenderer, m_timemanager, m_vfs, FIFE::RenderBackend::setAlphaTestValue(), FIFE::RenderBackend::setColorKeyEnabled(), FIFE::RenderBackend::setDepthBufferEnabled(), FIFE::RenderBackend::setFramebufferEnabled(), FIFE::RenderBackend::setFrameLimit(), FIFE::RenderBackend::setFrameLimitEnabled(), FIFE::RenderBackend::setImageCompressingEnabled(), FIFE::EventManager::setJoystickSupport(), FIFE::RenderBackend::setLightingModel(), FIFE::RenderBackend::setMipmappingEnabled(), FIFE::RenderBackend::setMonochromeEnabled(), FIFE::EventManager::setMouseAccelerationEnabled(), FIFE::EventManager::setMouseSensitivity(), FIFE::Cursor::setNativeImageCursorEnabled(), FIFE::RenderBackend::setNPOTEnabled(), FIFE::DeviceCaps::setRenderDriverName(), FIFE::RenderBackend::setTextureFiltering(), FIFE::DeviceCaps::setVideoDriverName(), FIFE::SoundManager::setVolume(), and FIFE::RenderBackend::setVSyncEnabled().
void FIFE::Engine::initializePumping | ( | ) |
Initializes the continuous processing of the engine Call this only once in your program.
Definition at line 359 of file engine.cpp.
References m_eventmanager, and FIFE::EventManager::processEvents().
void FIFE::Engine::pump | ( | ) |
Runs one cycle for the engine.
Definition at line 363 of file engine.cpp.
References FIFE::RenderBackend::clearBackBuffer(), FIFE::Cursor::draw(), FIFE::RenderBackend::endFrame(), FIFE::Model::getActiveCameraCount(), m_cursor, m_eventmanager, m_guimanager, m_model, m_offrenderer, m_renderbackend, m_soundmanager, m_targetrenderer, m_timemanager, FIFE::EventManager::processEvents(), FIFE::TargetRenderer::render(), FIFE::OffRenderer::render(), FIFE::RenderBackend::startFrame(), FIFE::IGUIManager::turn(), FIFE::TimeManager::update(), FIFE::Model::update(), and FIFE::SoundManager::update().
void FIFE::Engine::removeChangeListener | ( | IEngineChangeListener * | listener | ) |
Removes associated change listener.
listener | to remove |
Definition at line 393 of file engine.cpp.
References m_changelisteners.
|
inline |
|
private |
|
private |
Definition at line 228 of file engine.h.
Referenced by addChangeListener(), changeScreenMode(), and removeChangeListener().
|
private |
|
private |
|
private |
Definition at line 220 of file engine.h.
Referenced by getDeviceCaps(), and init().
|
private |
|
private |
Definition at line 204 of file engine.h.
Referenced by changeScreenMode(), destroy(), and pump().
|
private |
Definition at line 208 of file engine.h.
Referenced by changeScreenMode(), destroy(), and init().
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
Definition at line 219 of file engine.h.
Referenced by changeScreenMode(), getSettings(), and init().
|
private |
|
private |
|
private |
|
private |
|
private |