torque Torque Game Engine Documentation
TGE Version 1.5.2

Container Class Reference

#include <sceneObject.h>


Basic database operations

typedef void(*) FindCallback (SceneObject *, void *key)
void findObjects (U32 mask, FindCallback, void *key=NULL)
void findObjects (const Box3F &box, U32 mask, FindCallback, void *key=NULL)
void polyhedronFindObjects (const Polyhedron &polyhedron, U32 mask, FindCallback, void *key=NULL)

Public Member Functions

 Container ()
 ~Container ()
bool addObject (SceneObject *)
bool removeObject (SceneObject *)
void addRefPoolBlock ()
SceneObjectRefallocateObjectRef ()
void freeObjectRef (SceneObjectRef *)
void insertIntoBins (SceneObject *)
void removeFromBins (SceneObject *)
void checkBins (SceneObject *)
 Checkbins makes sure that we're not just sticking the object right back where it came from.
void insertIntoBins (SceneObject *, U32, U32, U32, U32)
void initRadiusSearch (const Point3F &searchPoint, const F32 searchRadius, const U32 searchMask)
U32 containerSearchNext ()
F32 containerSearchCurrDist ()
F32 containerSearchCurrRadiusDist ()
Line intersection
bool castRay (const Point3F &start, const Point3F &end, U32 mask, RayInfo *info)
bool collideBox (const Point3F &start, const Point3F &end, U32 mask, RayInfo *info)
Poly list
bool buildPolyList (const Box3F &box, U32 mask, AbstractPolyList *, FindCallback=0, void *key=NULL)
bool buildCollisionList (const Box3F &box, const Point3F &start, const Point3F &end, const VectorF &velocity, U32 mask, CollisionList *collisionList, FindCallback=0, void *key=NULL, const Box3F *queryExpansion=0)
bool buildCollisionList (const Polyhedron &polyhedron, const Point3F &start, const Point3F &end, const VectorF &velocity, U32 mask, CollisionList *collisionList, FindCallback callback=0, void *key=NULL)

Static Public Attributes

static const U32 csmNumBins
static const F32 csmBinSize
static const F32 csmTotalBinSize
static const U32 csmRefPoolBlockSize
static U32 smCurrSeqKey

Private Member Functions

void cleanupSearchVectors ()

Private Attributes

Link mStart
Link mEnd
SceneObjectRefmFreeRefPool
Vector< SceneObjectRef * > mRefPoolBlocks
SceneObjectRefmBinArray
SceneObjectRef mOverflowBin
Vector< SimObjectPtr< SceneObject > * > mSearchList
 Object searches to support console querying of the database. ONLY WORKS ON SERVER.
S32 mCurrSearchPos
Point3F mSearchReferencePoint

Data Structures

struct  CallbackInfo
struct  Link


Member Typedef Documentation


Constructor & Destructor Documentation

Container::Container (  ) 

Container::~Container (  ) 


Member Function Documentation

void Container::findObjects ( U32  mask,
FindCallback  ,
void key = NULL 
) [inline]

void Container::findObjects ( const Box3F box,
U32  mask,
FindCallback  ,
void key = NULL 
)

void Container::polyhedronFindObjects ( const Polyhedron polyhedron,
U32  mask,
FindCallback  ,
void key = NULL 
)

bool Container::castRay ( const Point3F start,
const Point3F end,
U32  mask,
RayInfo info 
)

bool Container::collideBox ( const Point3F start,
const Point3F end,
U32  mask,
RayInfo info 
)

bool Container::buildPolyList ( const Box3F box,
U32  mask,
AbstractPolyList ,
FindCallback  = 0,
void key = NULL 
)

bool Container::buildCollisionList ( const Box3F box,
const Point3F start,
const Point3F end,
const VectorF velocity,
U32  mask,
CollisionList collisionList,
FindCallback  = 0,
void key = NULL,
const Box3F queryExpansion = 0 
)

bool Container::buildCollisionList ( const Polyhedron polyhedron,
const Point3F start,
const Point3F end,
const VectorF velocity,
U32  mask,
CollisionList collisionList,
FindCallback  callback = 0,
void key = NULL 
)

bool Container::addObject ( SceneObject  ) 

bool Container::removeObject ( SceneObject  ) 

void Container::addRefPoolBlock (  ) 

SceneObjectRef * Container::allocateObjectRef (  )  [inline]

void Container::freeObjectRef ( SceneObjectRef  )  [inline]

void Container::insertIntoBins ( SceneObject  ) 

void Container::removeFromBins ( SceneObject  ) 

void Container::checkBins ( SceneObject  ) 

Checkbins makes sure that we're not just sticking the object right back where it came from.

The overloaded insertInto is so we don't calculate the ranges twice.

void Container::insertIntoBins ( SceneObject ,
U32  ,
U32  ,
U32  ,
U32   
)

void Container::cleanupSearchVectors (  )  [private]

void Container::initRadiusSearch ( const Point3F searchPoint,
const F32  searchRadius,
const U32  searchMask 
)

U32 Container::containerSearchNext (  ) 

F32 Container::containerSearchCurrDist (  ) 

F32 Container::containerSearchCurrRadiusDist (  ) 


Field Documentation

const U32 Container::csmNumBins [static]

const F32 Container::csmBinSize [static]

Link Container::mEnd [private]

Object searches to support console querying of the database. ONLY WORKS ON SERVER.




All Rights Reserved GarageGames.com, Inc. 1999-2005
Auto-magically Generated with Doxygen