PPL Logo

CkLocRec Class Reference
[CkArrayImpl]

A CkLocRec is our local representation of an array element. More...

#include <cklocation.h>

Inheritance diagram for CkLocRec:

Inheritance graph
[legend]
Collaboration diagram for CkLocRec:

Collaboration graph
[legend]

Public Types

enum  RecType {
  base = 0, local, remote, buffering,
  dead
}
 Return the type of this ArrayRec:. More...

Public Member Functions

 CkLocRec (CkLocMgr *mgr)
virtual ~CkLocRec ()
CkLocMgrgetLocMgr (void) const
virtual RecType type (void)=0
virtual CmiBool deliver (CkArrayMessage *m, CkDeliver_t type, int opts=0)=0
 Accept a message for this element.
virtual void beenReplaced (void)
 This is called when this ArrayRec is about to be replaced.
virtual CmiBool isObsolete (int nSprings, const CkArrayIndex &idx)=0
 Return if this rec is now obsolete.
virtual CkMigratablelookupElement (CkArrayID aid)
 Return the represented array element; or NULL if there is none.
virtual int lookupProcessor (void)
 Return the last known processor; or -1 if none.

Protected Member Functions

virtual void weAreObsolete (const CkArrayIndex &idx)

Protected Attributes

CkLocMgrmyLocMgr

Detailed Description

A CkLocRec is our local representation of an array element.

The location manager's main hashtable maps array indices to CkLocRec *'s.

Definition at line 124 of file cklocation.h.


Member Enumeration Documentation

Return the type of this ArrayRec:.

Enumerator:
base 
local 
remote 
buffering 
dead 

Definition at line 136 of file cklocation.h.


Constructor & Destructor Documentation

CkLocRec::CkLocRec ( CkLocMgr mgr  )  [inline]

Definition at line 131 of file cklocation.h.

CkLocRec::~CkLocRec (  )  [virtual]

Definition at line 1246 of file cklocation.C.


Member Function Documentation

void CkLocRec::weAreObsolete ( const CkArrayIndex idx  )  [protected, virtual]

Definition at line 1245 of file cklocation.C.

CkLocMgr* CkLocRec::getLocMgr ( void   )  const [inline]

Definition at line 133 of file cklocation.h.

References myLocMgr.

Referenced by CkEmmigrateElement(), and CkLocMgr::immigrate().

virtual RecType CkLocRec::type ( void   )  [pure virtual]

virtual CmiBool CkLocRec::deliver ( CkArrayMessage m,
CkDeliver_t  type,
int  opts = 0 
) [pure virtual]

void CkLocRec::beenReplaced ( void   )  [virtual]

This is called when this ArrayRec is about to be replaced.

It is only used to deliver buffered element messages.

Reimplemented in CkLocRec_dead, and CkLocRec_buffering.

Definition at line 1247 of file cklocation.C.

Referenced by CkLocMgr::insertRec().

virtual CmiBool CkLocRec::isObsolete ( int  nSprings,
const CkArrayIndex idx 
) [pure virtual]

Return if this rec is now obsolete.

Implemented in CkLocRec_dead, CkLocRec_aging, CkLocRec_remote, CkLocRec_buffering, and CkLocRec_local.

Referenced by CkLocMgr::springCleaning().

CkMigratable * CkLocRec::lookupElement ( CkArrayID  aid  )  [virtual]

Return the represented array element; or NULL if there is none.

Reimplemented in CkLocRec_local.

Definition at line 1251 of file cklocation.C.

Referenced by CkLocMgr::lookup().

int CkLocRec::lookupProcessor ( void   )  [virtual]

Return the last known processor; or -1 if none.

Reimplemented in CkLocRec_remote, and CkLocRec_local.

Definition at line 1254 of file cklocation.C.

Referenced by CkLocMgr::isRemote(), CkLocMgr::lastKnown(), and CkLocMgr::pup().


Field Documentation


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

Generated on Thu May 24 07:57:20 2012 for Charm++ by  doxygen 1.5.5