PPL Logo

CkPointer< T > Class Template Reference

#include <pup.h>

Inheritance diagram for CkPointer< T >:

Inheritance graph
[legend]
Collaboration diagram for CkPointer< T >:

Collaboration graph
[legend]

Public Member Functions

 CkPointer (T *src)
 Used on the send side, and does *not* delete the object.
 CkPointer (CkPointer< T > &&src)
 CkPointer (void)
 Begin completely empty: used on marshalling recv side.
 ~CkPointer ()
 operator T * ()
 Extract the object held by this class.
void pup (PUP::er &p)

Protected Member Functions

T * peek (void)

Private Member Functions

 CkPointer (const CkPointer< T > &)
void operator= (const CkPointer< T > &)
void operator= (CkPointer< T > &&)

Private Attributes

T * allocated
T * ptr

Friends

void operator| (PUP::er &p, CkPointer< T > &v)

Detailed Description

template<class T>
class CkPointer< T >

Definition at line 847 of file pup.h.


Constructor & Destructor Documentation

template<class T>
CkPointer< T >::CkPointer ( const CkPointer< T > &   )  [private]

template<class T>
CkPointer< T >::CkPointer ( T *  src  )  [inline]

Used on the send side, and does *not* delete the object.

Parameters:
src  Marshall this object.

Definition at line 858 of file pup.h.

References CkPointer< T >::allocated, and CkPointer< T >::ptr.

template<class T>
CkPointer< T >::CkPointer ( CkPointer< T > &&  src  )  [inline]

Definition at line 863 of file pup.h.

References CkPointer< T >::allocated, CkPointer< T >::ptr, and src.

template<class T>
CkPointer< T >::CkPointer ( void   )  [inline]

Begin completely empty: used on marshalling recv side.

Definition at line 873 of file pup.h.

References CkPointer< T >::allocated, and CkPointer< T >::ptr.

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

Definition at line 877 of file pup.h.

References CkPointer< T >::allocated.


Member Function Documentation

template<class T>
void CkPointer< T >::operator= ( const CkPointer< T > &   )  [private]

template<class T>
void CkPointer< T >::operator= ( CkPointer< T > &&   )  [private]

template<class T>
T* CkPointer< T >::peek ( void   )  [inline, protected]

Definition at line 855 of file pup.h.

References CkPointer< T >::ptr.

Referenced by CkReference< T >::operator T &().

Here is the caller graph for this function:

template<class T>
CkPointer< T >::operator T * ( void   )  [inline]

Extract the object held by this class.

Deleting the pointer is now the user's responsibility

Definition at line 881 of file pup.h.

References CkPointer< T >::allocated, and CkPointer< T >::ptr.

template<class T>
void CkPointer< T >::pup ( PUP::er p  )  [inline]

Reimplemented in CkReference< T >.

Definition at line 883 of file pup.h.

References CkPointer< T >::allocated, and CkPointer< T >::ptr.

Referenced by CkReference< T >::pup().

Here is the caller graph for this function:


Friends And Related Function Documentation

template<class T>
void operator| ( PUP::er p,
CkPointer< T > &  v 
) [friend]

Definition at line 896 of file pup.h.


Field Documentation

template<class T>
T* CkPointer< T >::allocated [private]

template<class T>
T* CkPointer< T >::ptr [private]


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

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