Field3D
|
#include <RefCount.h>
Public Types | |
typedef boost::intrusive_ptr< RefBase > | Ptr |
typedef boost::weak_ptr< RefBase > | WeakPtr |
Public Member Functions | |
void | ref () const |
Used by boost::intrusive_pointer. | |
size_t | refcnt () |
Used by boost::intrusive_pointer. | |
void | unref () const |
Used by boost::intrusive_pointer. | |
WeakPtr | weakPtr () const |
Constructors, destructors, copying | |
RefBase () | |
RefBase (const RefBase &) | |
Copy constructor. | |
RefBase & | operator= (const RefBase &) |
Assignment operator. | |
virtual | ~RefBase () |
Destructor. | |
Private Attributes | |
boost::detail::atomic_count | m_counter |
For boost intrusive pointer. | |
boost::shared_ptr< RefBase > | m_sharedPtr |
For use by the FieldCache only: The shared pointer lets us see if this object is still alive. | |
RTTI replacement | |
| |
virtual bool | checkRTTI (const char *typenameStr)=0 |
This function is only implemented by concrete classes and triggers the actual RTTI check through matchRTTI();. | |
bool | matchRTTI (const char *typenameStr) |
Performs a check to see if the given typename string matches this class' This needs to be implemented in -all- subclasses, even abstract ones. | |
static const char * | staticClassType () |
Definition at line 106 of file RefCount.h.
typedef boost::intrusive_ptr<RefBase> RefBase::Ptr |
Definition at line 112 of file RefCount.h.
typedef boost::weak_ptr<RefBase> RefBase::WeakPtr |
Definition at line 113 of file RefCount.h.
|
inline |
Definition at line 120 of file RefCount.h.
References m_counter, and m_sharedPtr.
Referenced by FieldBase::FieldBase(), FieldBase::FieldBase(), FieldIO::FieldIO(), FieldMapping::FieldMapping(), FieldMapping::FieldMapping(), FieldMappingIO::FieldMappingIO(), operator=(), File::Partition::Partition(), FileHDF5::Partition::Partition(), and RefBase().
|
inline |
Copy constructor.
Definition at line 128 of file RefCount.h.
References m_counter, m_sharedPtr, and RefBase().
|
inlinevirtual |
Assignment operator.
Definition at line 134 of file RefCount.h.
References RefBase().
Referenced by MIPField< Field_T >::operator=(), and SparseField< Data_T >::operator=().
|
inline |
Used by boost::intrusive_pointer.
Definition at line 146 of file RefCount.h.
References m_counter.
Referenced by intrusive_ptr_release().
|
inline |
Used by boost::intrusive_pointer.
Definition at line 150 of file RefCount.h.
References m_counter.
Referenced by intrusive_ptr_add_ref().
|
inline |
Used by boost::intrusive_pointer.
Definition at line 159 of file RefCount.h.
References m_counter.
Referenced by intrusive_ptr_release().
|
inline |
|
pure virtual |
This function is only implemented by concrete classes and triggers the actual RTTI check through matchRTTI();.
|
inline |
Performs a check to see if the given typename string matches this class' This needs to be implemented in -all- subclasses, even abstract ones.
Definition at line 193 of file RefCount.h.
References staticClassType().
|
inlinestatic |
Definition at line 200 of file RefCount.h.
Referenced by matchRTTI().
|
mutableprivate |
|
private |
For use by the FieldCache only: The shared pointer lets us see if this object is still alive.
Definition at line 220 of file RefCount.h.