#include <OSGBarrier.h>
Inheritance diagram for osg::Barrier:

Public Types | |
| typedef MPBarrierType | Type |
Public Member Functions | |
Enter | |
| *void | enter (void) |
| void | enter (UInt32 uiNumWaitFor) |
Get | |
| *virtual MPType & | getType (void) |
| virtual const MPType & | getType (void) const |
| UInt32 | getTypeId (void) |
| const Char8 * | getCName (void) const |
Reference Counting | |
| *void | addRef (void) |
| void | subRef (void) |
| Int32 | getRefCount (void) |
Static Public Member Functions | |
Get | |
| *static Barrier * | get (const Char8 *szName) |
| static Barrier * | find (const Char8 *szName) |
| static Barrier * | create (void) |
| static const MPBarrierType & | getClassType (void) |
Class Get | |
| *static const MPType & | getStaticType (void) |
| static UInt32 | getStaticTypeId (void) |
Protected Types | |
| typedef PthreadBarrierBase | Inherited |
Protected Member Functions | |
Constructors | |
| * | Barrier (const Char8 *szName, UInt32 uiId) |
Destructor | |
| *virtual | ~Barrier (void) |
Construction | |
| *bool | init (void) |
Destruction | |
| *void | shutdown (void) |
Set | |
| *void | setNumWaitFor (UInt32 uiNumWaitFor) |
Static Protected Member Functions | |
Construction | |
| *static Barrier * | create (const Char8 *szName, UInt32 uiId) |
Protected Attributes | |
| UInt32 | _uiBarrierId |
| volatile UInt32 | _uiNumWaitFor |
Class Specific | |
| Char8 * | _szName |
Static Protected Attributes | |
| static MPBarrierType | _type |
Private Member Functions | |
| Barrier (const Barrier &source) | |
| prohibit default function (move to 'public' if needed) | |
| void | operator= (const Barrier &source) |
| prohibit default function (move to 'public' if needed) | |
Friends | |
| class | MPFieldStore< Barrier > |
Definition at line 362 of file OSGBarrier.h.
|
|
Definition at line 368 of file OSGBarrier.h. |
|
|
Reimplemented from osg::PThreadBarrierBase. Definition at line 394 of file OSGBarrier.h. |
|
||||||||||||
|
Definition at line 275 of file OSGBarrier.cpp. Referenced by create(). 00276 : 00277 Inherited(szName, uiId) 00278 { 00279 }
|
|
|
Definition at line 283 of file OSGBarrier.cpp. References osg::ThreadManager::removeBarrier(), osg::PThreadBarrierBase::shutdown(), and osg::ThreadManager::the(). 00284 { 00285 ThreadManager::the()->removeBarrier(this); 00286 00287 shutdown(); 00288 }
|
|
|
|
|
|
Definition at line 292 of file OSGBarrier.cpp. References osg::ThreadManager::getBarrier(), and osg::ThreadManager::the(). Referenced by create(), and osg::DgramQueue::DgramQueue(). 00293 { 00294 return ThreadManager::the()->getBarrier(szName, "OSGBarrier"); 00295 }
|
|
|
Definition at line 297 of file OSGBarrier.cpp. References osg::ThreadManager::findBarrier(), and osg::ThreadManager::the(). 00298 { 00299 return ThreadManager::the()->findBarrier(szName); 00300 }
|
|
|
Definition at line 164 of file OSGBarrier.inl. References get(). 00165 { 00166 return Barrier::get(NULL); 00167 }
|
|
|
Definition at line 170 of file OSGBarrier.inl. References _type. Referenced by osg::ThreadManager::init(). 00171 { 00172 return _type; 00173 }
|
|
|
Reimplemented from osg::PThreadBarrierBase. Definition at line 179 of file OSGBarrier.inl. References osg::PThreadBarrierBase::enter(). Referenced by osg::DgramQueue::get(), osg::DgramQueue::put(), and osg::DgramQueue::wait(). 00180 { 00181 Inherited::enter(); 00182 }
|
|
|
Reimplemented from osg::PThreadBarrierBase. Definition at line 185 of file OSGBarrier.inl. References osg::PThreadBarrierBase::enter(). 00186 { 00187 Inherited::enter(uiNumWaitFor); 00188 }
|
|
||||||||||||
|
Definition at line 305 of file OSGBarrier.cpp. References Barrier(), and osg::PThreadBarrierBase::init(). 00307 { 00308 Barrier *returnValue = NULL; 00309 00310 returnValue = new Barrier(szName, uiId); 00311 00312 if(returnValue->init() == false) 00313 { 00314 delete returnValue; 00315 returnValue = NULL; 00316 } 00317 00318 return returnValue; 00319 }
|
|
|
|
|
|
Definition at line 105 of file OSGBarrier.cpp. References osg::PThreadBarrierBase::_pLockOne, osg::PThreadBarrierBase::_pWakeupCondition, osg::PThreadBarrierBase::_uiCount, and osg::PThreadBarrierBase::_uiCurrentCond. Referenced by create(). 00106 { 00107 pthread_cond_init (&(_pWakeupCondition[0]), NULL); 00108 pthread_cond_init (&(_pWakeupCondition[1]), NULL); 00109 pthread_mutex_init(&(_pLockOne), NULL); 00110 00111 _uiCount = 0; 00112 _uiCurrentCond = 0; 00113 00114 return true; 00115 }
|
|
|
Definition at line 119 of file OSGBarrier.cpp. References osg::PThreadBarrierBase::_pLockOne, and osg::PThreadBarrierBase::_pWakeupCondition. Referenced by ~Barrier(). 00120 { 00121 pthread_cond_destroy (&(_pWakeupCondition[0])); 00122 pthread_cond_destroy (&(_pWakeupCondition[1])); 00123 pthread_mutex_destroy(&(_pLockOne)); 00124 }
|
|
|
Definition at line 42 of file OSGBarrier.inl. References osg::BarrierCommonBase::_uiNumWaitFor. 00043 { 00044 _uiNumWaitFor = uiNumWaitFor; 00045 }
|
|
|
Definition at line 253 of file OSGMPBase.cpp. References osg::MPBase::_type. 00254 { 00255 return _type; 00256 }
|
|
|
Definition at line 259 of file OSGMPBase.cpp.
|
|
|
Definition at line 265 of file OSGMPBase.cpp. References osg::MPBase::_type. Referenced by osg::MPBase::getTypeId(). 00266 { 00267 return _type; 00268 }
|
|
|
Definition at line 271 of file OSGMPBase.cpp. References osg::MPBase::_type. 00272 { 00273 return _type; 00274 }
|
|
|
Definition at line 277 of file OSGMPBase.cpp. References osg::TypeBase::getId(), and osg::MPBase::getType().
|
|
|
Definition at line 283 of file OSGMPBase.cpp. References osg::MPBase::_szName. 00284 { 00285 return _szName; 00286 }
|
|
|
Definition at line 64 of file OSGMemoryObject.cpp. References osg::MemoryObject::_refCount. Referenced by osg::SharedObjectHandler::getSharedObject(), and osg::SharedObjectHandler::initialize(). 00065 { 00066 _refCount++; 00067 }
|
|
|
Definition at line 69 of file OSGMemoryObject.cpp. References osg::MemoryObject::_refCount.
|
|
|
Definition at line 77 of file OSGMemoryObject.cpp. References osg::MemoryObject::_refCount. 00078 { 00079 return _refCount; 00080 }
|
|
|
Definition at line 424 of file OSGBarrier.h. |
|
|
Reimplemented from osg::MPBase. Referenced by getClassType(). |
|
|
Definition at line 86 of file OSGBarrier.h. |
|
|
Definition at line 87 of file OSGBarrier.h. Referenced by osg::PThreadBarrierBase::enter(), and osg::BarrierCommonBase::setNumWaitFor(). |
|
|
Definition at line 406 of file OSGMPBase.h. Referenced by osg::MPBase::getCName(), osg::LockPool::init(), osg::MPBase::MPBase(), osg::BasePThreadBase::print(), and osg::MPBase::~MPBase(). |
1.4.3