PPL Logo

CkMessageReplay Class Reference

Inheritance diagram for CkMessageReplay:

Inheritance graph
[legend]
Collaboration diagram for CkMessageReplay:

Collaboration graph
[legend]

Public Member Functions

 CkMessageReplay (FILE *f_)
 ~CkMessageReplay ()

Private Member Functions

void getNext (void)
 Read the next message we need from the file:.
bool isNext (envelope *env)
 If this is the next message we need, advance and return true.
bool isNext (CthThreadToken *token)
void flush (void)
 Try to flush out any delayed messages.
virtual bool process (envelope **envptr, CkCoreState *ck)
 These are used internally by this class to call the correct subclass method.
virtual bool process (CthThreadToken *token, CkCoreState *ck)
virtual bool process (LBMigrateMsg **msg, CkCoreState *ck)

Private Attributes

int counter
int nextPE
int nextSize
int nextEvent
int nexttype
int nextEP
unsigned int crc1
unsigned int crc2
FILE * lbFile
CkQ< envelope * > delayedMessages
 This is a (short) list of messages we aren't yet ready for:.
CkQ< CthThreadToken * > delayedTokens
 This is a (short) list of tokens (i.e messages that awake user-threads) we aren't yet ready for:.

Detailed Description

Definition at line 2697 of file ck.C.


Constructor & Destructor Documentation

CkMessageReplay::CkMessageReplay ( FILE *  f_  )  [inline]

Definition at line 2822 of file ck.C.

References CkMessageReplayQuiescence(), Converse::CkMyPe(), CmiStartQD(), and CkMessageWatcher::f.

Here is the call graph for this function:

CkMessageReplay::~CkMessageReplay (  )  [inline]

Definition at line 2831 of file ck.C.

References CkMessageWatcher::f.


Member Function Documentation

void CkMessageReplay::getNext ( void   )  [inline, private]

Read the next message we need from the file:.

Definition at line 2704 of file ck.C.

References CkMessageWatcher::f.

bool CkMessageReplay::isNext ( envelope env  )  [inline, private]

If this is the next message we need, advance and return true.

Definition at line 2729 of file ck.C.

References checksum_initial(), Converse::CkMyPe(), CkPackMessage(), CkUnpackMessage(), crc32_initial(), envelope::getEpIdx(), envelope::getEvent(), envelope::getSrcPe(), envelope::getTotalsize(), and envelope::isPacked().

Here is the call graph for this function:

bool CkMessageReplay::isNext ( CthThreadToken token  )  [inline, private]

Definition at line 2773 of file ck.C.

References Converse::CkMyPe(), and CthThreadToken::serialNo.

Here is the call graph for this function:

void CkMessageReplay::flush ( void   )  [inline, private]

Try to flush out any delayed messages.

Definition at line 2784 of file ck.C.

References CthEnqueueBigSimThread(), envelope::getEpIdx(), envelope::getEvent(), envelope::getSrcPe(), envelope::getTotalsize(), len, and CthThreadToken::serialNo.

Here is the call graph for this function:

virtual bool CkMessageReplay::process ( envelope **  env,
CkCoreState ck 
) [inline, private, virtual]

virtual bool CkMessageReplay::process ( CthThreadToken token,
CkCoreState ck 
) [inline, private, virtual]

Reimplemented from CkMessageWatcher.

Definition at line 2867 of file ck.C.

References CthThreadToken::serialNo.

virtual bool CkMessageReplay::process ( LBMigrateMsg **  msg,
CkCoreState ck 
) [inline, private, virtual]

Reimplemented from CkMessageWatcher.

Definition at line 2882 of file ck.C.

References Converse::CkNumPes(), openReplayFile(), p, and LBMigrateMsg::pup().

Here is the call graph for this function:


Field Documentation

Definition at line 2698 of file ck.C.

Definition at line 2699 of file ck.C.

Definition at line 2699 of file ck.C.

Definition at line 2699 of file ck.C.

Definition at line 2699 of file ck.C.

Definition at line 2700 of file ck.C.

unsigned int CkMessageReplay::crc1 [private]

Definition at line 2701 of file ck.C.

unsigned int CkMessageReplay::crc2 [private]

Definition at line 2701 of file ck.C.

FILE* CkMessageReplay::lbFile [private]

Definition at line 2702 of file ck.C.

This is a (short) list of messages we aren't yet ready for:.

Definition at line 2779 of file ck.C.

This is a (short) list of tokens (i.e messages that awake user-threads) we aren't yet ready for:.

Definition at line 2781 of file ck.C.


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

Generated on Mon Sep 21 08:20:43 2020 for Charm++ by  doxygen 1.5.5