PPL Logo

Chare Class Reference

The base class of all parallel objects in Charm++, including Array Elements, Groups, and NodeGroups. More...

#include <charm++.h>

Inheritance diagram for Chare:

Inheritance graph
[legend]
Collaboration diagram for Chare:

Collaboration graph
[legend]

Public Member Functions

 Chare (CkMigrateMessage *m)
 Chare ()
virtual ~Chare ()
virtual void pup (PUP::er &p)
const CkChareIDckGetChareID (void) const
void CkGetChareID (CkChareID *dest) const
void CkEnableObjQ ()
CkObjectMsgQCkGetObjQueue ()
virtual CHARM_INPLACE_NEW int ckGetChareType () const
 Return the type of this chare, as present in _chareTable.
virtual char * ckDebugChareName (void)
 Return a strdup'd array containing this object's string name.
virtual int ckDebugChareID (char *str, int limit)
 Place into str a copy of the id of this object up to limit bytes, return the number of bytes used for the id.
virtual void ckDebugPup (PUP::er &p)
virtual void CkAddThreadListeners (CthThread tid, void *msg)
 Called when a [threaded] charm entry method is created:.
void sanitycheck ()

Data Fields

int magic
int chareIdx
ChareMlogDatamlogData

Protected Attributes

CkChareID thishandle
CkObjectMsgQ objQ

Detailed Description

The base class of all parallel objects in Charm++, including Array Elements, Groups, and NodeGroups.

Definition at line 257 of file charm++.h.


Constructor & Destructor Documentation

Chare::Chare ( CkMigrateMessage m  ) 

Chare::Chare ( void   ) 

Chare::~Chare (  )  [virtual]


Member Function Documentation

void Chare::pup ( PUP::er p  )  [virtual]

const CkChareID& Chare::ckGetChareID ( void   )  const [inline]

Definition at line 277 of file charm++.h.

References thishandle.

Referenced by CkCallback::CkCallback(), and PUPmarshall().

void Chare::CkGetChareID ( CkChareID dest  )  const [inline]

Definition at line 278 of file charm++.h.

References thishandle.

Referenced by main::main().

void Chare::CkEnableObjQ (  ) 

Definition at line 99 of file ck.C.

References CkObjectMsgQ::create(), and objQ.

Referenced by Chare().

CkObjectMsgQ& Chare::CkGetObjQueue (  )  [inline]

Definition at line 282 of file charm++.h.

References objQ.

Referenced by _enqObjQueue(), _ObjectQHandler(), _skipCldEnqueue(), and _TokenHandler().

int Chare::ckGetChareType ( void   )  const [virtual]

Return the type of this chare, as present in _chareTable.

Reimplemented in IrrGroup, and CkMigratable.

Definition at line 153 of file ck.C.

char * Chare::ckDebugChareName ( void   )  [virtual]

Return a strdup'd array containing this object's string name.

Reimplemented in IrrGroup, and ArrayElement.

Definition at line 156 of file ck.C.

References Converse::CkMyPe().

int Chare::ckDebugChareID ( char *  str,
int  limit 
) [virtual]

Place into str a copy of the id of this object up to limit bytes, return the number of bytes used for the id.

Reimplemented in IrrGroup, and ArrayElement.

Definition at line 161 of file ck.C.

void Chare::ckDebugPup ( PUP::er p  )  [virtual]

Definition at line 166 of file ck.C.

References pup().

void Chare::CkAddThreadListeners ( CthThread  tid,
void *  msg 
) [virtual]

Called when a [threaded] charm entry method is created:.

This method is called before starting a [threaded] entry method.

Reimplemented in IrrGroup, CkMigratable, and Group.

Definition at line 171 of file ck.C.

References CthSetThreadID(), CkChareID::objPtr, CkChareID::onPE, thishandle, traceAddThreadListeners(), and UsrToEnv().

Referenced by CkMigratable::CkAddThreadListeners(), and Group::CkAddThreadListeners().

void Chare::sanitycheck (  )  [inline]

Reimplemented in CkReductionMgr.

Definition at line 296 of file charm++.h.

References CmiAbort(), and magic.

Referenced by CkLocMgr::pupElementsFor().


Field Documentation

Definition at line 261 of file charm++.h.

Referenced by CkEnableObjQ(), and CkGetObjQueue().

Reimplemented in CkArray, and CkLocMgr.

Definition at line 265 of file charm++.h.

Referenced by Chare(), pup(), and sanitycheck().

Definition at line 268 of file charm++.h.

Referenced by Chare(), pup(), and ~Chare().


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

Generated on Sun Feb 12 08:02:37 2012 for Charm++ by  doxygen 1.5.5