OGRE  1.7
Object-Oriented Graphics Rendering Engine
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Ogre::Renderable::Visitor Class Referenceabstract

Visitor object that can be used to iterate over a collection of Renderable instances abstractly. More...

#include <OgreRenderable.h>

Public Member Functions

virtual ~Visitor ()
 Virtual destructor needed as class has virtual methods. More...
 
virtual void visit (Renderable *rend, ushort lodIndex, bool isDebug, Any *pAny=0)=0
 Generic visitor method. More...
 

Detailed Description

Visitor object that can be used to iterate over a collection of Renderable instances abstractly.

Remarks
Different scene objects use Renderable differently; some will have a single Renderable, others will have many. This visitor interface allows classes using Renderable to expose a clean way for external code to get access to the contained Renderable instance(s) that it will eventually add to the render queue.
To actually have this method called, you have to call a method on the class containing the Renderable instances. One example is MovableObject::visitRenderables.

Definition at line 358 of file OgreRenderable.h.

Constructor & Destructor Documentation

virtual Ogre::Renderable::Visitor::~Visitor ( )
inlinevirtual

Virtual destructor needed as class has virtual methods.

Definition at line 362 of file OgreRenderable.h.

Member Function Documentation

virtual void Ogre::Renderable::Visitor::visit ( Renderable rend,
ushort  lodIndex,
bool  isDebug,
Any pAny = 0 
)
pure virtual

Generic visitor method.

Parameters
rendThe Renderable instance being visited
lodIndexThe LOD index to which this Renderable belongs. Some objects support LOD and this will tell you whether the Renderable you're looking at is from the top LOD (0) or otherwise
isDebugWhether this is a debug renderable or not.
pAnyOptional pointer to some additional data that the class calling the visitor may populate if it chooses to.

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