Public Member Functions |
| TemplateSerializer (const char *name, P def) |
virtual bool | read (InputStream &is, osg::Object &obj)=0 |
virtual bool | write (OutputStream &os, const osg::Object &obj)=0 |
virtual const std::string & | getName () const |
| BaseSerializer () |
| Referenced () |
| Referenced (bool threadSafeRefUnref) |
| Referenced (const Referenced &) |
Referenced & | operator= (const Referenced &) |
virtual void | setThreadSafeRefUnref (bool threadSafe) |
| Set whether to use a mutex to ensure ref() and unref() are thread safe.
|
bool | getThreadSafeRefUnref () const |
| Get whether a mutex is used to ensure ref() and unref() are thread safe.
|
OpenThreads::Mutex * | getRefMutex () const |
| Get the mutex used to ensure thread safety of ref()/unref().
|
int | ref () const |
| Increment the reference count by one, indicating that this object has another pointer which is referencing it.
|
int | unref () const |
| Decrement the reference count by one, indicating that a pointer to this object is referencing it.
|
int | unref_nodelete () const |
| Decrement the reference count by one, indicating that a pointer to this object is referencing it.
|
int | referenceCount () const |
| Return the number of pointers currently referencing this object.
|
ObserverSet * | getObserverSet () const |
| Get the ObserverSet if one is attached, otherwise return NULL.
|
ObserverSet * | getOrCreateObserverSet () const |
| Get the ObserverSet if one is attached, otherwise create an ObserverSet, attach it, then return this newly created ObserverSet.
|
void | addObserver (Observer *observer) const |
| Add a Observer that is observing this object, notify the Observer when this object gets deleted.
|
void | removeObserver (Observer *observer) const |
| Remove Observer that is observing this object.
|
Additional Inherited Members |
enum | Type {
RW_UNDEFINED = 0,
RW_USER,
RW_OBJECT,
RW_IMAGE,
RW_LIST,
RW_BOOL,
RW_CHAR,
RW_UCHAR,
RW_SHORT,
RW_USHORT,
RW_INT,
RW_UINT,
RW_FLOAT,
RW_DOUBLE,
RW_VEC2F,
RW_VEC2D,
RW_VEC3F,
RW_VEC3D,
RW_VEC4F,
RW_VEC4D,
RW_QUAT,
RW_PLANE,
RW_MATRIXF,
RW_MATRIXD,
RW_MATRIX,
RW_GLENUM,
RW_STRING,
RW_ENUM
} |
static OpenThreads::Mutex * | getGlobalReferencedMutex () |
| Get the optional global Referenced mutex, this can be shared between all osg::Referenced.
|
static void | setThreadSafeReferenceCounting (bool enableThreadSafeReferenceCounting) |
| Set whether reference counting should use a mutex for thread safe reference counting.
|
static bool | getThreadSafeReferenceCounting () |
| Get whether reference counting is active.
|
static void | setDeleteHandler (DeleteHandler *handler) |
| Set a DeleteHandler to which deletion of all referenced counted objects will be delegated.
|
static DeleteHandler * | getDeleteHandler () |
| Get a DeleteHandler.
|
virtual | ~Referenced () |
void | signalObserversAndDelete (bool signalDelete, bool doDelete) const |
void | deleteUsingDeleteHandler () const |