Public Member Functions | |
threadCollide (const CProxy_TCharm &threads, const CProxy_threadCollideMgr &mgr_, const CollideHandle &collide_) | |
threadCollide (CkMigrateMessage *m) | |
void | arriving (void) |
void | pup (PUP::er &p) |
Pack/unpack routine (called before and after migration). | |
void | ckJustMigrated (void) |
void | leaving (void) |
~threadCollide () | |
const CkArrayID & | getArrayID (void) const |
void | contribute (int n, const bbox3d *boxes, const int *prio) |
Contribute to Collision and suspend the caller. | |
void | resultsDone (void) |
No more collisions will arrive this step. | |
Data Fields | |
growableBufferT< Collision > | colls |
Protected Member Functions | |
virtual void | setupThreadPrivate (CthThread th) |
Private Types | |
typedef TCharmClient1D | super |
Private Attributes | |
CollideHandle | collide |
CProxy_threadCollideMgr | mgr |
Definition at line 99 of file threadCollide.C.
typedef TCharmClient1D threadCollide::super [private] |
Definition at line 100 of file threadCollide.C.
threadCollide::threadCollide | ( | const CProxy_TCharm & | threads, | |
const CProxy_threadCollideMgr & | mgr_, | |||
const CollideHandle & | collide_ | |||
) | [inline] |
Wake up the blocked thread in COLLIDE_Init
Definition at line 110 of file threadCollide.C.
References arriving(), TCharm::semaPut(), and TCharmClient1D::thread.
threadCollide::threadCollide | ( | CkMigrateMessage * | m | ) | [inline] |
Definition at line 119 of file threadCollide.C.
threadCollide::~threadCollide | ( | ) | [inline] |
Definition at line 138 of file threadCollide.C.
References leaving().
virtual void threadCollide::setupThreadPrivate | ( | CthThread | th | ) | [inline, protected, virtual] |
void threadCollide::arriving | ( | void | ) | [inline] |
Definition at line 121 of file threadCollide.C.
References collide, CollideRegister(), mgr, and ArrayElementT< CkIndex1D >::thisIndex.
Referenced by ckJustMigrated(), and threadCollide().
void threadCollide::pup | ( | PUP::er & | p | ) | [inline, virtual] |
Pack/unpack routine (called before and after migration).
Reimplemented from TCharmClient1D.
Definition at line 125 of file threadCollide.C.
References collide, mgr, and PUP::pup().
void threadCollide::ckJustMigrated | ( | void | ) | [inline, virtual] |
Reimplemented from TCharmClient1D.
Definition at line 130 of file threadCollide.C.
References arriving(), and TCharmClient1D::ckJustMigrated().
void threadCollide::leaving | ( | void | ) | [inline] |
Definition at line 134 of file threadCollide.C.
References collide, CollideUnregister(), mgr, and ArrayElementT< CkIndex1D >::thisIndex.
Referenced by ~threadCollide().
const CkArrayID& threadCollide::getArrayID | ( | void | ) | const [inline] |
Definition at line 141 of file threadCollide.C.
References ArrayElement::thisArrayID.
Referenced by COLLIDE_Init().
Contribute to Collision and suspend the caller.
Definition at line 145 of file threadCollide.C.
References collide, CollideBoxesPrio(), TCharm::suspend(), ArrayElementT< CkIndex1D >::thisIndex, and TCharmClient1D::thread.
void threadCollide::resultsDone | ( | void | ) | [inline] |
No more collisions will arrive this step.
Definition at line 152 of file threadCollide.C.
References TCharm::resume(), and TCharmClient1D::thread.
CollideHandle threadCollide::collide [private] |
Definition at line 102 of file threadCollide.C.
Referenced by arriving(), contribute(), leaving(), and pup().
CProxy_threadCollideMgr threadCollide::mgr [private] |