PURE API 0.5
PR00F's Ultimate Rendering Engine full documentation
Loading...
Searching...
No Matches
PureObject3DManager::PureObject3DManagerImpl Class Reference

Detailed Description

Definition at line 29 of file PureObject3DManager.cpp.

Public Member Functions

virtual ~PureObject3DManagerImpl ()
 
TPureBool isInitialized () const
 
std::deque< PureObject3D * > & getOccluders ()
 
const std::deque< PureObject3D * > & getOccluders () const
 
std::deque< PureObject3D * > & get3dOpaqueOccludees ()
 
const std::deque< PureObject3D * > & get3dOpaqueOccludees () const
 
std::deque< PureObject3D * > & get3dBlendedOccludees ()
 
const std::deque< PureObject3D * > & get3dBlendedOccludees () const
 
std::deque< PureObject3D * > & get2dOpaqueOccludees ()
 
const std::deque< PureObject3D * > & get2dOpaqueOccludees () const
 
std::deque< PureObject3D * > & get2dBlendedOccludees ()
 
const std::deque< PureObject3D * > & get2dBlendedOccludees () const
 

Private Member Functions

 PureObject3DManagerImpl ()
 
 PureObject3DManagerImpl (PureObject3DManager *owner, PureTextureManager &texMgr, PureMaterialManager &matMgr)
 
 PureObject3DManagerImpl (const PureObject3DManagerImpl &)
 
PureObject3DManagerImploperator= (const PureObject3DManagerImpl &)
 

Static Private Member Functions

static TPureBool isEligibleForOcclusionQuery (TPureUInt nTotalVertexIndices)
 Decides if an object is eligible for automatically turn on occlusion query on it.
 

Private Attributes

PureObject3DManager_pOwner
 The owner public object who creates this pimpl object.
 
TPureUInt nRunningCounter
 Always increased when creating a new level-1 Object3D instance.
 
TPureBool bInited
 True if successfully inited, false if not functional.
 
TPureBool bMinimalIndexStorage
 True if storage of indices is minimalized.
 
PureTextureManagertextureMgr
 Used to auto-load textures for OBJ files.
 
PureMaterialManagermaterialMgr
 Used to auto-load/create materials for objects.
 
TPureFloat fOccluderSelectionBias
 The biggest area of an object should be at least this times bigger than the average biggest area of all objects to be selected as an occluder.
 
TPureUInt nMaxOccluderCount
 How many occluders are allowed to be selected by UpdateOccluderStates().
 

Friends

class PureObject3DManager
 

Constructor & Destructor Documentation

◆ ~PureObject3DManagerImpl()

PureObject3DManager::PureObject3DManagerImpl::~PureObject3DManagerImpl ( )
virtual

Definition at line 83 of file PureObject3DManager.cpp.

◆ PureObject3DManagerImpl() [1/3]

PureObject3DManager::PureObject3DManagerImpl::PureObject3DManagerImpl ( )
private

Definition at line 174 of file PureObject3DManager.cpp.

◆ PureObject3DManagerImpl() [2/3]

PureObject3DManager::PureObject3DManagerImpl::PureObject3DManagerImpl ( PureObject3DManager * owner,
PureTextureManager & texMgr,
PureMaterialManager & matMgr )
private
Parameters
ownerPublic class instance owning this pimpl object.
texMgrA TextureManager instance to be used for loading textures used by Object3D instances.
matMgrA MaterialManager instance to be used for creating materials used by Object3D instances.

Definition at line 187 of file PureObject3DManager.cpp.

◆ PureObject3DManagerImpl() [3/3]

PureObject3DManager::PureObject3DManagerImpl::PureObject3DManagerImpl ( const PureObject3DManagerImpl & )
private

Definition at line 205 of file PureObject3DManager.cpp.

Member Function Documentation

◆ get2dBlendedOccludees() [1/2]

std::deque< PureObject3D * > & PureObject3DManager::PureObject3DManagerImpl::get2dBlendedOccludees ( )

Definition at line 146 of file PureObject3DManager.cpp.

◆ get2dBlendedOccludees() [2/2]

const std::deque< PureObject3D * > & PureObject3DManager::PureObject3DManagerImpl::get2dBlendedOccludees ( ) const

Definition at line 152 of file PureObject3DManager.cpp.

◆ get2dOpaqueOccludees() [1/2]

std::deque< PureObject3D * > & PureObject3DManager::PureObject3DManagerImpl::get2dOpaqueOccludees ( )

Definition at line 134 of file PureObject3DManager.cpp.

◆ get2dOpaqueOccludees() [2/2]

const std::deque< PureObject3D * > & PureObject3DManager::PureObject3DManagerImpl::get2dOpaqueOccludees ( ) const

Definition at line 140 of file PureObject3DManager.cpp.

◆ get3dBlendedOccludees() [1/2]

std::deque< PureObject3D * > & PureObject3DManager::PureObject3DManagerImpl::get3dBlendedOccludees ( )

Definition at line 122 of file PureObject3DManager.cpp.

◆ get3dBlendedOccludees() [2/2]

const std::deque< PureObject3D * > & PureObject3DManager::PureObject3DManagerImpl::get3dBlendedOccludees ( ) const

Definition at line 128 of file PureObject3DManager.cpp.

◆ get3dOpaqueOccludees() [1/2]

std::deque< PureObject3D * > & PureObject3DManager::PureObject3DManagerImpl::get3dOpaqueOccludees ( )

Definition at line 110 of file PureObject3DManager.cpp.

◆ get3dOpaqueOccludees() [2/2]

const std::deque< PureObject3D * > & PureObject3DManager::PureObject3DManagerImpl::get3dOpaqueOccludees ( ) const

Definition at line 116 of file PureObject3DManager.cpp.

◆ getOccluders() [1/2]

std::deque< PureObject3D * > & PureObject3DManager::PureObject3DManagerImpl::getOccluders ( )

Definition at line 98 of file PureObject3DManager.cpp.

◆ getOccluders() [2/2]

const std::deque< PureObject3D * > & PureObject3DManager::PureObject3DManagerImpl::getOccluders ( ) const

Definition at line 104 of file PureObject3DManager.cpp.

◆ isEligibleForOcclusionQuery()

TPureBool PureObject3DManager::PureObject3DManagerImpl::isEligibleForOcclusionQuery ( TPureUInt nTotalVertexIndices)
staticprivate

Decides if an object is eligible for automatically turn on occlusion query on it.

Returns
True if object should be prepared for occlusion querying, false otherwise.

Definition at line 168 of file PureObject3DManager.cpp.

◆ isInitialized()

TPureBool PureObject3DManager::PureObject3DManagerImpl::isInitialized ( ) const

Definition at line 92 of file PureObject3DManager.cpp.

◆ operator=()

PureObject3DManager::PureObject3DManagerImpl & PureObject3DManager::PureObject3DManagerImpl::operator= ( const PureObject3DManagerImpl & )
private

Definition at line 213 of file PureObject3DManager.cpp.

Friends And Related Symbol Documentation

◆ PureObject3DManager

friend class PureObject3DManager
friend

Definition at line 75 of file PureObject3DManager.cpp.

Member Data Documentation

◆ _pOwner

PureObject3DManager* PureObject3DManager::PureObject3DManagerImpl::_pOwner
private

The owner public object who creates this pimpl object.

Definition at line 54 of file PureObject3DManager.cpp.

◆ bInited

TPureBool PureObject3DManager::PureObject3DManagerImpl::bInited
private

True if successfully inited, false if not functional.

Definition at line 57 of file PureObject3DManager.cpp.

◆ bMinimalIndexStorage

TPureBool PureObject3DManager::PureObject3DManagerImpl::bMinimalIndexStorage
private

True if storage of indices is minimalized.

Definition at line 58 of file PureObject3DManager.cpp.

◆ fOccluderSelectionBias

TPureFloat PureObject3DManager::PureObject3DManagerImpl::fOccluderSelectionBias
private

The biggest area of an object should be at least this times bigger than the average biggest area of all objects to be selected as an occluder.

Definition at line 61 of file PureObject3DManager.cpp.

◆ materialMgr

PureMaterialManager& PureObject3DManager::PureObject3DManagerImpl::materialMgr
private

Used to auto-load/create materials for objects.

Definition at line 60 of file PureObject3DManager.cpp.

◆ nMaxOccluderCount

TPureUInt PureObject3DManager::PureObject3DManagerImpl::nMaxOccluderCount
private

How many occluders are allowed to be selected by UpdateOccluderStates().

Definition at line 62 of file PureObject3DManager.cpp.

◆ nRunningCounter

TPureUInt PureObject3DManager::PureObject3DManagerImpl::nRunningCounter
private

Always increased when creating a new level-1 Object3D instance.

Definition at line 56 of file PureObject3DManager.cpp.

◆ textureMgr

PureTextureManager& PureObject3DManager::PureObject3DManagerImpl::textureMgr
private

Used to auto-load textures for OBJ files.

Definition at line 59 of file PureObject3DManager.cpp.


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