openscenegraph
osg::BarrierOperation Struct Reference

#include <GraphicsThread>

Inheritance diagram for osg::BarrierOperation:
osg::Operation OpenThreads::Barrier osg::Referenced

Public Types

enum  PreBlockOp { NO_OPERATION , GL_FLUSH , GL_FINISH }

Public Member Functions

 BarrierOperation (int numThreads, PreBlockOp op=NO_OPERATION, bool keep=true)
virtual void release ()
virtual void operator() (Object *object)
Public Member Functions inherited from osg::Operation
 Operation (const std::string &name, bool keep)
void setName (const std::string &name)
const std::string & getName () const
void setKeep (bool keep)
bool getKeep () const
Public Member Functions inherited from osg::Referenced
 Referenced ()
 Referenced (bool threadSafeRefUnref)
 Referenced (const Referenced &)
Referencedoperator= (const Referenced &)
virtual void setThreadSafeRefUnref (bool)
bool getThreadSafeRefUnref () const
OpenThreads::MutexgetRefMutex () const
int ref () const
int unref () const
int unref_nodelete () const
int referenceCount () const
ObserverSetgetObserverSet () const
ObserverSetgetOrCreateObserverSet () const
void addObserver (Observer *observer) const
void removeObserver (Observer *observer) const
Public Member Functions inherited from OpenThreads::Barrier
 Barrier (int numThreads=0)
virtual ~Barrier ()
virtual void reset ()
virtual void block (unsigned int numThreads=0)
virtual int numThreadsCurrentlyBlocked ()
void invalidate ()

Public Attributes

PreBlockOp _preBlockOp

Additional Inherited Members

Static Public Member Functions inherited from osg::Referenced
static OpenThreads::MutexgetGlobalReferencedMutex ()
static void setDeleteHandler (DeleteHandler *handler)
static DeleteHandlergetDeleteHandler ()
Protected Member Functions inherited from osg::Operation
 Operation ()
virtual ~Operation ()
Protected Member Functions inherited from osg::Referenced
virtual ~Referenced ()
void signalObserversAndDelete (bool signalDelete, bool doDelete) const
void deleteUsingDeleteHandler () const
Protected Attributes inherited from osg::Operation
std::string _name
bool _keep
Protected Attributes inherited from osg::Referenced
OpenThreads::AtomicPtr _observerSet
OpenThreads::Atomic _refCount

Detailed Description

BarrierOperation allows one to synchronize multiple GraphicsThreads with each other.

Member Enumeration Documentation

◆ PreBlockOp

Enumerator
NO_OPERATION 
GL_FLUSH 
GL_FINISH 

Constructor & Destructor Documentation

◆ BarrierOperation()

osg::BarrierOperation::BarrierOperation ( int numThreads,
PreBlockOp op = NO_OPERATION,
bool keep = true )
inline

Member Function Documentation

◆ operator()()

virtual void osg::BarrierOperation::operator() ( Object * )
virtual

Do the actual task of this operation.

Implements osg::Operation.

◆ release()

virtual void osg::BarrierOperation::release ( )
virtual

if this operation is a barrier then release it.

Reimplemented from osg::Operation.

Member Data Documentation

◆ _preBlockOp

PreBlockOp osg::BarrierOperation::_preBlockOp

Referenced by BarrierOperation().


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