typedef std::set<OperationThread*> osg::OperationQueue::OperationThreads |
typedef std::list< osg::ref_ptr<Operation> > osg::OperationQueue::Operations [protected] |
osg::OperationQueue::OperationQueue | ( | ) |
virtual osg::OperationQueue::~OperationQueue | ( | ) | [protected, virtual] |
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.
bool osg::OperationQueue::empty | ( | ) | const [inline] |
Return true if the operation queue is empty.
unsigned int osg::OperationQueue::getNumOperationsInQueue | ( | ) | const [inline] |
Return the num of pending operations that are sitting in the OperationQueue.
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.
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.
void osg::OperationQueue::runOperations | ( | Object * | callingObject = 0 |
) |
Run the operations.
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.
const OperationThreads& osg::OperationQueue::getOperationThreads | ( | ) | const [inline] |
Get the set of OperationThreads that are sharing this OperationQueue.
void osg::OperationQueue::addOperationThread | ( | OperationThread * | thread | ) | [protected] |
void osg::OperationQueue::removeOperationThread | ( | OperationThread * | thread | ) | [protected] |
friend class OperationThread [friend] |
Operations osg::OperationQueue::_operations [protected] |
Operations::iterator osg::OperationQueue::_currentOperationIterator [protected] |