OpenGUI::OgreViewport Class Reference

#include <Renderer_Ogre_Viewport.h>

List of all members.


Detailed Description

Implementation of OpenGUI::Viewport for use with the Ogre rendering engine.

This class provides the interconnect logic between Ogre::Viewport updates and OpenGUI::Screen updates and output targetting. After every refresh of the given Ogre::Viewport, this OpenGUI::Viewport implementation will iterate through all attached Screens and call Screen::update() for any Screen that is marked as auto updating.

Note:
Due to Ogre's current lack of a true ViewportListener, this class cannot follow Ogre::Viewports that move between RenderTargets. To help remind you of this fact, upon detection that the watched Ogre::Viewport is being detached from the RenderTarget, an exception is thrown. Catching and disregarding this exception is legal, but the connection will be irrevocably broken, and updates to the Screens attached will cease to occur. It is recommended that you avoid this practice, and delete this Viewport object before detaching the Ogre::Viewport from its RenderTarget.


Public Member Functions

 OgreViewport (Ogre::Viewport *ogreViewportPtr)
 Constructor requires a pointer to a valid Ogre::Viewport that is attached to an Ogre::RenderTarget.
virtual ~OgreViewport ()
 destructor
Ogre::Viewport * getOgreViewport ()
 returns a pointer to the Ogre::Viewport this Viewport is rendering to
virtual const IVector2 & getSize ()
virtual void preRenderTargetUpdate (const Ogre::RenderTargetEvent &evt)
virtual void postRenderTargetUpdate (const Ogre::RenderTargetEvent &evt)
virtual void preViewportUpdate (const Ogre::RenderTargetViewportEvent &evt)
virtual void postViewportUpdate (const Ogre::RenderTargetViewportEvent &evt)
virtual void viewportAdded (const Ogre::RenderTargetViewportEvent &evt)
virtual void viewportRemoved (const Ogre::RenderTargetViewportEvent &evt)

Protected Member Functions

virtual void preUpdate (Screen *updatingScreen)
virtual void postUpdate (Screen *updatingScreen)
virtual void screenAttached (Screen *attachingScreen)
virtual void screenDetached (Screen *detachingScreen)

Private Attributes

Ogre::Viewport * mOgreViewport
Ogre::RenderTarget * mOgreRenderTarget


Constructor & Destructor Documentation

OpenGUI::OgreViewport::OgreViewport Ogre::Viewport *  ogreViewportPtr  ) 
 

Constructor requires a pointer to a valid Ogre::Viewport that is attached to an Ogre::RenderTarget.

OpenGUI::OgreViewport::~OgreViewport  )  [virtual]
 

destructor


Member Function Documentation

Ogre::Viewport * OpenGUI::OgreViewport::getOgreViewport  ) 
 

returns a pointer to the Ogre::Viewport this Viewport is rendering to

const IVector2 & OpenGUI::OgreViewport::getSize  )  [virtual]
 

void OpenGUI::OgreViewport::postRenderTargetUpdate const Ogre::RenderTargetEvent &  evt  )  [virtual]
 

void OpenGUI::OgreViewport::postUpdate Screen *  updatingScreen  )  [protected, virtual]
 

void OpenGUI::OgreViewport::postViewportUpdate const Ogre::RenderTargetViewportEvent &  evt  )  [virtual]
 

void OpenGUI::OgreViewport::preRenderTargetUpdate const Ogre::RenderTargetEvent &  evt  )  [virtual]
 

void OpenGUI::OgreViewport::preUpdate Screen *  updatingScreen  )  [protected, virtual]
 

void OpenGUI::OgreViewport::preViewportUpdate const Ogre::RenderTargetViewportEvent &  evt  )  [virtual]
 

void OpenGUI::OgreViewport::screenAttached Screen *  attachingScreen  )  [protected, virtual]
 

void OpenGUI::OgreViewport::screenDetached Screen *  detachingScreen  )  [protected, virtual]
 

void OpenGUI::OgreViewport::viewportAdded const Ogre::RenderTargetViewportEvent &  evt  )  [virtual]
 

void OpenGUI::OgreViewport::viewportRemoved const Ogre::RenderTargetViewportEvent &  evt  )  [virtual]
 


Member Data Documentation

Ogre::RenderTarget* OpenGUI::OgreViewport::mOgreRenderTarget [private]
 

Ogre::Viewport* OpenGUI::OgreViewport::mOgreViewport [private]
 


The documentation for this class was generated from the following files:
Copyright © 2006 OpenGUI | OpenGUI.SF.net
Generated: Sun Sep 9 02:00:24 2007