#include <collidecharm_impl.h>
Public Member Functions | |
CollisionAggregator (const CollideGrid3d &gridMap_, collideMgr *mgr_) | |
~CollisionAggregator () | |
void | aggregate (int pe, int chunk, int n, const bbox3d *boxes, const int *prio) |
void | send (void) |
void | compact (void) |
Private Member Functions | |
voxelAggregator * | addAccum (const CollideLoc3d &dest) |
Private Attributes | |
CollideGrid3d | gridMap |
CkHashtableT< CollideLoc3d, voxelAggregator * > | voxels |
collideMgr * | mgr |
Definition at line 68 of file collidecharm_impl.h.
CollisionAggregator::CollisionAggregator | ( | const CollideGrid3d & | gridMap_, | |
collideMgr * | mgr_ | |||
) |
Definition at line 218 of file collidecharm.C.
CollisionAggregator::~CollisionAggregator | ( | ) |
Definition at line 221 of file collidecharm.C.
References compact().
voxelAggregator * CollisionAggregator::addAccum | ( | const CollideLoc3d & | dest | ) | [private] |
Definition at line 227 of file collidecharm.C.
References mgr, CkHashtableTslow< KEY, OBJ >::put(), and voxels.
Referenced by aggregate().
void CollisionAggregator::aggregate | ( | int | pe, | |
int | chunk, | |||
int | n, | |||
const bbox3d * | boxes, | |||
const int * | prio | |||
) |
Definition at line 235 of file collidecharm.C.
References voxelAggregator::add(), hashCache1< KEY, OBJ >::add(), addAccum(), bbox3d::axis(), c, CkHashtableT< KEY, OBJ >::get(), seg1dT< T >::getMax(), seg1dT< T >::getMin(), gridMap, hashCache1< KEY, OBJ >::lookup(), voxels, and CollideGrid3d::world2grid().
Referenced by collideMgr::contribute().
void CollisionAggregator::send | ( | void | ) |
Definition at line 279 of file collidecharm.C.
References c, CkHashtable::iterator(), CkHashtableIterator::next(), and voxels.
Referenced by collideMgr::contribute().
void CollisionAggregator::compact | ( | void | ) |
Definition at line 288 of file collidecharm.C.
References c, CkHashtable::empty(), CkHashtable::iterator(), CkHashtableIterator::next(), and voxels.
Referenced by collideMgr::contribute(), and ~CollisionAggregator().
CollideGrid3d CollisionAggregator::gridMap [private] |
Definition at line 70 of file collidecharm_impl.h.
Referenced by addAccum(), aggregate(), compact(), and send().
collideMgr* CollisionAggregator::mgr [private] |