1 #ifndef OBJECTS_OBJMGR_IMPL___TSE_LOCK__HPP
2 #define OBJECTS_OBJMGR_IMPL___TSE_LOCK__HPP
64 if ( m_Info != lock.
m_Info ) {
73 return GetPointerOrNull();
78 return m_Info == lock.
m_Info;
82 return m_Info != lock.
m_Info;
86 return m_Info < lock.
m_Info;
92 (m_Info.GetPointerOrNull());
97 (m_Info.GetNonNullPointer());
101 return *GetNonNullPointer();
105 return GetNonNullPointer();
130 if ( GetPointerOrNull() !=
info ) {
166 return m_TSE_LockSet.begin();
170 return m_TSE_LockSet.end();
175 return m_TSE_LockSet.empty();
179 return m_TSE_LockSet.size();
void x_Assign(CObject_id &dst, const CObject_id &src)
TTSE_LockSet::const_iterator const_iterator
TTSE_LockSet m_TSE_LockSet
const_iterator begin(void) const
const_iterator end(void) const
map< const CTSE_Info *, CTSE_Lock > TTSE_LockSet
const CTSE_Info * operator->(void) const
bool operator==(const CTSE_Lock &lock) const
bool operator!=(const CTSE_Lock &lock) const
const CTSE_Info & operator*(void) const
CTSE_Lock(const CTSE_LoadLock &load_lock)
CConstRef< CObject > m_Info
CTSE_Lock(const CTSE_Lock &lock)
CTSE_Lock & operator=(const CTSE_Lock &lock)
const CTSE_Info * GetPointerOrNull(void) const
void x_Assign(const CTSE_Lock &lock)
bool operator<(const CTSE_Lock &lock) const
bool Lock(const CTSE_Info *info)
const CTSE_Info * GetNonNullPointer(void) const
container_type::const_iterator const_iterator
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define END_SCOPE(ns)
End the previously defined scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
#define BEGIN_SCOPE(ns)
Define a new scope.
#define NCBI_XOBJMGR_EXPORT
void Swap(T &a, T &b) RAPIDJSON_NOEXCEPT
Custom swap() to avoid dependency on C++ <algorithm> header.
static string x_Lock(EMT_Lock how)
Portable reference counted smart and weak pointers using CWeakRef, CRef, CObject and CObjectEx.