PixelLightAPI  .
Protected Member Functions | Protected Attributes
PLScene::SceneHierarchy Class Reference

Abstract scene hierarchy class (spatial database, Bounding Volume Hierarchies (BVHs)) More...

#include <SceneHierarchy.h>

Inheritance diagram for PLScene::SceneHierarchy:
Inheritance graph
[legend]

List of all members.

Protected Member Functions

PLS_API SceneHierarchy ()
 Constructor.
virtual PLS_API ~SceneHierarchy ()
 Destructor.
PLS_API bool AddSceneNode (SceneNode &cSceneNode)
 Adds a scene node.
PLS_API bool RemoveSceneNode (SceneNode &cSceneNode)
 Removes a scene node.
PLS_API bool RefreshSceneNode (SceneNode &cSceneNode)
 Refreshes a scene node.
virtual SceneHierarchyNodeCreateNode ()=0
 Creates a hierarchy node.

Protected Attributes

SceneContainerm_pSceneContainer
SceneHierarchyNodem_pRootNode
PLCore::uint32 m_nTotalNumOfNodes
PLCore::uint32 m_nNumOfSceneNodes
PLCore::uint32 m_nMaxLevel
PLCore::uint32 m_nMaxNumOfNodeItems
PLCore::Pool
< SceneHierarchyNode * > 
m_lstFreeNodes

Detailed Description

Abstract scene hierarchy class (spatial database, Bounding Volume Hierarchies (BVHs))

Remarks:
Manages scene nodes of one or more scene containers within a hierarchy.

Constructor & Destructor Documentation

PLS_API PLScene::SceneHierarchy::SceneHierarchy ( ) [protected]

Constructor.

virtual PLS_API PLScene::SceneHierarchy::~SceneHierarchy ( ) [protected, virtual]

Destructor.


Member Function Documentation

PLS_API bool PLScene::SceneHierarchy::AddSceneNode ( SceneNode cSceneNode) [protected]

Adds a scene node.

Parameters:
[in]cSceneNodeScene node to add
Returns:
'true' if all went fine, else 'false' (maybe the given scene node is already within a hierarchy)
PLS_API bool PLScene::SceneHierarchy::RemoveSceneNode ( SceneNode cSceneNode) [protected]

Removes a scene node.

Parameters:
[in]cSceneNodeScene node to remove
Returns:
'true' if all went fine, else 'false'
PLS_API bool PLScene::SceneHierarchy::RefreshSceneNode ( SceneNode cSceneNode) [protected]

Refreshes a scene node.

Parameters:
[in]cSceneNodeScene node to refresh
Returns:
'true' if all went fine, else 'false' (maybe the given scene node is within no hierarchy)
virtual SceneHierarchyNode& PLScene::SceneHierarchy::CreateNode ( ) [protected, pure virtual]

Creates a hierarchy node.

Returns:
The created scene hierarchy node

Member Data Documentation

Scene container this scene hierarchy node operates on (NEVER a null pointer!)

Scene hierarchy root node (NEVER a null pointer!)

PLCore::uint32 PLScene::SceneHierarchy::m_nTotalNumOfNodes [protected]

Total number of scene hierarchy nodes

PLCore::uint32 PLScene::SceneHierarchy::m_nNumOfSceneNodes [protected]

The number of scene nodes within this hierarchy

PLCore::uint32 PLScene::SceneHierarchy::m_nMaxLevel [protected]

Maximum allowed level (tree depth)

Maximum allowed number of items per scene hierarchy node

List of currently unused scene hierarchy nodes


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


PixelLight PixelLight 0.9.10-R1
Copyright (C) 2002-2011 by The PixelLight Team
Last modified Fri Dec 23 2011 15:51:24
The content of this PixelLight document is published under the
Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported