![]() |
OpenSceneGraph
|

Public Types | |
| typedef std::set< OperationThread * > | OperationThreads |
Public Member Functions | |
| OperationQueue () | |
| osg::ref_ptr< Operation > | getNextOperation (bool blockIfEmpty=false) |
| Get the next operation from the operation queue. More... | |
| bool | empty () |
| Return true if the operation queue is empty. More... | |
| unsigned int | getNumOperationsInQueue () |
| Return the num of pending operations that are sitting in the OperationQueue. More... | |
| void | add (Operation *operation) |
| Add operation to end of OperationQueue, this will be executed by the operation thread once this operation gets to the head of the queue. More... | |
| void | remove (Operation *operation) |
| Remove operation from OperationQueue. More... | |
| void | remove (const std::string &name) |
| Remove named operation from OperationQueue. More... | |
| void | removeAllOperations () |
| Remove all operations from OperationQueue. More... | |
| void | runOperations (Object *callingObject=0) |
| Run the operations. More... | |
| void | releaseAllOperations () |
| Call release on all operations. More... | |
| void | releaseOperationsBlock () |
| Release operations block that is used to block threads that are waiting on an empty operations queue. More... | |
| const OperationThreads & | getOperationThreads () const |
| Get the set of OperationThreads that are sharing this OperationQueue. More... | |
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. More... | |
| 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. More... | |
| bool | getThreadSafeRefUnref () const |
| Get whether a mutex is used to ensure ref() and unref() are thread safe. More... | |
| OpenThreads::Mutex * | getRefMutex () const |
| Get the mutex used to ensure thread safety of ref()/unref(). More... | |
| int | ref () const |
| Increment the reference count by one, indicating that this object has another pointer which is referencing it. More... | |
| int | unref () const |
| Decrement the reference count by one, indicating that a pointer to this object is no longer referencing it. More... | |
| int | unref_nodelete () const |
| Decrement the reference count by one, indicating that a pointer to this object is no longer referencing it. More... | |
| int | referenceCount () const |
| Return the number of pointers currently referencing this object. More... | |
| ObserverSet * | getObserverSet () const |
| Get the ObserverSet if one is attached, otherwise return NULL. More... | |
| ObserverSet * | getOrCreateObserverSet () const |
| Get the ObserverSet if one is attached, otherwise create an ObserverSet, attach it, then return this newly created ObserverSet. More... | |
| void | addObserver (Observer *observer) const |
| Add a Observer that is observing this object, notify the Observer when this object gets deleted. More... | |
| void | removeObserver (Observer *observer) const |
| Remove Observer that is observing this object. More... | |
Protected Types | |
| typedef std::list< osg::ref_ptr< Operation > > | Operations |
Protected Member Functions | |
| virtual | ~OperationQueue () |
| void | addOperationThread (OperationThread *thread) |
| void | removeOperationThread (OperationThread *thread) |
Protected Member Functions inherited from osg::Referenced | |
| virtual | ~Referenced () |
| void | signalObserversAndDelete (bool signalDelete, bool doDelete) const |
| void | deleteUsingDeleteHandler () const |
Protected Attributes | |
| OpenThreads::Mutex | _operationsMutex |
| osg::ref_ptr< osg::RefBlock > | _operationsBlock |
| Operations | _operations |
| Operations::iterator | _currentOperationIterator |
| OperationThreads | _operationThreads |
Protected Attributes inherited from osg::Referenced | |
| OpenThreads::AtomicPtr | _observerSet |
| OpenThreads::Atomic | _refCount |
Friends | |
| class | OperationThread |
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. More... | |
| static void | setDeleteHandler (DeleteHandler *handler) |
| Set a DeleteHandler to which deletion of all referenced counted objects will be delegated. More... | |
| static DeleteHandler * | getDeleteHandler () |
| Get a DeleteHandler. More... | |
|
protected |
| typedef std::set<OperationThread*> osg::OperationQueue::OperationThreads |
| osg::OperationQueue::OperationQueue | ( | ) |
|
protectedvirtual |
| void osg::OperationQueue::add | ( | Operation * | operation | ) |
Add operation to end of OperationQueue, this will be executed by the operation thread once this operation gets to the head of the queue.
|
protected |
| bool osg::OperationQueue::empty | ( | ) |
Return true if the operation queue is empty.
| osg::ref_ptr<Operation> osg::OperationQueue::getNextOperation | ( | bool | blockIfEmpty = false | ) |
Get the next operation from the operation queue.
Return null ref_ptr<> if no operations are left in queue.
| unsigned int osg::OperationQueue::getNumOperationsInQueue | ( | ) |
Return the num of pending operations that are sitting in the OperationQueue.
|
inline |
Get the set of OperationThreads that are sharing this OperationQueue.
| void osg::OperationQueue::releaseAllOperations | ( | ) |
Call release on all operations.
| void osg::OperationQueue::releaseOperationsBlock | ( | ) |
Release operations block that is used to block threads that are waiting on an empty operations queue.
| void osg::OperationQueue::remove | ( | Operation * | operation | ) |
Remove operation from OperationQueue.
| void osg::OperationQueue::remove | ( | const std::string & | name | ) |
Remove named operation from OperationQueue.
| void osg::OperationQueue::removeAllOperations | ( | ) |
Remove all operations from OperationQueue.
|
protected |
| void osg::OperationQueue::runOperations | ( | Object * | callingObject = 0 | ) |
Run the operations.
|
friend |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
1.8.13