# Ogre::InstancedGeometry::LODBucket Class Reference

A LODBucket is a collection of smaller buckets with the same LOD. More...

`#include <OgreInstancedGeometry.h>`

List of all members.

## Public Types

typedef std::map< String, MaterialBucket * > | MaterialBucketMap
| Lookup of Material Buckets in this BatchInstance.
typedef MapIterator< MaterialBucketMap > | MaterialIterator
| Iterator over the materials in this LOD.

## Public Member Functions

| LODBucket (BatchInstance *parent, unsigned short lod, Real lodDist)
virtual | ~LODBucket ()
BatchInstance * | getParent (void)
ushort | getLod (void) const
| Get the lod index.
Real | getSquaredDistance (void) const
| Get the lod squared distance.
void | assign (QueuedSubMesh *qsm, ushort atLod)
| Assign a queued submesh to this bucket, using specified mesh LOD.
void | build ()
| Build.
void | addRenderables (RenderQueue *queue, uint8 group, Real camSquaredDistance)
| Add children to the render queue.
MaterialIterator | getMaterialIterator (void)
| Get an iterator over the materials in this LOD.
void | dump (std::ofstream &of) const
| Dump contents for diagnostics.
void | updateContainers (MaterialBucket *bucket, String &name)
| fill the map

## Protected Attributes

BatchInstance * | mParent
| Pointer to parent BatchInstance.
unsigned short | mLod
| LOD level (0 == full LOD).
Real | mSquaredDistance
| distance at which this LOD starts to apply (squared)
MaterialBucketMap | mMaterialBucketMap
| Lookup of Material Buckets in this BatchInstance.
QueuedGeometryList | mQueuedGeometryList
| Geometry queued for a single LOD (deallocated here).

## Detailed Description

A LODBucket is a collection of smaller buckets with the same LOD.

Remarks:
  LOD refers to Mesh LOD here. Material LOD can change separately at the next bucket down from this.

Definition at line 361 of file OgreInstancedGeometry.h.

## Member Typedef Documentation

typedef std::map<String, MaterialBucket*> Ogre::InstancedGeometry::LODBucket::MaterialBucketMap

| Lookup of Material Buckets in this BatchInstance. Definition at line 365 of file OgreInstancedGeometry.h.

typedef MapIterator<MaterialBucketMap> Ogre::InstancedGeometry::LODBucket::MaterialIterator

| Iterator over the materials in this LOD. Definition at line 393 of file OgreInstancedGeometry.h.

## Constructor & Destructor Documentation

Ogre::InstancedGeometry::LODBucket::LODBucket | ( | BatchInstance * | parent,
|  | unsigned short | lod,
|  | Real | lodDist
| ) |

virtual Ogre::InstancedGeometry::LODBucket::~LODBucket | ( |  | ) | `[virtual]`

## Member Function Documentation

void Ogre::InstancedGeometry::LODBucket::addRenderables | ( | RenderQueue * | queue,
|  | uint8 | group,
|  | Real | camSquaredDistance
| ) |

| Add children to the render queue.

void Ogre::InstancedGeometry::LODBucket::assign | ( | QueuedSubMesh * | qsm,
|  | ushort | atLod
| ) |

| Assign a queued submesh to this bucket, using specified mesh LOD.

void Ogre::InstancedGeometry::LODBucket::build | ( |  | ) |

| Build.

void Ogre::InstancedGeometry::LODBucket::dump | ( | std::ofstream & | of | ) | const

| Dump contents for diagnostics.

ushort Ogre::InstancedGeometry::LODBucket::getLod | ( | void |  | ) | const

| Get the lod index. Definition at line 382 of file OgreInstancedGeometry.h.

MaterialIterator Ogre::InstancedGeometry::LODBucket::getMaterialIterator | ( | void |  | ) |

| Get an iterator over the materials in this LOD.

BatchInstance* Ogre::InstancedGeometry::LODBucket::getParent | ( | void |  | ) |

| Definition at line 380 of file OgreInstancedGeometry.h.

Real Ogre::InstancedGeometry::LODBucket::getSquaredDistance | ( | void |  | ) | const

| Get the lod squared distance. Definition at line 384 of file OgreInstancedGeometry.h.

void Ogre::InstancedGeometry::LODBucket::updateContainers | ( | MaterialBucket * | bucket,
|  | String & | name
| ) |

| fill the map

## Member Data Documentation

unsigned short Ogre::InstancedGeometry::LODBucket::mLod`[protected]`

| LOD level (0 == full LOD). Definition at line 370 of file OgreInstancedGeometry.h.

MaterialBucketMap Ogre::InstancedGeometry::LODBucket::mMaterialBucketMap`[protected]`

| Lookup of Material Buckets in this BatchInstance. Definition at line 374 of file OgreInstancedGeometry.h.

BatchInstance* Ogre::InstancedGeometry::LODBucket::mParent`[protected]`

| Pointer to parent BatchInstance. Definition at line 368 of file OgreInstancedGeometry.h.

QueuedGeometryList Ogre::InstancedGeometry::LODBucket::mQueuedGeometryList`[protected]`

| Geometry queued for a single LOD (deallocated here). Definition at line 376 of file OgreInstancedGeometry.h.

Real Ogre::InstancedGeometry::LODBucket::mSquaredDistance`[protected]`

| distance at which this LOD starts to apply (squared) Definition at line 372 of file OgreInstancedGeometry.h.

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

- OgreInstancedGeometry.h

Copyright © 2000-2005 by The OGRE Team
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Mon Aug 20 13:52:27 2007