#include <guard.hpp>
Inheritance diagram for CGuard< Resource, Lock, Unlock >:


Definition at line 100 of file guard.hpp.
Public Types | |
| typedef Resource | resource_type |
| typedef resource_type * | resource_ptr |
| typedef Lock | lock_type |
| typedef Unlock | unlock_type |
| typedef CGuard< Resource, Lock, Unlock > | TThisType |
Public Member Functions | |
| CGuard (EEmptyGuard) | |
| CGuard (resource_type &resource) | |
| This constructor locks the resource passed. | |
| CGuard (EEmptyGuard, const lock_type &lock, const unlock_type &unlock=unlock_type()) | |
| CGuard (resource_type &resource, const lock_type &lock, const unlock_type &unlock=unlock_type()) | |
| This constructor locks the resource passed. | |
| ~CGuard () | |
| Destructor releases the resource. | |
| void | Release () |
| Manually force the resource to be released. | |
| void | Guard (resource_type &resource) |
| Manually force the guard to protect some other resource. | |
Protected Member Functions | |
| resource_ptr & | GetResource (void) |
| lock_type & | GetLock (void) |
| unlock_type & | GetUnlock (void) |
Private Member Functions | |
| CGuard (const CGuard< resource_type, lock_type, unlock_type > &) | |
| void | operator= (const CGuard< resource_type, lock_type, unlock_type > &) |
Private Attributes | |
| pair_base_member< lock_type, pair_base_member< unlock_type, resource_ptr > > | m_Data |
| Maintain a pointer to the original resource that is being guarded. | |
|
|||||
|
|
|
|||||
|
|
|
|||||
|
|
|
|||||
|
|
|
|||||
|
|
|
||||||||||
|
|
|
||||||||||
|
This constructor locks the resource passed.
|
|
||||||||||||||||||||
|
|
|
||||||||||||||||||||
|
This constructor locks the resource passed.
|
|
|||||||||
|
Destructor releases the resource.
|
|
||||||||||
|
|
|
||||||||||
|
Definition at line 167 of file guard.hpp. Referenced by CGuard< SSystemMutex >::Guard(). |
|
||||||||||
|
Definition at line 163 of file guard.hpp. Referenced by CGuard< SSystemMutex >::Guard(), and CGuard< SSystemMutex >::Release(). |
|
||||||||||
|
Definition at line 171 of file guard.hpp. Referenced by CGuard< SSystemMutex >::Release(). |
|
||||||||||
|
Manually force the guard to protect some other resource.
Definition at line 155 of file guard.hpp. Referenced by CGuard< SSystemMutex >::CGuard(), CInitGuard::CInitGuard(), CNCMMDBCache::DestroyOnePage(), and CBlockingQueue< TRequest >::x_WaitForPredicate(). |
|
||||||||||
|
|
|
|||||||||
|
Manually force the resource to be released.
Reimplemented in CThreadPool_Guard. Definition at line 146 of file guard.hpp. Referenced by CObjectManager::AcquireDataLoader(), CObjectManager::AcquireSharedBioseq(), CObjectManager::AcquireSharedSeq_annot(), CObjectManager::AcquireSharedSeq_entry(), CNCMMDBCache::DestroyOnePage(), CGuard< SSystemMutex >::Guard(), CTSE_LoadLockGuard::Release(), CObjectManager::ReleaseDataSource(), CObjectManager::RevokeDataLoader(), CAsn2Asn::RunAsn2Asn(), CScheduler_MT::x_SchedQueueChanged(), CBlockingQueue< TRequest >::x_WaitForPredicate(), and CGuard< SSystemMutex >::~CGuard(). |
|
|||||
|
Maintain a pointer to the original resource that is being guarded.
Definition at line 180 of file guard.hpp. Referenced by CGuard< SSystemMutex >::GetLock(), CGuard< SSystemMutex >::GetResource(), and CGuard< SSystemMutex >::GetUnlock(). |
1.4.6
Modified on Mon Dec 07 16:23:13 2009 by modify_doxy.py rev. 173732