OpenSceneGraph  3.0.1
Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Friends
osg::OperationQueue Class Reference
Inheritance diagram for osg::OperationQueue:
Inheritance graph
[legend]

List of all members.

Public Types

typedef std::set
< OperationThread * > 
OperationThreads

Public Member Functions

 OperationQueue ()
osg::ref_ptr< OperationgetNextOperation (bool blockIfEmpty=false)
 Get the next operation from the operation queue.
bool empty ()
 Return true if the operation queue is empty.
unsigned int getNumOperationsInQueue ()
 Return the num of pending operations that are sitting in the OperationQueue.
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.
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.
void runOperations (Object *callingObject=0)
 Run the operations.
void releaseAllOperations ()
 Call release on all operations.
void releaseOperationsBlock ()
 Release operations block that is used to block threads that are waiting on an empty operations queue.
const OperationThreadsgetOperationThreads () const
 Get the set of OperationThreads that are sharing this OperationQueue.

Protected Types

typedef std::list
< osg::ref_ptr< Operation > > 
Operations

Protected Member Functions

virtual ~OperationQueue ()
void addOperationThread (OperationThread *thread)
void removeOperationThread (OperationThread *thread)

Protected Attributes

OpenThreads::Mutex _operationsMutex
osg::ref_ptr< osg::RefBlock_operationsBlock
Operations _operations
Operations::iterator _currentOperationIterator
OperationThreads _operationThreads

Friends

class OperationThread

Member Typedef Documentation

typedef std::list< osg::ref_ptr<Operation> > osg::OperationQueue::Operations [protected]

Constructor & Destructor Documentation

virtual osg::OperationQueue::~OperationQueue ( ) [protected, virtual]

Member Function Documentation

Add operation to end of OperationQueue, this will be executed by the operation thread once this operation gets to the head of the queue.

Return true if the operation queue is empty.

Get the next operation from the operation queue.

Return null ref_ptr<> if no operations are left in queue.

Return the num of pending operations that are sitting in the OperationQueue.

Get the set of OperationThreads that are sharing this OperationQueue.

Call release on all operations.

Release operations block that is used to block threads that are waiting on an empty operations queue.

Remove operation from OperationQueue.

void osg::OperationQueue::remove ( const std::string &  name)

Remove named operation from OperationQueue.

Remove all operations from OperationQueue.

Run the operations.


Friends And Related Function Documentation

friend class OperationThread [friend]

Member Data Documentation

Operations::iterator osg::OperationQueue::_currentOperationIterator [protected]
OpenThreads::Mutex osg::OperationQueue::_operationsMutex [protected]

The documentation for this class was generated from the following file:

osg logo
Generated at Mon Jun 4 2012 14:27:13 for the OpenSceneGraph by doxygen 1.8.0.