38#elif defined (__GNUC__) && (defined (__linux__) || defined (__APPLE__))
47# error No/unknown platform thread support
50namespace GENAPI_NAMESPACE
90 CRITICAL_SECTION m_csObject;
91#elif defined (__GNUC__) && (defined (__linux__) || defined (__APPLE__))
93 pthread_mutex_t m_mtxObject;
97# error No/unknown platform thread support
113 int64_t GetLockCount();
116 int64_t GetRecursionCount();
118# elif defined (__GNUC__) && (defined (__linux__) || defined (__APPLE__) || defined(VXWORKS))
121# error No/unknown platform support
141 AutoLock(
CLock& lock)
153 AutoLock& operator=(
const AutoLock&);
154 AutoLock(
const AutoLock&);
166 template<
class Object>
170 mutable CLock m_Lock;
185 m_Object.m_Lock.
Lock();
198 return Lock( *
this );
Standard GenICam Exceptions.
declspec's to be used for GenApi Windows dll
virtual IBoolean & operator=(bool Value)
Set node value.
Definition IBoolean.h:62
A lock class.
Definition Synch.h:62
bool TryLock()
tries to enter the critical section; returns true if successful
void Lock()
enters the critical section (may block)
void Unlock()
leaves the critical section
Instance-Lock for an object.
Definition Synch.h:168
Lock GetLock() const
Get a new lock.
Definition Synch.h:196