# Ogre::Renderable::Visitor Class Reference

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

`#include <OgreRenderable.h>`

List of all members.

## Public Member Functions

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

## 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 334 of file OgreRenderable.h.

## Constructor & Destructor Documentation

virtual Ogre::Renderable::Visitor::~Visitor | ( |  | ) | `[virtual]`

| Virtual destructor needed as class has virtual methods. Definition at line 338 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:

  | rend | The Renderable instance being visited
  | lodIndex | The 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
  | isDebug | Whether this is a debug renderable or not.
  | pAny | Optional 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:

- OgreRenderable.h

Copyright © 2008 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sat Apr 11 13:51:23 2009