PPL Logo

LBObj Class Reference
[Charm++ Load Balancing Framework]

#include <LBObj.h>

Collaboration diagram for LBObj:

Collaboration graph
[legend]

Public Member Functions

 LBObj (LBDB *_parentDB, const LDObjHandle &_h, void *usr_ptr=NULL, CmiBool _migratable=CmiTrue, CmiBool _asyncArrival=CmiFalse)
 ~LBObj ()
 LBObj (LBDB *_parentDB, LDOMHandle _omhandle, LDObjid _id, void *_userData=0, CmiBool _migratable=CmiTrue)
void DepositHandle (const LDObjHandle &_h)
void Clear (void)
void IncrementTime (LBRealType walltime, LBRealType cputime)
void StartTimer (void)
void StopTimer (LBRealType *walltime, LBRealType *cputime)
void getTime (LBRealType *w, LBRealType *c)
void setTiming (LBRealType cputime)
LDOMHandleparentOM ()
const LDObjHandleGetLDObjHandle () const
void SetMigratable (CmiBool mig)
void UseAsyncMigrate (CmiBool async)
LDObjDataObjData ()
void lastKnownLoad (LBRealType *w, LBRealType *c)
void * getUserData ()

Private Attributes

LBDBparentDB
void * userData
LDObjData data
double startWTime
LBRealType lastWallTime
double startCTime
LBRealType lastCpuTime

Friends

class LBDB

Detailed Description

Definition at line 13 of file LBObj.h.


Constructor & Destructor Documentation

LBObj::LBObj ( LBDB _parentDB,
const LDObjHandle _h,
void *  usr_ptr = NULL,
CmiBool  _migratable = CmiTrue,
CmiBool  _asyncArrival = CmiFalse 
) [inline]

LBObj::~LBObj (  )  [inline]

Definition at line 39 of file LBObj.h.

LBObj::LBObj ( LBDB _parentDB,
LDOMHandle  _omhandle,
LDObjid  _id,
void *  _userData = 0,
CmiBool  _migratable = CmiTrue 
) [inline]

Definition at line 42 of file LBObj.h.

References CmiFalse, and parentDB.


Member Function Documentation

void LBObj::DepositHandle ( const LDObjHandle _h  )  [inline]

Definition at line 52 of file LBObj.h.

References CmiTrue, LDObjData::cpuTime, data, LDObjData::handle, LDObjData::migratable, and LDObjData::wallTime.

Referenced by LBDB::AddObj().

void LBObj::StartTimer ( void   )  [inline]

Definition at line 67 of file LBObj.h.

References startCTime, and startWTime.

Referenced by LDCollectStatsOn(), and LDObjectStart().

void LBObj::StopTimer ( LBRealType walltime,
LBRealType cputime 
) [inline]

Definition at line 73 of file LBObj.h.

References startCTime, and startWTime.

Referenced by LDObjectStop().

void LBObj::getTime ( LBRealType w,
LBRealType c 
) [inline]

Definition at line 89 of file LBObj.h.

References LDObjData::cpuTime, data, and LDObjData::wallTime.

Referenced by LDGetObjLoad().

void LBObj::setTiming ( LBRealType  cputime  )  [inline]

Definition at line 98 of file LBObj.h.

References LDObjData::cpuTime, data, and LDObjData::wallTime.

Referenced by LBDatabase::EstObjLoad().

LDOMHandle& LBObj::parentOM (  )  [inline]

Definition at line 106 of file LBObj.h.

References data, LDObjData::handle, and LDObjHandle::omhandle.

const LDObjHandle& LBObj::GetLDObjHandle (  )  const [inline]

Definition at line 107 of file LBObj.h.

References data, and LDObjData::handle.

Referenced by LDGetObjHandle().

void LBObj::SetMigratable ( CmiBool  mig  )  [inline]

Definition at line 108 of file LBObj.h.

References data, and LDObjData::migratable.

Referenced by LDMigratable(), and LDNonMigratable().

void LBObj::UseAsyncMigrate ( CmiBool  async  )  [inline]

Definition at line 109 of file LBObj.h.

References LDObjData::asyncArrival, and data.

Referenced by LDAsyncMigrate().

LDObjData& LBObj::ObjData (  )  [inline]

Definition at line 110 of file LBObj.h.

References data.

Referenced by LBDB::GetObjData(), and controlPointManager::gotoNextPhase().

void LBObj::lastKnownLoad ( LBRealType w,
LBRealType c 
) [inline]

Definition at line 111 of file LBObj.h.

References lastCpuTime, and lastWallTime.

Referenced by LDQueryKnownObjLoad().

void* LBObj::getUserData (  )  [inline]

Definition at line 119 of file LBObj.h.

References userData.

Referenced by LDObjUserData().


Friends And Related Function Documentation

friend class LBDB [friend]

Definition at line 15 of file LBObj.h.


Field Documentation

LBDB* LBObj::parentDB [private]

Definition at line 122 of file LBObj.h.

Referenced by IncrementTime(), and LBObj().

void* LBObj::userData [private]

Definition at line 123 of file LBObj.h.

Referenced by getUserData(), and LBObj().

Definition at line 128 of file LBObj.h.

Referenced by LBObj(), StartTimer(), and StopTimer().

Definition at line 129 of file LBObj.h.

Referenced by LBDB::ClearLoads(), lastKnownLoad(), and LBObj().

Definition at line 131 of file LBObj.h.

Referenced by LBObj(), StartTimer(), and StopTimer().

Definition at line 132 of file LBObj.h.

Referenced by LBDB::ClearLoads(), lastKnownLoad(), and LBObj().


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

Generated on Fri May 25 08:03:58 2012 for Charm++ by  doxygen 1.5.5