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 ()
LODBucketgetParent (void)
const StringgetMaterialName (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 MaterialPtrgetMaterial (void) const
 Get the material for this bucket.
GeometryIterator getGeometryIterator (void)
 Get an iterator over the contained geometry.
TechniquegetCurrentTechnique (void) const
 Get the current Technique.
void dump (std::ofstream &of) const
 Dump contents for diagnostics.
MaterialBucket::CurrentGeometryMapgetMaterialBucketMap (void) const
 Return the geometry map.
MaterialBucket::GeometryBucketListgetGeometryBucketList (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

LODBucketmParent
 Pointer to parent LODBucket.
String mMaterialName
 Material being used.
MaterialPtr mMaterial
 Pointer to material being used.
TechniquemTechnique
 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::vector<GeometryBucket*> Ogre::InstancedGeometry::MaterialBucket::GeometryBucketList

list of Geometry Buckets in this BatchInstance

Definition at line 303 of file OgreInstancedGeometry.h.

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

Definition at line 317 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

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

Get a packed string identifying the geometry format.

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

Definition at line 325 of file OgreInstancedGeometry.h.

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

Get the material name.

Definition at line 327 of file OgreInstancedGeometry.h.

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

Assign geometry to this bucket.

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

Build.

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

Add children to the render queue.

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

Get the material for this bucket.

Definition at line 336 of file OgreInstancedGeometry.h.

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

Get an iterator over the contained geometry.

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

Get the current Technique.

Definition at line 342 of file OgreInstancedGeometry.h.

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

Dump contents for diagnostics.

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

Return the geometry map.

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

Return the geometry list.

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

fill in the map and the list

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

Definition at line 351 of file OgreInstancedGeometry.h.

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

Definition at line 352 of file OgreInstancedGeometry.h.

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


Member Data Documentation

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

Pointer to parent LODBucket.

Definition at line 306 of file OgreInstancedGeometry.h.

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

Material being used.

Definition at line 308 of file OgreInstancedGeometry.h.

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

Pointer to material being used.

Definition at line 310 of file OgreInstancedGeometry.h.

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

Active technique.

Definition at line 312 of file OgreInstancedGeometry.h.

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

Definition at line 313 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.

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

Definition at line 318 of file OgreInstancedGeometry.h.


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

Copyright © 2000-2005 by The OGRE Team
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sat May 10 16:26:20 2008