Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
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]

Public Types

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

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.
 
void assign (QueuedGeometry *qsm)
 Assign geometry to this bucket.
 
void build ()
 Build.
 
void dump (std::ofstream &of) const
 Dump contents for diagnostics.
 
TechniquegetCurrentTechnique (void) const
 Get the current Technique.
 
MaterialBucket::GeometryBucketListgetGeometryBucketList (void) const
 Return the geometry list.
 
GeometryIterator getGeometryIterator (void)
 Get an iterator over the contained geometry.
 
int getLastIndex ()
 
const MaterialPtrgetMaterial (void) const
 Get the material for this bucket.
 
MaterialBucket::CurrentGeometryMapgetMaterialBucketMap (void) const
 Return the geometry map.
 
const StringgetMaterialName (void) const
 Get the material name.
 
LODBucketgetParent (void)
 
void operator delete (void *ptr)
 
void operator delete (void *ptr, const char *, int, const char *)
 
void operator delete (void *ptr, void *)
 
void operator delete[] (void *ptr)
 
void operator delete[] (void *ptr, const char *, int, const char *)
 
voidoperator new (size_t sz)
 
voidoperator new (size_t sz, const char *file, int line, const char *func)
 operator new, with debug line info
 
voidoperator new (size_t sz, void *ptr)
 placement operator new
 
voidoperator new[] (size_t sz)
 
voidoperator new[] (size_t sz, const char *file, int line, const char *func)
 array operator new, with debug line info
 
void setLastIndex (int index)
 
void setMaterial (const String &name)
 
void updateContainers (GeometryBucket *bucket, const String &format)
 fill in the map and the list
 
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.
 

Protected Attributes

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

Detailed Description

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

Definition at line 321 of file OgreInstancedGeometry.h.

Member Typedef Documentation

◆ CurrentGeometryMap

Definition at line 339 of file OgreInstancedGeometry.h.

◆ GeometryBucketList

list of Geometry Buckets in this BatchInstance

Definition at line 325 of file OgreInstancedGeometry.h.

◆ GeometryIterator

Iterator over geometry.

Definition at line 360 of file OgreInstancedGeometry.h.

Constructor & Destructor Documentation

◆ MaterialBucket()

Ogre::InstancedGeometry::MaterialBucket::MaterialBucket ( LODBucket parent,
const String materialName 
)

◆ ~MaterialBucket()

virtual Ogre::InstancedGeometry::MaterialBucket::~MaterialBucket ( )
virtual

Member Function Documentation

◆ addRenderables()

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

Add children to the render queue.

◆ assign()

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

Assign geometry to this bucket.

◆ build()

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

Build.

◆ dump()

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

Dump contents for diagnostics.

◆ getCurrentTechnique()

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

Get the current Technique.

Definition at line 364 of file OgreInstancedGeometry.h.

◆ getGeometryBucketList()

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

Return the geometry list.

◆ getGeometryFormatString()

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

Get a packed string identifying the geometry format.

◆ getGeometryIterator()

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

Get an iterator over the contained geometry.

◆ getLastIndex()

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

Definition at line 374 of file OgreInstancedGeometry.h.

◆ getMaterial()

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

Get the material for this bucket.

Definition at line 358 of file OgreInstancedGeometry.h.

◆ getMaterialBucketMap()

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

Return the geometry map.

◆ getMaterialName()

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

Get the material name.

Definition at line 349 of file OgreInstancedGeometry.h.

◆ getParent()

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

Definition at line 347 of file OgreInstancedGeometry.h.

◆ operator delete() [1/3]

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

Definition at line 96 of file OgreMemoryAllocatedObject.h.

◆ operator delete() [2/3]

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

Definition at line 108 of file OgreMemoryAllocatedObject.h.

◆ operator delete() [3/3]

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

Definition at line 102 of file OgreMemoryAllocatedObject.h.

◆ operator delete[]() [1/2]

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

Definition at line 113 of file OgreMemoryAllocatedObject.h.

◆ operator delete[]() [2/2]

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

Definition at line 119 of file OgreMemoryAllocatedObject.h.

◆ operator new() [1/3]

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

Definition at line 73 of file OgreMemoryAllocatedObject.h.

◆ operator new() [2/3]

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 68 of file OgreMemoryAllocatedObject.h.

◆ operator new() [3/3]

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

placement operator new

Definition at line 79 of file OgreMemoryAllocatedObject.h.

◆ operator new[]() [1/2]

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

Definition at line 91 of file OgreMemoryAllocatedObject.h.

◆ operator new[]() [2/2]

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 86 of file OgreMemoryAllocatedObject.h.

◆ setLastIndex()

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

Definition at line 373 of file OgreInstancedGeometry.h.

◆ setMaterial()

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

◆ updateContainers()

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

fill in the map and the list

◆ visitRenderables()

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

Member Data Documentation

◆ mCurrentGeometryMap

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

Definition at line 340 of file OgreInstancedGeometry.h.

◆ mGeometryBucketList

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

list of Geometry Buckets in this BatchInstance

Definition at line 337 of file OgreInstancedGeometry.h.

◆ mLastIndex

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

Definition at line 335 of file OgreInstancedGeometry.h.

◆ mMaterial

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

Pointer to material being used.

Definition at line 332 of file OgreInstancedGeometry.h.

◆ mMaterialName

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

Material being used.

Definition at line 330 of file OgreInstancedGeometry.h.

◆ mParent

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

Pointer to parent LODBucket.

Definition at line 328 of file OgreInstancedGeometry.h.

◆ mTechnique

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

Active technique.

Definition at line 334 of file OgreInstancedGeometry.h.


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

Copyright © 2012 Torus Knot Software Ltd
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.