dune-alugrid  2.8-git
Public Member Functions | Protected Types | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
ALUGrid::SharedPointer< ObjectImp > Class Template Reference

#include <dune/alugrid/common/memory.hh>

Public Member Functions

 SharedPointer ()
 
 SharedPointer (const SharedPointer &other)
 
 ~SharedPointer ()
 
void getObject ()
 
void assign (const SharedPointer &other)
 
void removeObject ()
 
void invalidate ()
 
SharedPointer & operator= (const SharedPointer &other)
 
 operator bool () const
 
bool operator== (const SharedPointer &other) const
 
bool unique () const
 
ObjectType & operator* ()
 
const ObjectType & operator* () const
 

Protected Types

typedef ObjectImp ObjectType
 
typedef ReferenceCountedObject< ObjectType > ReferenceCountedObjectType
 
typedef ALUMemoryProvider< ReferenceCountedObjectType > MemoryPoolType
 

Protected Member Functions

ReferenceCountedObjectType & ptr ()
 
const ReferenceCountedObjectType & ptr () const
 

Static Protected Member Functions

static MemoryPoolType & memoryPool ()
 

Protected Attributes

ReferenceCountedObjectType * ptr_
 

Member Typedef Documentation

◆ MemoryPoolType

template<class ObjectImp >
typedef ALUMemoryProvider< ReferenceCountedObjectType > ALUGrid::SharedPointer< ObjectImp >::MemoryPoolType
protected

◆ ObjectType

template<class ObjectImp >
typedef ObjectImp ALUGrid::SharedPointer< ObjectImp >::ObjectType
protected

◆ ReferenceCountedObjectType

template<class ObjectImp >
typedef ReferenceCountedObject< ObjectType > ALUGrid::SharedPointer< ObjectImp >::ReferenceCountedObjectType
protected

Constructor & Destructor Documentation

◆ SharedPointer() [1/2]

template<class ObjectImp >
ALUGrid::SharedPointer< ObjectImp >::SharedPointer ( )
inline

◆ SharedPointer() [2/2]

template<class ObjectImp >
ALUGrid::SharedPointer< ObjectImp >::SharedPointer ( const SharedPointer< ObjectImp > &  other)
inline

◆ ~SharedPointer()

template<class ObjectImp >
ALUGrid::SharedPointer< ObjectImp >::~SharedPointer ( )
inline

Member Function Documentation

◆ assign()

template<class ObjectImp >
void ALUGrid::SharedPointer< ObjectImp >::assign ( const SharedPointer< ObjectImp > &  other)
inline

◆ getObject()

template<class ObjectImp >
void ALUGrid::SharedPointer< ObjectImp >::getObject ( )
inline

◆ invalidate()

template<class ObjectImp >
void ALUGrid::SharedPointer< ObjectImp >::invalidate ( )
inline

◆ memoryPool()

template<class ObjectImp >
static MemoryPoolType& ALUGrid::SharedPointer< ObjectImp >::memoryPool ( )
inlinestaticprotected

◆ operator bool()

template<class ObjectImp >
ALUGrid::SharedPointer< ObjectImp >::operator bool ( ) const
inline

◆ operator*() [1/2]

template<class ObjectImp >
ObjectType& ALUGrid::SharedPointer< ObjectImp >::operator* ( )
inline

◆ operator*() [2/2]

template<class ObjectImp >
const ObjectType& ALUGrid::SharedPointer< ObjectImp >::operator* ( ) const
inline

◆ operator=()

template<class ObjectImp >
SharedPointer& ALUGrid::SharedPointer< ObjectImp >::operator= ( const SharedPointer< ObjectImp > &  other)
inline

◆ operator==()

template<class ObjectImp >
bool ALUGrid::SharedPointer< ObjectImp >::operator== ( const SharedPointer< ObjectImp > &  other) const
inline

◆ ptr() [1/2]

template<class ObjectImp >
ReferenceCountedObjectType& ALUGrid::SharedPointer< ObjectImp >::ptr ( )
inlineprotected

◆ ptr() [2/2]

template<class ObjectImp >
const ReferenceCountedObjectType& ALUGrid::SharedPointer< ObjectImp >::ptr ( ) const
inlineprotected

◆ removeObject()

template<class ObjectImp >
void ALUGrid::SharedPointer< ObjectImp >::removeObject ( )
inline

◆ unique()

template<class ObjectImp >
bool ALUGrid::SharedPointer< ObjectImp >::unique ( ) const
inline

Member Data Documentation

◆ ptr_

template<class ObjectImp >
ReferenceCountedObjectType* ALUGrid::SharedPointer< ObjectImp >::ptr_
protected

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