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>

Inheritance diagram for Ogre::InstancedGeometry::MaterialBucket:

Inheritance graph
[legend]

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)
void visitRenderables (Renderable::Visitor *visitor, bool debugRenderables)
void * operator new (size_t sz, const char *file, int line, const char *func)
 operator new, with debug line info
void * operator new (size_t sz)
void * operator new (size_t sz, void *ptr)
 placement operator new
void * operator new[] (size_t sz, const char *file, int line, const char *func)
 array operator new, with debug line info
void * operator new[] (size_t sz)
void operator delete (void *ptr)
void operator delete (void *ptr, void *)
void operator delete (void *ptr, const char *, int, const char *)
void operator delete[] (void *ptr)
void operator delete[] (void *ptr, const char *, int, const char *)

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 306 of file OgreInstancedGeometry.h.


Member Typedef Documentation

list of Geometry Buckets in this BatchInstance

Definition at line 310 of file OgreInstancedGeometry.h.

Definition at line 324 of file OgreInstancedGeometry.h.

Iterator over geometry.

Definition at line 345 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 332 of file OgreInstancedGeometry.h.

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

Get the material name.

Definition at line 334 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 343 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 349 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 358 of file OgreInstancedGeometry.h.

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

Definition at line 359 of file OgreInstancedGeometry.h.

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

void Ogre::InstancedGeometry::MaterialBucket::visitRenderables ( Renderable::Visitor visitor,
bool  debugRenderables 
)

template<class Alloc>
void* Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz,
const char *  file,
int  line,
const char *  func 
) [inherited]

operator new, with debug line info

Definition at line 62 of file OgreMemoryAllocatedObject.h.

template<class Alloc>
void* Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz  )  [inherited]

Definition at line 67 of file OgreMemoryAllocatedObject.h.

template<class Alloc>
void* Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz,
void *  ptr 
) [inherited]

placement operator new

Definition at line 73 of file OgreMemoryAllocatedObject.h.

template<class Alloc>
void* Ogre::AllocatedObject< Alloc >::operator new[] ( size_t  sz,
const char *  file,
int  line,
const char *  func 
) [inherited]

array operator new, with debug line info

Definition at line 79 of file OgreMemoryAllocatedObject.h.

template<class Alloc>
void* Ogre::AllocatedObject< Alloc >::operator new[] ( size_t  sz  )  [inherited]

Definition at line 84 of file OgreMemoryAllocatedObject.h.

template<class Alloc>
void Ogre::AllocatedObject< Alloc >::operator delete ( void *  ptr  )  [inherited]

Definition at line 89 of file OgreMemoryAllocatedObject.h.

template<class Alloc>
void Ogre::AllocatedObject< Alloc >::operator delete ( void *  ptr,
void *   
) [inherited]

Definition at line 95 of file OgreMemoryAllocatedObject.h.

template<class Alloc>
void Ogre::AllocatedObject< Alloc >::operator delete ( void *  ptr,
const char *  ,
int  ,
const char *   
) [inherited]

Definition at line 101 of file OgreMemoryAllocatedObject.h.

template<class Alloc>
void Ogre::AllocatedObject< Alloc >::operator delete[] ( void *  ptr  )  [inherited]

Definition at line 106 of file OgreMemoryAllocatedObject.h.

template<class Alloc>
void Ogre::AllocatedObject< Alloc >::operator delete[] ( void *  ptr,
const char *  ,
int  ,
const char *   
) [inherited]

Definition at line 112 of file OgreMemoryAllocatedObject.h.


Member Data Documentation

Pointer to parent LODBucket.

Definition at line 313 of file OgreInstancedGeometry.h.

Material being used.

Definition at line 315 of file OgreInstancedGeometry.h.

Pointer to material being used.

Definition at line 317 of file OgreInstancedGeometry.h.

Active technique.

Definition at line 319 of file OgreInstancedGeometry.h.

Definition at line 320 of file OgreInstancedGeometry.h.

list of Geometry Buckets in this BatchInstance

Definition at line 322 of file OgreInstancedGeometry.h.

Definition at line 325 of file OgreInstancedGeometry.h.


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

Copyright © 2008 Torus Knot Software Ltd
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Sep 27 22:03:50 2009