OGRE  1.8
Object-Oriented Graphics Rendering Engine
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups 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>

+ Inheritance diagram for Ogre::InstancedGeometry::MaterialBucket:
+ Collaboration diagram for Ogre::InstancedGeometry::MaterialBucket:

Public Types

typedef vector< GeometryBucket * >
::type 
GeometryBucketList
 list of Geometry Buckets in this BatchInstance More...
 
typedef VectorIterator
< GeometryBucketList
GeometryIterator
 Iterator over geometry. More...
 

Public Member Functions

 MaterialBucket (LODBucket *parent, const String &materialName)
 
virtual ~MaterialBucket ()
 
void addRenderables (RenderQueue *queue, uint8 group, Real lodValue)
 Add children to the render queue. More...
 
void assign (QueuedGeometry *qsm)
 Assign geometry to this bucket. More...
 
void build ()
 Build. More...
 
void dump (std::ofstream &of) const
 Dump contents for diagnostics. More...
 
TechniquegetCurrentTechnique (void) const
 Get the current Technique. More...
 
MaterialBucket::GeometryBucketListgetGeometryBucketList (void) const
 Return the geometry list. More...
 
GeometryIterator getGeometryIterator (void)
 Get an iterator over the contained geometry. More...
 
int getLastIndex ()
 
const MaterialPtrgetMaterial (void) const
 Get the material for this bucket. More...
 
MaterialBucket::CurrentGeometryMapgetMaterialBucketMap (void) const
 Return the geometry map. More...
 
const StringgetMaterialName (void) const
 Get the material name. More...
 
LODBucketgetParent (void)
 
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 *)
 
void * operator new (size_t sz, const char *file, int line, const char *func)
 operator new, with debug line info More...
 
void * operator new (size_t sz)
 
void * operator new (size_t sz, void *ptr)
 placement operator new More...
 
void * operator new[] (size_t sz, const char *file, int line, const char *func)
 array operator new, with debug line info More...
 
void * operator new[] (size_t sz)
 
void setLastIndex (int index)
 
void setMaterial (const String &name)
 
void updateContainers (GeometryBucket *bucket, const String &format)
 fill in the map and the list More...
 
void visitRenderables (Renderable::Visitor *visitor, bool debugRenderables)
 

Protected Types

typedef map< String,
GeometryBucket * >::type 
CurrentGeometryMap
 

Protected Member Functions

String getGeometryFormatString (SubMeshLodGeometryLink *geom)
 Get a packed string identifying the geometry format. More...
 

Protected Attributes

CurrentGeometryMap mCurrentGeometryMap
 
GeometryBucketList mGeometryBucketList
 list of Geometry Buckets in this BatchInstance More...
 
int mLastIndex
 
MaterialPtr mMaterial
 Pointer to material being used. More...
 
String mMaterialName
 Material being used. More...
 
LODBucketmParent
 Pointer to parent LODBucket. More...
 
TechniquemTechnique
 Active technique. More...
 

Detailed Description

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

Definition at line 320 of file OgreInstancedGeometry.h.

Member Typedef Documentation

list of Geometry Buckets in this BatchInstance

Definition at line 324 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  lodValue 
)

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
inline

Get the current Technique.

Definition at line 363 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 ( )
inline

Definition at line 373 of file OgreInstancedGeometry.h.

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

Get the material for this bucket.

Definition at line 357 of file OgreInstancedGeometry.h.

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

Return the geometry map.

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

Get the material name.

Definition at line 348 of file OgreInstancedGeometry.h.

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

Definition at line 346 of file OgreInstancedGeometry.h.

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete ( void *  ptr)
inlineinherited

Definition at line 95 of file OgreMemoryAllocatedObject.h.

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

Definition at line 101 of file OgreMemoryAllocatedObject.h.

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

Definition at line 107 of file OgreMemoryAllocatedObject.h.

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

Definition at line 112 of file OgreMemoryAllocatedObject.h.

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

Definition at line 118 of file OgreMemoryAllocatedObject.h.

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

operator new, with debug line info

Definition at line 67 of file OgreMemoryAllocatedObject.h.

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

Definition at line 72 of file OgreMemoryAllocatedObject.h.

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

placement operator new

Definition at line 78 of file OgreMemoryAllocatedObject.h.

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

array operator new, with debug line info

Definition at line 85 of file OgreMemoryAllocatedObject.h.

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

Definition at line 90 of file OgreMemoryAllocatedObject.h.

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

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

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

Member Data Documentation

CurrentGeometryMap Ogre::InstancedGeometry::MaterialBucket::mCurrentGeometryMap
protected

Definition at line 339 of file OgreInstancedGeometry.h.

GeometryBucketList Ogre::InstancedGeometry::MaterialBucket::mGeometryBucketList
protected

list of Geometry Buckets in this BatchInstance

Definition at line 336 of file OgreInstancedGeometry.h.

int Ogre::InstancedGeometry::MaterialBucket::mLastIndex
protected

Definition at line 334 of file OgreInstancedGeometry.h.

MaterialPtr Ogre::InstancedGeometry::MaterialBucket::mMaterial
protected

Pointer to material being used.

Definition at line 331 of file OgreInstancedGeometry.h.

String Ogre::InstancedGeometry::MaterialBucket::mMaterialName
protected

Material being used.

Definition at line 329 of file OgreInstancedGeometry.h.

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

Pointer to parent LODBucket.

Definition at line 327 of file OgreInstancedGeometry.h.

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

Active technique.

Definition at line 333 of file OgreInstancedGeometry.h.


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