DynExp
Highly flexible laboratory automation for dynamically changing experiments.
DynExpHardware::ZILabOneHardwareAdapter Class Reference
+ Inheritance diagram for DynExpHardware::ZILabOneHardwareAdapter:

Public Types

enum  SignalInputType { Voltage , DifferentialVoltage , Current }
 
using ParamsType = ZILabOneHardwareAdapterParams
 
using ConfigType = ZILabOneHardwareAdapterConfigurator
 
- Public Types inherited from DynExp::HardwareAdapterBase
using ParamsType = HardwareAdapterParamsBase
 Type of the parameter class belonging to this Object type. Declare this alias in every derived class with the respective parameter class accompanying the derived Object. More...
 
using ConfigType = HardwareAdapterConfiguratorBase
 Type of the configurator class belonging to this Object type. Declare this alias in every derived class with the respective configurator class accompanying the derived Object. More...
 
- Public Types inherited from DynExp::Object
using ParamsType = ParamsBase
 Type of the parameter class belonging to this Object type. Declare this alias in every derived class with the respective parameter class accompanying the derived Object. More...
 
using ParamsTypeSyncPtrType = Util::SynchronizedPointer< ParamsType >
 Alias for the return type of Object::GetParams(). Parameters wrapped into Util::SynchronizedPointer can be accessed in a thread-safe way. More...
 
using ParamsConstTypeSyncPtrType = Util::SynchronizedPointer< const ParamsType >
 Alias for the return type of Object::GetParams() const. Parameters wrapped into Util::SynchronizedPointer can be accessed in a thread-safe way. More...
 
using ConfigType = ConfiguratorBase
 Type of the configurator class belonging to this Object type. Declare this alias in every derived class with the respective configurator class accompanying the derived Object. More...
 
using ParamsGetterType = Util::CallableMemberWrapper< Object, decltype(&Object::GetParams)>
 Invoking an instance of this alias is supposed to call Object::GetParams() of the instance the Util::CallableMemberWrapper has been constructed with. More...
 

Public Member Functions

 ZILabOneHardwareAdapter (const std::thread::id OwnerThreadID, DynExp::ParamsBasePtrType &&Params)
 
virtual ~ZILabOneHardwareAdapter ()
 
virtual std::string GetName () const override
 Returns the name of this Object type. More...
 
virtual std::string GetCategory () const override
 Returns the category of this Object type. More...
 
bool IsOpened () const noexcept
 
void ConfigureInput (SignalInputType SignalInput, uint8_t Demodulator) const
 
double StartAcquisition (uint8_t Demodulator, size_t NumSamples, size_t NumRuns=1, bool AverageRuns=false) const
 
void StopAcquisition () const
 
bool HasFinishedAcquisition () const
 
double GetAcquisitionProgress () const
 
void ForceTrigger () const
 
void ClearAcquiredData () const
 
std::vector< DynExpInstr::LockinAmplifierDefs::LockinSampleGetAcquiredData () const
 
double GetInputRange (SignalInputType SignalInput) const
 
void SetInputRange (SignalInputType SignalInput, double InputRange) const
 
void AutoAdjustInputRange (SignalInputType SignalInput) const
 
bool IsInputOverload (SignalInputType SignalInput) const
 
double GetNegInputLoad (SignalInputType SignalInput) const
 
double GetPosInputLoad (SignalInputType SignalInput) const
 
double GetDemodPhase (uint8_t Demodulator) const
 
void SetDemodPhase (uint8_t Demodulator, double Phase) const
 
void AutoAdjustDemodPhase (uint8_t Demodulator) const
 
double GetDemodTimeConstant (uint8_t Demodulator) const
 
void SetDemodTimeConstant (uint8_t Demodulator, double TimeConstant) const
 
uint8_t GetDemodFilterOrder (uint8_t Demodulator) const
 
void SetDemodFilterOrder (uint8_t Demodulator, uint8_t FilterOrder) const
 
DynExpInstr::LockinAmplifierDefs::TriggerModeType GetTriggerMode () const
 
void SetTriggerMode (DynExpInstr::LockinAmplifierDefs::TriggerModeType TriggerMode, uint8_t Demodulator=0, uint8_t TriggerChannel=1) const
 
DynExpInstr::LockinAmplifierDefs::TriggerEdgeType GetTriggerEdge () const
 
void SetTriggerEdge (DynExpInstr::LockinAmplifierDefs::TriggerEdgeType TriggerEdge) const
 
double GetDemodSamplingRate (uint8_t Demodulator) const
 
void SetDemodSamplingRate (uint8_t Demodulator, double SamplingRate) const
 
bool GetEnabled (uint8_t Demodulator) const
 
void SetEnabled (uint8_t Demodulator, bool Enabled) const
 
double GetOscillatorFrequency (uint8_t Oscillator) const
 
- Public Member Functions inherited from DynExp::HardwareAdapterBase
 HardwareAdapterBase (const std::thread::id OwnerThreadID, ParamsBasePtrType &&Params)
 Constructs a hardware adapter instance. More...
 
virtual ~HardwareAdapterBase ()=0
 
void ResetException () const
 Sets LastException to nullptr in a thread-safe way. More...
 
bool IsConnected () const noexcept
 Determines the connection status of the hardware interface. More...
 
- Public Member Functions inherited from Util::INonCopyable
 INonCopyable (const INonCopyable &)=delete
 
INonCopyableoperator= (const INonCopyable &)=delete
 
- Public Member Functions inherited from DynExp::Object
ItemIDType GetID () const noexcept
 Returns the ID of this Object instance. Thread-safe since ID is const. More...
 
std::string GetCategoryAndName () const
 Builds a string from an Object's category and name to allow the user to identify an Object's type. More...
 
void EnsureReadyState (bool IsAutomaticStartup)
 Ensures that this Object instance is ready by possibly starting its worker thread or by opening connections to hardware devices. More...
 
void CheckLinkedObjectStates () const
 Checks whether Object instances this instance uses are in a ready state. Override CheckLinkedObjectStatesChild() to implement this behavior. More...
 
void Reset ()
 Resets this Object instance (including all its derived classes) by calling ResetImpl(). A reset implies that the derived classes reload all their parameters from Params and that all LinkedObjectWrapper instances owned by this Object instance become invalidated. More...
 
void BlockIfUnused (const std::chrono::milliseconds Timeout=Util::ILockable::DefaultTimeout)
 Blocks this Object instance setting Object::IsBlocked to true. Refer to Object::IsBlocked for the consequences. More...
 
ParamsConstTypeSyncPtrType GetParams (const std::chrono::milliseconds Timeout=GetParamsTimeoutDefault) const
 Locks the mutex of the parameter class instance Params assigned to this Object instance and returns a pointer to the locked Params. More...
 
ParamsTypeSyncPtrType GetParams (const std::chrono::milliseconds Timeout=GetParamsTimeoutDefault)
 Locks the mutex of the parameter class instance Params assigned to this Object instance and returns a pointer to the locked Params. More...
 
auto GetObjectName (const std::chrono::milliseconds Timeout=GetParamsTimeoutDefault) const
 Returns the name of this Object instance. More...
 
bool IsSharedUsageEnabled (const std::chrono::milliseconds Timeout=GetParamsTimeoutDefault) const
 Returns whether shared usage has been enabled for this Object instance. Refer to ParamsBase::UsageType. More...
 
void SetWarning (std::string Description, int ErrorCode) const
 Setter for Object::Warning. Sets the warning by a description and an error code. More...
 
void SetWarning (const Util::Exception &e) const
 Setter for Object::Warning. Sets the warning by retrieving the warning data from an exception e. More...
 
void ClearWarning () const
 Resets Object::Warning. More...
 
auto GetWarning () const
 Returns Object::Warning in a thread-safe way by copying its internal data. More...
 
std::exception_ptr GetException (const std::chrono::milliseconds Timeout=Util::ILockable::DefaultTimeout) const
 Returns a pointer to the exception which has caused this Object instance to fail. More...
 
bool IsReady () const
 Returns wheter this Object instance is ready (e.g. it is running or connected to a hardware device) and not blocked (refer to Object::IsBlocked). More...
 
auto GetUseCount (const std::chrono::milliseconds Timeout=Util::ILockable::DefaultTimeout) const
 Counts the registered useres in a thread-safe way. More...
 
bool IsUnused (const std::chrono::milliseconds Timeout=Util::ILockable::DefaultTimeout) const
 Returns whether this Object instance is used by other instances. More...
 
auto GetUserIDs (const std::chrono::milliseconds Timeout=Util::ILockable::DefaultTimeout) const
 Returns a list of the IDs of the registered users in a thread-safe way. More...
 
auto GetUserNamesString (const std::chrono::milliseconds Timeout=Util::ILockable::DefaultTimeout) const
 Builds a string describing which users are registered containing their object names, categories and type names in a thread-safe way. More...
 

Static Public Member Functions

constexpr static bool DetermineOverload (double PosInputLoad, double NegInputLoad)
 
constexpr static auto Name () noexcept
 
constexpr static auto Category () noexcept
 
static auto Enumerate ()
 
- Static Public Member Functions inherited from DynExp::HardwareAdapterBase
constexpr static auto Category () noexcept
 Every derived class has to redefine this function. More...
 
- Static Public Member Functions inherited from DynExp::Object
static std::string CategoryAndNameToStr (const std::string &Category, const std::string &Name)
 Builds a string from an Object's category and name to allow the user to identify an Object's type. More...
 

Private Member Functions

void Init ()
 
void ResetImpl (dispatch_tag< HardwareAdapterBase >) override final
 
virtual void ResetImpl (dispatch_tag< ZILabOneHardwareAdapter >)
 
void EnsureReadyStateChild () override final
 Ensures that this Object instance is ready by possibly starting its worker thread or by opening connections to hardware devices. More...
 
bool IsReadyChild () const override final
 Returns wheter this Object instance is ready (e.g. it is running or connected to a hardware device) and not blocked (refer to Object::IsBlocked). More...
 
bool IsConnectedChild () const noexcept override final
 Determines the connection status of the hardware interface. More...
 
void CheckError (const ZILabOneHardwareAdapterSyms::ZIResult_enum Result, const std::source_location Location=std::source_location::current()) const
 
void OpenUnsafe ()
 
void CloseUnsafe ()
 
void ConfigureInputUnsafe (SignalInputType SignalInput, uint8_t Demodulator) const
 
void StartAcquisitionUnsafe (uint8_t Demodulator, size_t NumSamples, size_t NumRuns, bool AverageRuns) const
 
void StopAcquisitionUnsafe () const
 
bool HasFinishedAcquisitionUnsafe () const
 
double GetAcquisitionProgressUnsafe () const
 
void ForceTriggerUnsafe () const
 
void ClearAcquiredDataUnsafe () const
 
std::vector< DynExpInstr::LockinAmplifierDefs::LockinSampleGetAcquiredDataUnsafe () const
 
std::string SignalInputTypeToCmdStr (SignalInputType SignalInput) const
 
double GetInputRangeUnsafe (SignalInputType SignalInput) const
 
void SetInputRangeUnsafe (SignalInputType SignalInput, double InputRange) const
 
void AutoAdjustInputRangeUnsafe (SignalInputType SignalInput) const
 
bool IsInputOverloadUnsafe (SignalInputType SignalInput) const
 
double GetNegInputLoadUnsafe (SignalInputType SignalInput) const
 
double GetPosInputLoadUnsafe (SignalInputType SignalInput) const
 
double GetDemodPhaseUnsafe (uint8_t Demodulator) const
 
void SetDemodPhaseUnsafe (uint8_t Demodulator, double Phase) const
 
void AutoAdjustDemodPhaseUnsafe (uint8_t Demodulator) const
 
double GetDemodTimeConstantUnsafe (uint8_t Demodulator) const
 
void SetDemodTimeConstantUnsafe (uint8_t Demodulator, double TimeConstant) const
 
uint8_t GetDemodFilterOrderUnsafe (uint8_t Demodulator) const
 
void SetDemodFilterOrderUnsafe (uint8_t Demodulator, uint8_t FilterOrder) const
 
DynExpInstr::LockinAmplifierDefs::TriggerModeType GetTriggerModeUnsafe () const
 
void SetTriggerModeUnsafe (DynExpInstr::LockinAmplifierDefs::TriggerModeType TriggerMode, uint8_t Demodulator, uint8_t TriggerChannel) const
 
DynExpInstr::LockinAmplifierDefs::TriggerEdgeType GetTriggerEdgeUnsafe () const
 
void SetTriggerEdgeUnsafe (DynExpInstr::LockinAmplifierDefs::TriggerEdgeType TriggerEdge) const
 
double GetDemodSamplingRateUnsafe (uint8_t Demodulator) const
 
void SetDemodSamplingRateUnsafe (uint8_t Demodulator, double SamplingRate) const
 
bool GetEnabledUnsafe (uint8_t Demodulator) const
 
void SetEnabledUnsafe (uint8_t Demodulator, bool Enabled) const
 
double GetOscillatorFrequencyUnsafe (uint8_t Oscillator) const
 
double ReadDoubleUnsafe (const std::string &Path) const
 
long long ReadIntUnsafe (const std::string &Path) const
 
void WriteDoubleUnsafe (const std::string &Path, double Value) const
 
void WriteIntUnsafe (const std::string &Path, long long Value) const
 

Private Attributes

ZILabOneHardwareAdapterSyms::ZIConnection ZIConnection
 
ZILabOneHardwareAdapterSyms::ZIModuleHandle DAQModuleHandle
 
std::atomic< bool > Opened
 
std::string DeviceDescriptor
 
std::string Interface
 
int Clockbase
 

Additional Inherited Members

- Public Attributes inherited from DynExp::Object
LinkedObjectWrapperOnlyType LinkedObjectWrapperOnly
 Allow exclusive access to some of Object's private methods to any LinkedObjectWrapper<T>. More...
 
- Static Public Attributes inherited from DynExp::HardwareAdapterBase
static constexpr auto ShortTimeoutDefault = std::chrono::milliseconds(10)
 Default timeout e.g. used as a default for calls to Object::GetException(). More...
 
static constexpr auto HardwareOperationTimeout = std::chrono::milliseconds(100)
 Default timeout used to lock the mutex provided by the base class Util::ILockable to synchronize access to the hardware interface in between multiple instrument threads. More...
 
- 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. More...
 
- Static Public Attributes inherited from DynExp::Object
static constexpr std::chrono::milliseconds GetParamsTimeoutDefault = std::chrono::milliseconds(100)
 Default timeout used by Object::GetParams() to lock the mutex of the parameter instance assigned to this Object instance. More...
 
- Protected Types inherited from Util::ILockable
using MutexType = std::timed_mutex
 
using LockType = std::unique_lock< MutexType >
 
- Protected Member Functions inherited from DynExp::HardwareAdapterBase
void ThrowException (std::exception_ptr Exception) const
 Stores Exception in LastException, wraps it in a Util::ForwardedException and throws the wrapped excetion by calling Util::ForwardException(). More...
 
void ThrowExceptionUnsafe (std::exception_ptr Exception) const
 Stores Exception in LastException, wraps it in a Util::ForwardedException and throws the wrapped excetion by calling Util::ForwardException(). More...
 
void SetExceptionUnsafe (std::exception_ptr Exception) const
 Stores Exception in LastException. More...
 
auto GetExceptionUnsafe () const
 Getter for LastException. More...
 
- 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. More...
 
- Protected Member Functions inherited from Util::INonCopyable
constexpr INonCopyable ()=default
 
 ~INonCopyable ()=default
 
- Protected Member Functions inherited from DynExp::Object
 Object (const std::thread::id OwnerThreadID, ParamsBasePtrType &&Params)
 Constructs an Object instance. More...
 
virtual ~Object ()=0
 
void EnsureCallFromOwningThread () const
 Asserts that the call to this function is performed from the thread which constructed this Object instance (the thread with the id stored in Object::OwnerThreadID). More...
 
ParamsTypeSyncPtrType GetNonConstParams (const std::chrono::milliseconds Timeout=GetParamsTimeoutDefault) const
 Allows derived Objects to edit their own parameters - even in const task functions (for instruments) or event functions (for modules). More...
 
auto LockUserList (const std::chrono::milliseconds Timeout=Util::ILockable::DefaultTimeout)
 Locks the user list for thread-safe manipulation. More...
 
void DeregisterAllUnsafe ()
 Deregisters all users and notifies them that they need to check the states of their used linked objects. More...
 
auto GetUseCountUnsafe ()
 
auto GetUserNamesStringUnsafe () const
 
bool IsUnusedUnsafe ()
 Returns whether this Object instance is used by other instances (not thread-safe). More...
 

Detailed Description

Definition at line 65 of file HardwareAdapterZILabOne.h.

Member Typedef Documentation

◆ ConfigType

◆ ParamsType

Member Enumeration Documentation

◆ SignalInputType

Enumerator
Voltage 
DifferentialVoltage 
Current 

Definition at line 71 of file HardwareAdapterZILabOne.h.

Constructor & Destructor Documentation

◆ ZILabOneHardwareAdapter()

DynExpHardware::ZILabOneHardwareAdapter::ZILabOneHardwareAdapter ( const std::thread::id  OwnerThreadID,
DynExp::ParamsBasePtrType &&  Params 
)

Definition at line 60 of file HardwareAdapterZILabOne.cpp.

◆ ~ZILabOneHardwareAdapter()

DynExpHardware::ZILabOneHardwareAdapter::~ZILabOneHardwareAdapter ( )
virtual

Definition at line 66 of file HardwareAdapterZILabOne.cpp.

Member Function Documentation

◆ AutoAdjustDemodPhase()

void DynExpHardware::ZILabOneHardwareAdapter::AutoAdjustDemodPhase ( uint8_t  Demodulator) const

Definition at line 187 of file HardwareAdapterZILabOne.cpp.

◆ AutoAdjustDemodPhaseUnsafe()

void DynExpHardware::ZILabOneHardwareAdapter::AutoAdjustDemodPhaseUnsafe ( uint8_t  Demodulator) const
private

Definition at line 654 of file HardwareAdapterZILabOne.cpp.

◆ AutoAdjustInputRange()

void DynExpHardware::ZILabOneHardwareAdapter::AutoAdjustInputRange ( SignalInputType  SignalInput) const

Definition at line 145 of file HardwareAdapterZILabOne.cpp.

◆ AutoAdjustInputRangeUnsafe()

void DynExpHardware::ZILabOneHardwareAdapter::AutoAdjustInputRangeUnsafe ( SignalInputType  SignalInput) const
private

Definition at line 622 of file HardwareAdapterZILabOne.cpp.

◆ Category()

constexpr static auto DynExpHardware::ZILabOneHardwareAdapter::Category ( )
inlinestaticconstexprnoexcept

Definition at line 76 of file HardwareAdapterZILabOne.h.

◆ CheckError()

void DynExpHardware::ZILabOneHardwareAdapter::CheckError ( const ZILabOneHardwareAdapterSyms::ZIResult_enum  Result,
const std::source_location  Location = std::source_location::current() 
) const
private

Definition at line 333 of file HardwareAdapterZILabOne.cpp.

◆ ClearAcquiredData()

void DynExpHardware::ZILabOneHardwareAdapter::ClearAcquiredData ( ) const

Definition at line 117 of file HardwareAdapterZILabOne.cpp.

◆ ClearAcquiredDataUnsafe()

void DynExpHardware::ZILabOneHardwareAdapter::ClearAcquiredDataUnsafe ( ) const
private

Definition at line 502 of file HardwareAdapterZILabOne.cpp.

◆ CloseUnsafe()

void DynExpHardware::ZILabOneHardwareAdapter::CloseUnsafe ( )
private

Definition at line 423 of file HardwareAdapterZILabOne.cpp.

◆ ConfigureInput()

void DynExpHardware::ZILabOneHardwareAdapter::ConfigureInput ( SignalInputType  SignalInput,
uint8_t  Demodulator 
) const

Definition at line 73 of file HardwareAdapterZILabOne.cpp.

◆ ConfigureInputUnsafe()

void DynExpHardware::ZILabOneHardwareAdapter::ConfigureInputUnsafe ( SignalInputType  SignalInput,
uint8_t  Demodulator 
) const
private

Definition at line 439 of file HardwareAdapterZILabOne.cpp.

◆ DetermineOverload()

constexpr static bool DynExpHardware::ZILabOneHardwareAdapter::DetermineOverload ( double  PosInputLoad,
double  NegInputLoad 
)
inlinestaticconstexpr

Definition at line 73 of file HardwareAdapterZILabOne.h.

◆ EnsureReadyStateChild()

void DynExpHardware::ZILabOneHardwareAdapter::EnsureReadyStateChild ( )
finaloverrideprivatevirtual

Ensures that this Object instance is ready by possibly starting its worker thread or by opening connections to hardware devices.

Implements DynExp::HardwareAdapterBase.

Definition at line 311 of file HardwareAdapterZILabOne.cpp.

◆ Enumerate()

auto DynExpHardware::ZILabOneHardwareAdapter::Enumerate ( )
static

Definition at line 8 of file HardwareAdapterZILabOne.cpp.

◆ ForceTrigger()

void DynExpHardware::ZILabOneHardwareAdapter::ForceTrigger ( ) const

Definition at line 110 of file HardwareAdapterZILabOne.cpp.

◆ ForceTriggerUnsafe()

void DynExpHardware::ZILabOneHardwareAdapter::ForceTriggerUnsafe ( ) const
private

Definition at line 496 of file HardwareAdapterZILabOne.cpp.

◆ GetAcquiredData()

std::vector< DynExpInstr::LockinAmplifierDefs::LockinSample > DynExpHardware::ZILabOneHardwareAdapter::GetAcquiredData ( ) const

Definition at line 124 of file HardwareAdapterZILabOne.cpp.

◆ GetAcquiredDataUnsafe()

std::vector< DynExpInstr::LockinAmplifierDefs::LockinSample > DynExpHardware::ZILabOneHardwareAdapter::GetAcquiredDataUnsafe ( ) const
private

Definition at line 508 of file HardwareAdapterZILabOne.cpp.

◆ GetAcquisitionProgress()

double DynExpHardware::ZILabOneHardwareAdapter::GetAcquisitionProgress ( ) const

Definition at line 103 of file HardwareAdapterZILabOne.cpp.

◆ GetAcquisitionProgressUnsafe()

double DynExpHardware::ZILabOneHardwareAdapter::GetAcquisitionProgressUnsafe ( ) const
private

Definition at line 487 of file HardwareAdapterZILabOne.cpp.

◆ GetCategory()

virtual std::string DynExpHardware::ZILabOneHardwareAdapter::GetCategory ( ) const
inlineoverridevirtual

Returns the category of this Object type.

Reimplemented from DynExp::HardwareAdapterBase.

Definition at line 83 of file HardwareAdapterZILabOne.h.

◆ GetDemodFilterOrder()

uint8_t DynExpHardware::ZILabOneHardwareAdapter::GetDemodFilterOrder ( uint8_t  Demodulator) const

Definition at line 208 of file HardwareAdapterZILabOne.cpp.

◆ GetDemodFilterOrderUnsafe()

uint8_t DynExpHardware::ZILabOneHardwareAdapter::GetDemodFilterOrderUnsafe ( uint8_t  Demodulator) const
private

Definition at line 669 of file HardwareAdapterZILabOne.cpp.

◆ GetDemodPhase()

double DynExpHardware::ZILabOneHardwareAdapter::GetDemodPhase ( uint8_t  Demodulator) const

Definition at line 173 of file HardwareAdapterZILabOne.cpp.

◆ GetDemodPhaseUnsafe()

double DynExpHardware::ZILabOneHardwareAdapter::GetDemodPhaseUnsafe ( uint8_t  Demodulator) const
private

Definition at line 644 of file HardwareAdapterZILabOne.cpp.

◆ GetDemodSamplingRate()

double DynExpHardware::ZILabOneHardwareAdapter::GetDemodSamplingRate ( uint8_t  Demodulator) const

Definition at line 250 of file HardwareAdapterZILabOne.cpp.

◆ GetDemodSamplingRateUnsafe()

double DynExpHardware::ZILabOneHardwareAdapter::GetDemodSamplingRateUnsafe ( uint8_t  Demodulator) const
private

Definition at line 734 of file HardwareAdapterZILabOne.cpp.

◆ GetDemodTimeConstant()

double DynExpHardware::ZILabOneHardwareAdapter::GetDemodTimeConstant ( uint8_t  Demodulator) const

Definition at line 194 of file HardwareAdapterZILabOne.cpp.

◆ GetDemodTimeConstantUnsafe()

double DynExpHardware::ZILabOneHardwareAdapter::GetDemodTimeConstantUnsafe ( uint8_t  Demodulator) const
private

Definition at line 659 of file HardwareAdapterZILabOne.cpp.

◆ GetEnabled()

bool DynExpHardware::ZILabOneHardwareAdapter::GetEnabled ( uint8_t  Demodulator) const

Definition at line 264 of file HardwareAdapterZILabOne.cpp.

◆ GetEnabledUnsafe()

bool DynExpHardware::ZILabOneHardwareAdapter::GetEnabledUnsafe ( uint8_t  Demodulator) const
private

Definition at line 744 of file HardwareAdapterZILabOne.cpp.

◆ GetInputRange()

double DynExpHardware::ZILabOneHardwareAdapter::GetInputRange ( SignalInputType  SignalInput) const

Definition at line 131 of file HardwareAdapterZILabOne.cpp.

◆ GetInputRangeUnsafe()

double DynExpHardware::ZILabOneHardwareAdapter::GetInputRangeUnsafe ( SignalInputType  SignalInput) const
private

Definition at line 612 of file HardwareAdapterZILabOne.cpp.

◆ GetName()

virtual std::string DynExpHardware::ZILabOneHardwareAdapter::GetName ( ) const
inlineoverridevirtual

Returns the name of this Object type.

Implements DynExp::Object.

Definition at line 82 of file HardwareAdapterZILabOne.h.

◆ GetNegInputLoad()

double DynExpHardware::ZILabOneHardwareAdapter::GetNegInputLoad ( SignalInputType  SignalInput) const

Definition at line 159 of file HardwareAdapterZILabOne.cpp.

◆ GetNegInputLoadUnsafe()

double DynExpHardware::ZILabOneHardwareAdapter::GetNegInputLoadUnsafe ( SignalInputType  SignalInput) const
private

Definition at line 632 of file HardwareAdapterZILabOne.cpp.

◆ GetOscillatorFrequency()

double DynExpHardware::ZILabOneHardwareAdapter::GetOscillatorFrequency ( uint8_t  Oscillator) const

Definition at line 278 of file HardwareAdapterZILabOne.cpp.

◆ GetOscillatorFrequencyUnsafe()

double DynExpHardware::ZILabOneHardwareAdapter::GetOscillatorFrequencyUnsafe ( uint8_t  Oscillator) const
private

Definition at line 754 of file HardwareAdapterZILabOne.cpp.

◆ GetPosInputLoad()

double DynExpHardware::ZILabOneHardwareAdapter::GetPosInputLoad ( SignalInputType  SignalInput) const

Definition at line 166 of file HardwareAdapterZILabOne.cpp.

◆ GetPosInputLoadUnsafe()

double DynExpHardware::ZILabOneHardwareAdapter::GetPosInputLoadUnsafe ( SignalInputType  SignalInput) const
private

Definition at line 638 of file HardwareAdapterZILabOne.cpp.

◆ GetTriggerEdge()

DynExpInstr::LockinAmplifierDefs::TriggerEdgeType DynExpHardware::ZILabOneHardwareAdapter::GetTriggerEdge ( ) const

Definition at line 236 of file HardwareAdapterZILabOne.cpp.

◆ GetTriggerEdgeUnsafe()

DynExpInstr::LockinAmplifierDefs::TriggerEdgeType DynExpHardware::ZILabOneHardwareAdapter::GetTriggerEdgeUnsafe ( ) const
private

Definition at line 715 of file HardwareAdapterZILabOne.cpp.

◆ GetTriggerMode()

DynExpInstr::LockinAmplifierDefs::TriggerModeType DynExpHardware::ZILabOneHardwareAdapter::GetTriggerMode ( ) const

Definition at line 222 of file HardwareAdapterZILabOne.cpp.

◆ GetTriggerModeUnsafe()

DynExpInstr::LockinAmplifierDefs::TriggerModeType DynExpHardware::ZILabOneHardwareAdapter::GetTriggerModeUnsafe ( ) const
private

Definition at line 679 of file HardwareAdapterZILabOne.cpp.

◆ HasFinishedAcquisition()

bool DynExpHardware::ZILabOneHardwareAdapter::HasFinishedAcquisition ( ) const

Definition at line 96 of file HardwareAdapterZILabOne.cpp.

◆ HasFinishedAcquisitionUnsafe()

bool DynExpHardware::ZILabOneHardwareAdapter::HasFinishedAcquisitionUnsafe ( ) const
private

Definition at line 478 of file HardwareAdapterZILabOne.cpp.

◆ Init()

void DynExpHardware::ZILabOneHardwareAdapter::Init ( )
private

Definition at line 285 of file HardwareAdapterZILabOne.cpp.

◆ IsConnectedChild()

bool DynExpHardware::ZILabOneHardwareAdapter::IsConnectedChild ( ) const
finaloverrideprivatevirtualnoexcept

Determines the connection status of the hardware interface.

Returns
Returns true when the hardware adapter is connected to the physical hardware device, false otherwise.

Implements DynExp::HardwareAdapterBase.

Definition at line 328 of file HardwareAdapterZILabOne.cpp.

◆ IsInputOverload()

bool DynExpHardware::ZILabOneHardwareAdapter::IsInputOverload ( SignalInputType  SignalInput) const

Definition at line 152 of file HardwareAdapterZILabOne.cpp.

◆ IsInputOverloadUnsafe()

bool DynExpHardware::ZILabOneHardwareAdapter::IsInputOverloadUnsafe ( SignalInputType  SignalInput) const
private

Definition at line 627 of file HardwareAdapterZILabOne.cpp.

◆ IsOpened()

bool DynExpHardware::ZILabOneHardwareAdapter::IsOpened ( ) const
inlinenoexcept

Definition at line 85 of file HardwareAdapterZILabOne.h.

◆ IsReadyChild()

bool DynExpHardware::ZILabOneHardwareAdapter::IsReadyChild ( ) const
finaloverrideprivatevirtual

Returns wheter this Object instance is ready (e.g. it is running or connected to a hardware device) and not blocked (refer to Object::IsBlocked).

Returns
Returns true if this Object instance is ready, false otherwise.

Implements DynExp::Object.

Definition at line 318 of file HardwareAdapterZILabOne.cpp.

◆ Name()

constexpr static auto DynExpHardware::ZILabOneHardwareAdapter::Name ( )
inlinestaticconstexprnoexcept

Definition at line 75 of file HardwareAdapterZILabOne.h.

◆ OpenUnsafe()

void DynExpHardware::ZILabOneHardwareAdapter::OpenUnsafe ( )
private

Definition at line 348 of file HardwareAdapterZILabOne.cpp.

◆ ReadDoubleUnsafe()

double DynExpHardware::ZILabOneHardwareAdapter::ReadDoubleUnsafe ( const std::string &  Path) const
private

Definition at line 759 of file HardwareAdapterZILabOne.cpp.

◆ ReadIntUnsafe()

long long DynExpHardware::ZILabOneHardwareAdapter::ReadIntUnsafe ( const std::string &  Path) const
private

Definition at line 768 of file HardwareAdapterZILabOne.cpp.

◆ ResetImpl() [1/2]

void DynExpHardware::ZILabOneHardwareAdapter::ResetImpl ( dispatch_tag< HardwareAdapterBase )
finaloverrideprivate

Definition at line 298 of file HardwareAdapterZILabOne.cpp.

◆ ResetImpl() [2/2]

virtual void DynExpHardware::ZILabOneHardwareAdapter::ResetImpl ( dispatch_tag< ZILabOneHardwareAdapter )
inlineprivatevirtual

Definition at line 139 of file HardwareAdapterZILabOne.h.

◆ SetDemodFilterOrder()

void DynExpHardware::ZILabOneHardwareAdapter::SetDemodFilterOrder ( uint8_t  Demodulator,
uint8_t  FilterOrder 
) const

Definition at line 215 of file HardwareAdapterZILabOne.cpp.

◆ SetDemodFilterOrderUnsafe()

void DynExpHardware::ZILabOneHardwareAdapter::SetDemodFilterOrderUnsafe ( uint8_t  Demodulator,
uint8_t  FilterOrder 
) const
private

Definition at line 674 of file HardwareAdapterZILabOne.cpp.

◆ SetDemodPhase()

void DynExpHardware::ZILabOneHardwareAdapter::SetDemodPhase ( uint8_t  Demodulator,
double  Phase 
) const

Definition at line 180 of file HardwareAdapterZILabOne.cpp.

◆ SetDemodPhaseUnsafe()

void DynExpHardware::ZILabOneHardwareAdapter::SetDemodPhaseUnsafe ( uint8_t  Demodulator,
double  Phase 
) const
private

Definition at line 649 of file HardwareAdapterZILabOne.cpp.

◆ SetDemodSamplingRate()

void DynExpHardware::ZILabOneHardwareAdapter::SetDemodSamplingRate ( uint8_t  Demodulator,
double  SamplingRate 
) const

Definition at line 257 of file HardwareAdapterZILabOne.cpp.

◆ SetDemodSamplingRateUnsafe()

void DynExpHardware::ZILabOneHardwareAdapter::SetDemodSamplingRateUnsafe ( uint8_t  Demodulator,
double  SamplingRate 
) const
private

Definition at line 739 of file HardwareAdapterZILabOne.cpp.

◆ SetDemodTimeConstant()

void DynExpHardware::ZILabOneHardwareAdapter::SetDemodTimeConstant ( uint8_t  Demodulator,
double  TimeConstant 
) const

Definition at line 201 of file HardwareAdapterZILabOne.cpp.

◆ SetDemodTimeConstantUnsafe()

void DynExpHardware::ZILabOneHardwareAdapter::SetDemodTimeConstantUnsafe ( uint8_t  Demodulator,
double  TimeConstant 
) const
private

Definition at line 664 of file HardwareAdapterZILabOne.cpp.

◆ SetEnabled()

void DynExpHardware::ZILabOneHardwareAdapter::SetEnabled ( uint8_t  Demodulator,
bool  Enabled 
) const

Definition at line 271 of file HardwareAdapterZILabOne.cpp.

◆ SetEnabledUnsafe()

void DynExpHardware::ZILabOneHardwareAdapter::SetEnabledUnsafe ( uint8_t  Demodulator,
bool  Enabled 
) const
private

Definition at line 749 of file HardwareAdapterZILabOne.cpp.

◆ SetInputRange()

void DynExpHardware::ZILabOneHardwareAdapter::SetInputRange ( SignalInputType  SignalInput,
double  InputRange 
) const

Definition at line 138 of file HardwareAdapterZILabOne.cpp.

◆ SetInputRangeUnsafe()

void DynExpHardware::ZILabOneHardwareAdapter::SetInputRangeUnsafe ( SignalInputType  SignalInput,
double  InputRange 
) const
private

Definition at line 617 of file HardwareAdapterZILabOne.cpp.

◆ SetTriggerEdge()

void DynExpHardware::ZILabOneHardwareAdapter::SetTriggerEdge ( DynExpInstr::LockinAmplifierDefs::TriggerEdgeType  TriggerEdge) const

Definition at line 243 of file HardwareAdapterZILabOne.cpp.

◆ SetTriggerEdgeUnsafe()

void DynExpHardware::ZILabOneHardwareAdapter::SetTriggerEdgeUnsafe ( DynExpInstr::LockinAmplifierDefs::TriggerEdgeType  TriggerEdge) const
private

Definition at line 724 of file HardwareAdapterZILabOne.cpp.

◆ SetTriggerMode()

void DynExpHardware::ZILabOneHardwareAdapter::SetTriggerMode ( DynExpInstr::LockinAmplifierDefs::TriggerModeType  TriggerMode,
uint8_t  Demodulator = 0,
uint8_t  TriggerChannel = 1 
) const

Definition at line 229 of file HardwareAdapterZILabOne.cpp.

◆ SetTriggerModeUnsafe()

void DynExpHardware::ZILabOneHardwareAdapter::SetTriggerModeUnsafe ( DynExpInstr::LockinAmplifierDefs::TriggerModeType  TriggerMode,
uint8_t  Demodulator,
uint8_t  TriggerChannel 
) const
private

Definition at line 693 of file HardwareAdapterZILabOne.cpp.

◆ SignalInputTypeToCmdStr()

std::string DynExpHardware::ZILabOneHardwareAdapter::SignalInputTypeToCmdStr ( SignalInputType  SignalInput) const
private

Definition at line 603 of file HardwareAdapterZILabOne.cpp.

◆ StartAcquisition()

double DynExpHardware::ZILabOneHardwareAdapter::StartAcquisition ( uint8_t  Demodulator,
size_t  NumSamples,
size_t  NumRuns = 1,
bool  AverageRuns = false 
) const

Definition at line 80 of file HardwareAdapterZILabOne.cpp.

◆ StartAcquisitionUnsafe()

void DynExpHardware::ZILabOneHardwareAdapter::StartAcquisitionUnsafe ( uint8_t  Demodulator,
size_t  NumSamples,
size_t  NumRuns,
bool  AverageRuns 
) const
private

Definition at line 446 of file HardwareAdapterZILabOne.cpp.

◆ StopAcquisition()

void DynExpHardware::ZILabOneHardwareAdapter::StopAcquisition ( ) const

Definition at line 89 of file HardwareAdapterZILabOne.cpp.

◆ StopAcquisitionUnsafe()

void DynExpHardware::ZILabOneHardwareAdapter::StopAcquisitionUnsafe ( ) const
private

Definition at line 470 of file HardwareAdapterZILabOne.cpp.

◆ WriteDoubleUnsafe()

void DynExpHardware::ZILabOneHardwareAdapter::WriteDoubleUnsafe ( const std::string &  Path,
double  Value 
) const
private

Definition at line 777 of file HardwareAdapterZILabOne.cpp.

◆ WriteIntUnsafe()

void DynExpHardware::ZILabOneHardwareAdapter::WriteIntUnsafe ( const std::string &  Path,
long long  Value 
) const
private

Definition at line 783 of file HardwareAdapterZILabOne.cpp.

Member Data Documentation

◆ Clockbase

int DynExpHardware::ZILabOneHardwareAdapter::Clockbase
private

Definition at line 206 of file HardwareAdapterZILabOne.h.

◆ DAQModuleHandle

ZILabOneHardwareAdapterSyms::ZIModuleHandle DynExpHardware::ZILabOneHardwareAdapter::DAQModuleHandle
private

Definition at line 201 of file HardwareAdapterZILabOne.h.

◆ DeviceDescriptor

std::string DynExpHardware::ZILabOneHardwareAdapter::DeviceDescriptor
private

Definition at line 204 of file HardwareAdapterZILabOne.h.

◆ Interface

std::string DynExpHardware::ZILabOneHardwareAdapter::Interface
private

Definition at line 205 of file HardwareAdapterZILabOne.h.

◆ Opened

std::atomic<bool> DynExpHardware::ZILabOneHardwareAdapter::Opened
private

Definition at line 203 of file HardwareAdapterZILabOne.h.

◆ ZIConnection

ZILabOneHardwareAdapterSyms::ZIConnection DynExpHardware::ZILabOneHardwareAdapter::ZIConnection
private

Definition at line 200 of file HardwareAdapterZILabOne.h.


The documentation for this class was generated from the following files: