29 #ifndef GENAPI_SYNCH_H 30 #define GENAPI_SYNCH_H 38 #elif defined (__GNUC__) && (defined (__linux__) || defined (__APPLE__)) 42 #elif defined(VXWORKS) 47 # error No/unknown platform thread support 89 CRITICAL_SECTION m_csObject;
91 #elif defined (__GNUC__) && (defined (__linux__) || defined (__APPLE__)) 92 pthread_mutex_t m_mtxObject;
94 #elif defined(VXWORKS) 97 # error No/unknown platform thread support 110 # if defined (_WIN32) 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)
154 AutoLock(
const AutoLock&);
166 template<
class Object>
170 mutable CLock m_Lock;
185 m_Object.m_Lock.Lock();
189 m_Object.m_Lock.Unlock();
198 return Lock( *
this );
204 #endif // GENAPI_SYNCH_H Lock GetLock() const
Get a new lock.
Definition: Synch.h:196
void Lock()
enters the critical section (may block)
void Unlock()
leaves the critical section
virtual IBoolean & operator=(bool Value)
Set node value.
Definition: IBoolean.h:62
Standard GenICam Exceptions.
declspec's to be used for GenApi Windows dll
Definition: ChunkAdapter.h:37
Instance-Lock for an object.
Definition: Synch.h:167
A lock class.
Definition: Synch.h:61