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:

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 Sun Sep 30 10:51:29 2007