AI_SDB_SpatialListHierarchy Class Reference
[Spatial Database]
#include <AI_SDB_SpatialListHierarchy.h>
Inheritance diagram for AI_SDB_SpatialListHierarchy:
![](classAI__SDB__SpatialListHierarchy.png)
Detailed Description
A collection of elements stored as a list.
This is pretty much the most basic spatial heirarchy you can implement, which is not really a heirarchy at all. The set of spatial elements are stuck into a list. For processing visitors, the spatiallist simply calls Accept()
on the all the spatial elements, relying on the elements themselves to figure out visibility/occlusion and whatnot.
Obviously more efficient spatial heirarchy data structures exist, but this method is simple and doesn't have the overhead of more complicated spatial heirarchies, making it useful for compiling and processing small sets of spatial elements.
Public Member Functions | |
AI_SDB_SpatialListHierarchy () | |
~AI_SDB_SpatialListHierarchy () | |
void | ClearList () |
Clear out spatial element references. Elements are not deleted! | |
void | AddElement (AI_SDB_SpatialElement *appendme) |
Append an element to the list of elements. | |
void | RemoveElement (AI_SDB_SpatialElement *removeme) |
Remove a given element. | |
virtual void | Accept (AI_SDB_VisibilityVisitor &visitor, int recursiondepth, AI_SDB_VisitorFlags flags) |
Process the list of elements. | |
virtual void | Accept (AI_SDB_SpatialVisitor &visitor, int recursiondepth, AI_SDB_VisitorFlags flags) |
Process the list of elements. | |
virtual void | Accept (AI_SDB_OcclusionVisitor &visitor, int recursiondepth, AI_SDB_VisitorFlags flags) |
Process the list of elements. | |
Protected Attributes | |
AI_List | m_ElementList |
Constructor & Destructor Documentation
AI_SDB_SpatialListHierarchy::AI_SDB_SpatialListHierarchy | ( | ) |
AI_SDB_SpatialListHierarchy::~AI_SDB_SpatialListHierarchy | ( | ) |
Member Function Documentation
void AI_SDB_SpatialListHierarchy::ClearList | ( | ) |
Clear out spatial element references. Elements are not deleted!
void AI_SDB_SpatialListHierarchy::AddElement | ( | AI_SDB_SpatialElement * | appendme | ) |
Append an element to the list of elements.
void AI_SDB_SpatialListHierarchy::RemoveElement | ( | AI_SDB_SpatialElement * | removeme | ) |
Remove a given element.
void AI_SDB_SpatialListHierarchy::Accept | ( | AI_SDB_VisibilityVisitor & | visitor, | |
int | recursiondepth, | |||
AI_SDB_VisitorFlags | flags | |||
) | [virtual] |
void AI_SDB_SpatialListHierarchy::Accept | ( | AI_SDB_SpatialVisitor & | visitor, | |
int | recursiondepth, | |||
AI_SDB_VisitorFlags | flags | |||
) | [virtual] |
void AI_SDB_SpatialListHierarchy::Accept | ( | AI_SDB_OcclusionVisitor & | visitor, | |
int | recursiondepth, | |||
AI_SDB_VisitorFlags | flags | |||
) | [virtual] |
Member Data Documentation
AI_List AI_SDB_SpatialListHierarchy::m_ElementList [protected] |
The documentation for this class was generated from the following files: