PPL Logo

CkRegisteredInfo< T > Class Template Reference
[CkRegister]

This class stores registered entities, like EntryInfo's, in a linear list indexed by index ("idx"). More...

#include <register.h>

Collaboration diagram for CkRegisteredInfo< T >:

Collaboration graph
[legend]

Public Member Functions

 CkRegisteredInfo ()
 Subtle: we *don't* want to call vec's constructor, because the order in which constructors for global variables get called is undefined.
 ~CkRegisteredInfo ()
int add (T *t)
 Add a heap-allocated registration record, returning the index used.
size_t size (void)
T * operator[] (size_t idx)
 Return the registered data at this index.

Private Member Functions

void outOfBounds (int idx)

Private Attributes

CkVec< T * > vec

Detailed Description

template<class T>
class CkRegisteredInfo< T >

This class stores registered entities, like EntryInfo's, in a linear list indexed by index ("idx").

Definition at line 293 of file register.h.


Constructor & Destructor Documentation

template<class T>
CkRegisteredInfo< T >::CkRegisteredInfo (  )  [inline]

Subtle: we *don't* want to call vec's constructor, because the order in which constructors for global variables get called is undefined.

Hence we rely on the implicit zero-initialization that all globals get.

Definition at line 312 of file register.h.

template<class T>
CkRegisteredInfo< T >::~CkRegisteredInfo (  )  [inline]

Definition at line 313 of file register.h.

References CkVec< T >::size(), and CkRegisteredInfo< T >::vec.

Here is the call graph for this function:


Member Function Documentation

template<class T>
void CkRegisteredInfo< T >::outOfBounds ( int  idx  )  [inline, private]

Definition at line 296 of file register.h.

References name, CkVec< T >::size(), and CkRegisteredInfo< T >::vec.

Referenced by CkRegisteredInfo< T >::operator[]().

Here is the call graph for this function:

Here is the caller graph for this function:

template<class T>
int CkRegisteredInfo< T >::add ( T *  t  )  [inline]

Add a heap-allocated registration record, returning the index used.

Definition at line 319 of file register.h.

References BGConverse::CkMyRank(), CkVec< T >::push_back(), CkVec< T >::size(), PUP::t, and CkRegisteredInfo< T >::vec.

Referenced by CkRegisterChare(), CkRegisterEpInternal(), CkRegisterMainChare(), CkRegisterMsg(), CkRegisterReadonly(), and CkRegisterReadonlyMsg().

Here is the call graph for this function:

Here is the caller graph for this function:

template<class T>
size_t CkRegisteredInfo< T >::size ( void   )  [inline]

Definition at line 329 of file register.h.

References CkVec< T >::size(), and CkRegisteredInfo< T >::vec.

Referenced by CkGetChareIdx(), CkPrintChareName(), and CkPrintEntryMethod().

Here is the call graph for this function:

Here is the caller graph for this function:

template<class T>
T* CkRegisteredInfo< T >::operator[] ( size_t  idx  )  [inline]

Return the registered data at this index.

Definition at line 332 of file register.h.

References CkRegisteredInfo< T >::outOfBounds(), CkVec< T >::size(), and CkRegisteredInfo< T >::vec.

Here is the call graph for this function:


Field Documentation

template<class T>
CkVec<T *> CkRegisteredInfo< T >::vec [private]


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

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