#include <OSGLock.h>
Inheritance diagram for osg::Lock:

Public Types | |
| typedef MPLockType | Type |
Public Member Functions | |
Lock | |
| *void | aquire (void) |
| void | release (void) |
| bool | request (void) |
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 Lock * | get (const Char8 *szName) |
| static Lock * | find (const Char8 *szName) |
| static Lock * | create (void) |
| static const MPLockType & | getClassType (void) |
Class Get | |
| *static const MPType & | getStaticType (void) |
| static UInt32 | getStaticTypeId (void) |
Protected Types | |
| typedef PthreadLockBase | Inherited |
Protected Member Functions | |
Constructors | |
| * | Lock (void) |
| Lock (const Char8 *szName, UInt32 uiId) | |
Destructor | |
| *virtual | ~Lock (void) |
Construction | |
| *bool | init (void) |
Destruction | |
| *void | shutdown (void) |
Static Protected Member Functions | |
Construction | |
| *static Lock * | create (const Char8 *szName, UInt32 uiId) |
Protected Attributes | |
| UInt32 | _uiLockId |
Class Specific | |
| Char8 * | _szName |
Static Protected Attributes | |
| static MPLockType | _type |
Private Member Functions | |
| Lock (const Lock &source) | |
| prohibit default function (move to 'public' if needed) | |
| void | operator= (const Lock &source) |
| prohibit default function (move to 'public' if needed) | |
Friends | |
| class | LockPool |
| class | MPFieldStore< Lock > |
Definition at line 381 of file OSGLock.h.
|
|
|
|
|
Reimplemented from osg::PThreadLockBase. |
|
|
Definition at line 483 of file OSGLock.cpp. Referenced by create(). 00483 : 00484 Inherited() 00485 { 00486 }
|
|
||||||||||||
|
Definition at line 488 of file OSGLock.cpp. 00488 : 00489 Inherited(szName, uiId) 00490 { 00491 }
|
|
|
Definition at line 495 of file OSGLock.cpp. References osg::ThreadManager::removeLock(), osg::PThreadLockBase::shutdown(), and osg::ThreadManager::the(). 00496 { 00497 ThreadManager::the()->removeLock(this); 00498 00499 shutdown(); 00500 }
|
|
|
|
|
|
Definition at line 427 of file OSGLock.cpp. References osg::ThreadManager::getLock(), and osg::ThreadManager::the(). Referenced by create(), osg::GroupMCastConnection::GroupMCastConnection(), osg::PointMCastConnection::PointMCastConnection(), and osg::ProxyGroup::startLoading(). 00428 { 00429 return ThreadManager::the()->getLock(szName, "OSGLock"); 00430 }
|
|
|
Definition at line 432 of file OSGLock.cpp. References osg::ThreadManager::findLock(), and osg::ThreadManager::the(). 00433 { 00434 return ThreadManager::the()->findLock(szName); 00435 }
|
|
|
Definition at line 437 of file OSGLock.cpp. References get(). 00438 { 00439 return Lock::get(NULL); 00440 }
|
|
|
Definition at line 442 of file OSGLock.cpp. References _type. Referenced by osg::ThreadManager::init(). 00443 { 00444 return _type; 00445 }
|
|
|
|
|
Reimplemented from osg::PThreadLockBase. Definition at line 459 of file OSGLock.cpp. References osg::PThreadLockBase::request(). Referenced by osg::LockPool::request(). 00460 { 00461 return Inherited::request(); 00462 }
|
|
||||||||||||
|
Definition at line 466 of file OSGLock.cpp. References osg::PThreadLockBase::init(), and Lock(). 00467 { 00468 Lock *returnValue = NULL; 00469 00470 returnValue = new Lock(szName, uiId); 00471 00472 if(returnValue->init() == false) 00473 { 00474 delete returnValue; 00475 returnValue = NULL; 00476 } 00477 00478 return returnValue; 00479 }
|
|
|
|
|
|
Definition at line 115 of file OSGLock.cpp. References osg::PThreadLockBase::_pLowLevelLock. Referenced by create(), and osg::LockPool::init(). 00116 { 00117 pthread_mutexattr_t lockAttr; 00118 00119 pthread_mutexattr_init(&lockAttr); 00120 00121 pthread_mutexattr_settype(&lockAttr, PTHREAD_MUTEX_RECURSIVE); 00122 00123 pthread_mutex_init(&(_pLowLevelLock), &lockAttr); 00124 00125 return true; 00126 }
|
|
|
Definition at line 130 of file OSGLock.cpp. References osg::PThreadLockBase::_pLowLevelLock. Referenced by osg::LockPool::shutdown(), and ~Lock(). 00131 { 00132 pthread_mutex_destroy(&(_pLowLevelLock)); 00133 }
|
|
|
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 }
|
|
|
Reimplemented from osg::PThreadLockBase. |
|
|
|
|
|
Reimplemented from osg::MPBase. Referenced by getClassType(). |
|
|
|
|
|
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