#include <RefCount.h>
|
boost::detail::atomic_count | m_counter |
| For boost intrusive pointer.
|
|
|
- Note
- A note on why the RTTI replacement is needed: RTTI calls fail once the object crosses the dso boundary. We revert to using simple string checks which is more expensive but at least works once the dso is used in Houdini, etc. Use field_dynamic_cast<> for any RefBase subclass instead of dynamic_cast<>.
|
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 * | classType () |
|
Definition at line 90 of file RefCount.h.
RefBase::RefBase |
( |
const RefBase & |
| ) |
|
|
inline |
virtual RefBase::~RefBase |
( |
| ) |
|
|
inlinevirtual |
size_t RefBase::refcnt |
( |
| ) |
|
|
inline |
void RefBase::ref |
( |
| ) |
const |
|
inline |
Used by boost::intrusive_pointer.
Definition at line 129 of file RefCount.h.
References m_counter.
Referenced by intrusive_ptr_add_ref().
{
#ifndef FIELD3D_USE_ATOMIC_COUNT
boost::mutex::scoped_lock lock(m_refMutex);
#endif
}
void RefBase::unref |
( |
| ) |
const |
|
inline |
Used by boost::intrusive_pointer.
Definition at line 138 of file RefCount.h.
References m_counter.
Referenced by intrusive_ptr_release().
{
#ifndef FIELD3D_USE_ATOMIC_COUNT
boost::mutex::scoped_lock lock(m_refMutex);
#endif
}
virtual bool RefBase::checkRTTI |
( |
const char * |
typenameStr | ) |
|
|
pure virtual |
This function is only implemented by concrete classes and triggers the actual RTTI check through matchRTTI();.
bool RefBase::matchRTTI |
( |
const char * |
typenameStr | ) |
|
|
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 167 of file RefCount.h.
References classType().
{
return true;
return false;
}
static const char* RefBase::classType |
( |
| ) |
|
|
inlinestatic |
boost::detail::atomic_count RefBase::m_counter |
|
mutableprivate |
The documentation for this class was generated from the following file: