OpenSceneGraph 3.6.5
|
OperationThread is a helper class for running Operation within a single thread. More...
#include <OperationThread>
Public Member Functions | |
OperationThread () | |
void | setParent (Object *parent) |
Object * | getParent () |
const Object * | getParent () const |
void | setOperationQueue (OperationQueue *opq) |
Set the OperationQueue. | |
OperationQueue * | getOperationQueue () |
Get the OperationQueue. | |
const OperationQueue * | getOperationQueue () const |
Get the const OperationQueue. | |
void | add (Operation *operation) |
Add operation to end of OperationQueue, this will be executed by the graphics thread once this operation gets to the head of the queue. | |
void | remove (Operation *operation) |
Remove operation from OperationQueue. | |
void | remove (const std::string &name) |
Remove named operation from OperationQueue. | |
void | removeAllOperations () |
Remove all operations from OperationQueue. | |
osg::ref_ptr< Operation > | getCurrentOperation () |
Get the operation currently being run. | |
virtual void | run () |
Run does the opertion thread run loop. | |
void | setDone (bool done) |
bool | getDone () const |
virtual int | cancel () |
Cancel this graphics thread. | |
Public Member Functions inherited from osg::Referenced | |
Referenced () | |
Referenced (bool threadSafeRefUnref) | |
Deprecated, Referenced is now always uses thread safe ref/unref, use default Referenced() constructor instead. | |
Referenced (const Referenced &) | |
Referenced & | operator= (const Referenced &) |
virtual void | setThreadSafeRefUnref (bool) |
Deprecated, Referenced is always theadsafe so there method now has no effect and does not need to be called. | |
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 no longer referencing it. | |
int | unref_nodelete () const |
Decrement the reference count by one, indicating that a pointer to this object is no longer 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. |
Protected Member Functions | |
virtual | ~OperationThread () |
Protected Member Functions inherited from osg::Referenced | |
virtual | ~Referenced () |
void | signalObserversAndDelete (bool signalDelete, bool doDelete) const |
void | deleteUsingDeleteHandler () const |
Protected Attributes | |
observer_ptr< Object > | _parent |
OpenThreads::Atomic | _done |
OpenThreads::Mutex | _threadMutex |
osg::ref_ptr< OperationQueue > | _operationQueue |
osg::ref_ptr< Operation > | _currentOperation |
Protected Attributes inherited from osg::Referenced | |
OpenThreads::AtomicPtr | _observerSet |
OpenThreads::Atomic | _refCount |
Additional Inherited Members | |
Static Public Member Functions inherited from osg::Referenced | |
static OpenThreads::Mutex * | getGlobalReferencedMutex () |
Get the optional global Referenced mutex, this can be shared between all osg::Referenced. | |
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. |
OperationThread is a helper class for running Operation within a single thread.
osg::OperationThread::OperationThread | ( | ) |
|
protectedvirtual |
void osg::OperationThread::add | ( | Operation * | operation | ) |
Add operation to end of OperationQueue, this will be executed by the graphics thread once this operation gets to the head of the queue.
|
virtual |
Cancel this graphics thread.
|
inline |
Get the operation currently being run.
References _currentOperation.
|
inline |
References _done.
|
inline |
Get the OperationQueue.
References _operationQueue.
|
inline |
Get the const OperationQueue.
References _operationQueue.
void osg::OperationThread::remove | ( | const std::string & | name | ) |
Remove named operation from OperationQueue.
void osg::OperationThread::remove | ( | Operation * | operation | ) |
Remove operation from OperationQueue.
void osg::OperationThread::removeAllOperations | ( | ) |
Remove all operations from OperationQueue.
|
virtual |
Run does the opertion thread run loop.
Reimplemented in osg::GraphicsThread.
void osg::OperationThread::setDone | ( | bool | done | ) |
void osg::OperationThread::setOperationQueue | ( | OperationQueue * | opq | ) |
Set the OperationQueue.
|
protected |
Referenced by getCurrentOperation().
|
protected |
Referenced by getDone().
|
protected |
Referenced by getOperationQueue(), and getOperationQueue().
|
protected |
Referenced by getParent(), getParent(), and setParent().
|
protected |
![]() | Generated at Sun Jul 20 2025 00:00:00 for the OpenSceneGraph by doxygen 1.14.0. |