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::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 Mon Jun 16 12:50:11 2008