Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

# Ogre::InstancedGeometry::MaterialBucket Class Reference

A MaterialBucket is a collection of smaller buckets with the same Material (and implicitly the same LOD). More...

`#include <OgreInstancedGeometry.h>`

List of all members.

## Public Types
typedef std::vector< GeometryBucket * > | GeometryBucketList
| list of Geometry Buckets in this BatchInstance
typedef VectorIterator< GeometryBucketList > | GeometryIterator
| Iterator over geometry.
## Public Member Functions
| MaterialBucket (LODBucket *parent, const String &materialName)
virtual | ~MaterialBucket ()
LODBucket * | getParent (void)
const String & | getMaterialName (void) const
| Get the material name.
void | assign (QueuedGeometry *qsm)
| Assign geometry to this bucket.
void | build ()
| Build.
void | addRenderables (RenderQueue *queue, uint8 group, Real camSquaredDist)
| Add children to the render queue.
const MaterialPtr & | getMaterial (void) const
| Get the material for this bucket.
GeometryIterator | getGeometryIterator (void)
| Get an iterator over the contained geometry.
Technique * | getCurrentTechnique (void) const
| Get the current Technique.
void | dump (std::ofstream &of) const
| Dump contents for diagnostics.
MaterialBucket::CurrentGeometryMap * | getMaterialBucketMap (void) const
| Return the geometry map.
MaterialBucket::GeometryBucketList * | getGeometryBucketList (void) const
| Return the geometry list.
void | updateContainers (GeometryBucket *bucket, const String &format)
| fill in the map and the list
void | setLastIndex (int index)
int | getLastIndex ()
void | setMaterial (const String &name)
## Protected Types
typedef std::map< String, GeometryBucket * > | CurrentGeometryMap
## Protected Member Functions
String | getGeometryFormatString (SubMeshLodGeometryLink *geom)
| Get a packed string identifying the geometry format.
## Protected Attributes
LODBucket * | mParent
| Pointer to parent LODBucket.
String | mMaterialName
| Material being used.
MaterialPtr | mMaterial
| Pointer to material being used.
Technique * | mTechnique
| Active technique.
int | mLastIndex
GeometryBucketList | mGeometryBucketList
| list of Geometry Buckets in this BatchInstance
CurrentGeometryMap | mCurrentGeometryMap

## Detailed Description

A MaterialBucket is a collection of smaller buckets with the same Material (and implicitly the same LOD).

Definition at line 299 of file OgreInstancedGeometry.h.

## Member Typedef Documentation

typedef std::map<String, GeometryBucket*> Ogre::InstancedGeometry::MaterialBucket::CurrentGeometryMap`[protected]`

| Definition at line 317 of file OgreInstancedGeometry.h.

typedef std::vector<GeometryBucket*> Ogre::InstancedGeometry::MaterialBucket::GeometryBucketList

| list of Geometry Buckets in this BatchInstance Definition at line 303 of file OgreInstancedGeometry.h.

typedef VectorIterator<GeometryBucketList> Ogre::InstancedGeometry::MaterialBucket::GeometryIterator

| Iterator over geometry. Definition at line 338 of file OgreInstancedGeometry.h.

## Constructor & Destructor Documentation

Ogre::InstancedGeometry::MaterialBucket::MaterialBucket | ( | LODBucket * | parent,
|  | const String & | materialName
| ) |

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

## Member Function Documentation

void Ogre::InstancedGeometry::MaterialBucket::addRenderables | ( | RenderQueue * | queue,
|  | uint8 | group,
|  | Real | camSquaredDist
| ) |

| Add children to the render queue.

void Ogre::InstancedGeometry::MaterialBucket::assign | ( | QueuedGeometry * | qsm | ) |

| Assign geometry to this bucket.

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

| Build.

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

| Dump contents for diagnostics.

Technique* Ogre::InstancedGeometry::MaterialBucket::getCurrentTechnique | ( | void |  | ) | const

| Get the current Technique. Definition at line 342 of file OgreInstancedGeometry.h.

MaterialBucket::GeometryBucketList* Ogre::InstancedGeometry::MaterialBucket::getGeometryBucketList | ( | void |  | ) | const

| Return the geometry list.

String Ogre::InstancedGeometry::MaterialBucket::getGeometryFormatString | ( | SubMeshLodGeometryLink * | geom | ) | `[protected]`

| Get a packed string identifying the geometry format.

GeometryIterator Ogre::InstancedGeometry::MaterialBucket::getGeometryIterator | ( | void |  | ) |

| Get an iterator over the contained geometry.

int Ogre::InstancedGeometry::MaterialBucket::getLastIndex | ( |  | ) |

| Definition at line 352 of file OgreInstancedGeometry.h.

const MaterialPtr& Ogre::InstancedGeometry::MaterialBucket::getMaterial | ( | void |  | ) | const

| Get the material for this bucket. Definition at line 336 of file OgreInstancedGeometry.h.

MaterialBucket::CurrentGeometryMap* Ogre::InstancedGeometry::MaterialBucket::getMaterialBucketMap | ( | void |  | ) | const

| Return the geometry map.

const String& Ogre::InstancedGeometry::MaterialBucket::getMaterialName | ( | void |  | ) | const

| Get the material name. Definition at line 327 of file OgreInstancedGeometry.h.

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

| Definition at line 325 of file OgreInstancedGeometry.h.

void Ogre::InstancedGeometry::MaterialBucket::setLastIndex | ( | int | index | ) |

| Definition at line 351 of file OgreInstancedGeometry.h.

void Ogre::InstancedGeometry::MaterialBucket::setMaterial | ( | const String & | name | ) |

void Ogre::InstancedGeometry::MaterialBucket::updateContainers | ( | GeometryBucket * | bucket,
|  | const String & | format
| ) |

| fill in the map and the list

## Member Data Documentation

CurrentGeometryMap Ogre::InstancedGeometry::MaterialBucket::mCurrentGeometryMap`[protected]`

| Definition at line 318 of file OgreInstancedGeometry.h.

GeometryBucketList Ogre::InstancedGeometry::MaterialBucket::mGeometryBucketList`[protected]`

| list of Geometry Buckets in this BatchInstance Definition at line 315 of file OgreInstancedGeometry.h.

int Ogre::InstancedGeometry::MaterialBucket::mLastIndex`[protected]`

| Definition at line 313 of file OgreInstancedGeometry.h.

MaterialPtr Ogre::InstancedGeometry::MaterialBucket::mMaterial`[protected]`

| Pointer to material being used. Definition at line 310 of file OgreInstancedGeometry.h.

String Ogre::InstancedGeometry::MaterialBucket::mMaterialName`[protected]`

| Material being used. Definition at line 308 of file OgreInstancedGeometry.h.

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

| Pointer to parent LODBucket. Definition at line 306 of file OgreInstancedGeometry.h.

Technique* Ogre::InstancedGeometry::MaterialBucket::mTechnique`[protected]`

| Active technique. Definition at line 312 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 Thu Mar 6 09:46:58 2008