PPL Logo

pvtObjects Class Reference

List to hold records of posers registered with a PVT branch. More...

#include <pvtobj.h>

Collaboration diagram for pvtObjects:

Collaboration graph
[legend]

Public Member Functions

 pvtObjects ()
 Basic Constructor: preallocates space for 100 objects.
int getNumObjs ()
 Get number of objects in the list.
int getNumSpaces ()
 Get number of spaces in use in list.
void SetIdle ()
 Set posers to idle (ovt==-1).
void Wake ()
 Wake up all posers in list.
void callAtSync ()
void Commit ()
 Call Commit on all posers.
void CheckpointCommit ()
 Call CheckpointCommit on all posers.
void StratCalcs ()
 Perform synchronization strategy calculations.
int Insert (int index, POSE_TimeType ovt, int sync, sim *myPtr)
 Insert poser in list.
void Delete (int idx)
 Delete a poser from the list.
void dump ()
 Dump data fields.
void sanitize ()
 Check validity of data fields.

Data Fields

pvtObjectNodeobjs
 the list of posers

Private Attributes

int numObjs
 Number of posers present in the list.
int numSpaces
 number of consecutive spaces in list that are or have been occupied
int size
 number of spaces allocated in objs
int firstEmpty
 lowest index of an empty slot in objs
int stratIterCount
 counter for strat calculations

Detailed Description

List to hold records of posers registered with a PVT branch.

Definition at line 70 of file pvtobj.h.


Constructor & Destructor Documentation

pvtObjects::pvtObjects (  ) 

Basic Constructor: preallocates space for 100 objects.

Definition at line 16 of file pvtobj.C.

References CkExit(), firstEmpty, malloc(), numObjs, numSpaces, objs, POSE_UnsetTS, size, and stratIterCount.

Here is the call graph for this function:


Member Function Documentation

int pvtObjects::getNumObjs (  )  [inline]

Get number of objects in the list.

Definition at line 87 of file pvtobj.h.

References numObjs.

Referenced by PVT::getNumObjs().

Here is the caller graph for this function:

int pvtObjects::getNumSpaces (  )  [inline]

Get number of spaces in use in list.

Definition at line 89 of file pvtobj.h.

References numSpaces.

Referenced by PVT::setGVT(), and PVT::startPhase().

Here is the caller graph for this function:

void pvtObjects::SetIdle (  )  [inline]

Set posers to idle (ovt==-1).

Definition at line 91 of file pvtobj.h.

References numSpaces, and objs.

Referenced by PVT::startPhase().

Here is the caller graph for this function:

void pvtObjects::Wake (  ) 

Wake up all posers in list.

Definition at line 72 of file pvtobj.C.

References pvtObjectNode::localObjPtr, numSpaces, and objs.

Referenced by PVT::startPhase().

Here is the caller graph for this function:

void pvtObjects::callAtSync (  ) 

Definition at line 64 of file pvtobj.C.

References pvtObjectNode::localObjPtr, numSpaces, and objs.

Referenced by PVT::callAtSync().

Here is the caller graph for this function:

void pvtObjects::Commit (  ) 

Call Commit on all posers.

Definition at line 78 of file pvtobj.C.

References pvtObjectNode::localObjPtr, numSpaces, and objs.

Referenced by PVT::setGVT().

Here is the caller graph for this function:

void pvtObjects::CheckpointCommit (  ) 

Call CheckpointCommit on all posers.

Definition at line 84 of file pvtobj.C.

References pvtObjectNode::localObjPtr, numSpaces, and objs.

Referenced by PVT::setGVT().

Here is the caller graph for this function:

void pvtObjects::StratCalcs (  ) 

Perform synchronization strategy calculations.

Definition at line 90 of file pvtobj.C.

References CkLocalBranch(), Converse::CkMyPe(), Converse::CkNumPes(), GVT::getGVTIterationCount(), int, pvtObjectNode::localObjPtr, sim::myStrat, numSpaces, objs, strat::STRAT_T, stratIterCount, TheGVT, and totalNumPosers.

Referenced by PVT::setGVT().

Here is the call graph for this function:

Here is the caller graph for this function:

int pvtObjects::Insert ( int  index,
POSE_TimeType  ovt,
int  sync,
sim myPtr 
)

Insert poser in list.

Inserts an object in the list in the firstEmpty slot, expanding the list size if necessary

Definition at line 29 of file pvtobj.C.

References CkExit(), firstEmpty, idx, numObjs, numSpaces, objs, POSE_UnsetTS, realloc(), pvtObjectNode::set(), and size.

Referenced by PVT::objRegister().

Here is the call graph for this function:

Here is the caller graph for this function:

void pvtObjects::Delete ( int  idx  )  [inline]

Delete a poser from the list.

Definition at line 109 of file pvtobj.h.

References firstEmpty, numObjs, objs, POSE_UnsetTS, and pvtObjectNode::set().

Referenced by PVT::objRemove().

Here is the call graph for this function:

Here is the caller graph for this function:

void pvtObjects::dump (  ) 

Dump data fields.

Definition at line 126 of file pvtobj.C.

References pvtObjectNode::dump(), firstEmpty, numObjs, numSpaces, objs, and size.

Here is the call graph for this function:

void pvtObjects::sanitize (  ) 

Check validity of data fields.

Definition at line 139 of file pvtobj.C.

References firstEmpty, numObjs, numSpaces, objs, and size.


Field Documentation

Number of posers present in the list.

Definition at line 72 of file pvtobj.h.

Referenced by Delete(), dump(), getNumObjs(), Insert(), pvtObjects(), and sanitize().

number of consecutive spaces in list that are or have been occupied

Definition at line 74 of file pvtobj.h.

Referenced by callAtSync(), CheckpointCommit(), Commit(), dump(), getNumSpaces(), Insert(), pvtObjects(), sanitize(), SetIdle(), StratCalcs(), and Wake().

int pvtObjects::size [private]

number of spaces allocated in objs

Definition at line 76 of file pvtobj.h.

Referenced by dump(), Insert(), pvtObjects(), and sanitize().

lowest index of an empty slot in objs

Definition at line 78 of file pvtobj.h.

Referenced by Delete(), dump(), Insert(), pvtObjects(), and sanitize().

counter for strat calculations

Definition at line 80 of file pvtobj.h.

Referenced by pvtObjects(), and StratCalcs().


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

Generated on Mon Sep 21 08:29:00 2020 for Charm++ by  doxygen 1.5.5