|
DynExp
Highly flexible laboratory automation for dynamically changing experiments.
|
Only one instance of this class is allowed for synchronizing calls to connected qutools time taggers. This is required since TDC_addressDevice() selects a single device globally.
More...
Inheritance diagram for DynExpHardware::QutoolsTDCHardwareAdapter::QutoolsTDCSynchronizer:Static Public Member Functions | |
| static LockType | Lock (const std::chrono::milliseconds Timeout=std::chrono::milliseconds(100)) |
Private Member Functions | |
| QutoolsTDCSynchronizer ()=default | |
| ~QutoolsTDCSynchronizer ()=default | |
Static Private Member Functions | |
| static QutoolsTDCSynchronizer & | GetInstance () noexcept |
Additional Inherited Members | |
Public Member Functions inherited from Util::INonCopyable | |
| INonCopyable (const INonCopyable &)=delete | |
| INonCopyable & | operator= (const INonCopyable &)=delete |
Static Public Attributes inherited from Util::ILockable | |
| static constexpr std::chrono::milliseconds | DefaultTimeout = std::chrono::milliseconds(10) |
| Duration which is used as a default timeout within all methods of this class if no different duration is passed to them. | |
Protected Types inherited from Util::ILockable | |
| using | MutexType = std::timed_mutex |
| using | LockType = std::unique_lock< MutexType > |
Protected Member Functions inherited from Util::ILockable | |
| ILockable ()=default | |
| ~ILockable ()=default | |
| LockType | AcquireLock (const std::chrono::milliseconds Timeout=DefaultTimeout) const |
| Locks the internal mutex. Blocks until the mutex is locked or until the timeout duration is exceeded. | |
Protected Member Functions inherited from Util::INonCopyable | |
| constexpr | INonCopyable ()=default |
| ~INonCopyable ()=default | |
Only one instance of this class is allowed for synchronizing calls to connected qutools time taggers. This is required since TDC_addressDevice() selects a single device globally.
QutoolsTDCHardwareAdapter (by a call to Util::ILockable::AcquireLock()) before the QutoolsTDCSynchronizer (by a call to QutoolsTDCSynchronizer::Lock()). Definition at line 93 of file HardwareAdapterQutoolsTDC.h.
|
privatedefault |
|
privatedefault |
|
staticprivatenoexcept |
Definition at line 63 of file HardwareAdapterQutoolsTDC.cpp.
|
static |
Definition at line 57 of file HardwareAdapterQutoolsTDC.cpp.