DynExp
Highly flexible laboratory automation for dynamically changing experiments.
DynExpInstr::ZI_MFLITasks::UpdateTask Class Reference
+ Inheritance diagram for DynExpInstr::ZI_MFLITasks::UpdateTask:

Public Member Functions

 UpdateTask (DynExpHardware::ZILabOneHardwareAdapter::SignalInputType UsedSignalInput, uint8_t UsedDemodulator) noexcept
 
- Public Member Functions inherited from DynExp::TaskBase
 TaskBase (CallbackType CallbackFunc=nullptr) noexcept
 Constructs an instrument task. More...
 
virtual ~TaskBase ()=0
 The destructor aborts a waiting task setting State to TaskState::Aborted. Then, it calls CallbackFunc with a default-constructed ExceptionContainer instance. More...
 
TaskState GetState () const noexcept
 Getter for the instrument task's current state. More...
 
bool IsLocked () const noexcept
 Determines whether the task is locked. More...
 
bool IsAborting () const noexcept
 Determines whether the task should abort. A derived task is encouraged to call this method before performing any action or in between the individual steps of a more complex action. More...
 
int GetErrorCode () const noexcept
 Getter for the error code related to an error possibly occurred while the task was executed. More...
 
void Abort ()
 Requests the task to abort. There is no guarantee that the derived task does call IsAborting() to check whether it should abort. The task could have finished already or the implementation of RunChild() in the derived class does not allow for aborting. More...
 

Private Member Functions

void UpdateFuncImpl (dispatch_tag< LockinAmplifierTasks::UpdateTask >, DynExp::InstrumentInstance &Instance) override final
 Updates the respective instrument within the instrument inheritance hierarchy. Call UpdateFuncImpl() of a derived instrument's update task as the last command in a base instrument's update task UpdateFuncImpl() to ensure that derived instruments are updated after base instruments. Overriding functions must throw an exception in case of an error. More...
 
virtual void UpdateFuncImpl (dispatch_tag< UpdateTask >, DynExp::InstrumentInstance &Instance)
 
- Private Member Functions inherited from DynExpInstr::ZI_MFLITasks::ZI_MFLITaskBase
 ZI_MFLITaskBase (DynExpHardware::ZILabOneHardwareAdapter::SignalInputType UsedSignalInput, uint8_t UsedDemodulator) noexcept
 
virtual ~ZI_MFLITaskBase ()
 
auto GetUsedSignalInput () const noexcept
 
auto GetUsedDemodulator () const noexcept
 

Additional Inherited Members

- Public Types inherited from DynExp::TaskBase
enum class  TaskState {
  Waiting , Locked , Running , Finished ,
  Failed , Aborted
}
 Defines states an instrument's task can undergo. Possible state transitions are: More...
 
using CallbackType = std::function< void(const TaskBase &, ExceptionContainer &)>
 Type of a callback function which is invoked when a task has finished, failed or has been aborted. The function receives a reference to the task it originates from as well as a reference to a wrapper holding an exception which might have occurred while executing the task. More...
 
- Public Attributes inherited from DynExp::TaskBase
InstrumentBaseOnlyType InstrumentBaseOnly
 Allow exclusive access to some of TaskBase's private methods to InstrumentBase. More...
 
InstrumentDataBaseOnlyType InstrumentDataBaseOnly
 Allow exclusive access to some of TaskBase's private methods to InstrumentDataBase. More...
 

Detailed Description

Definition at line 59 of file ZI_MFLI.h.

Constructor & Destructor Documentation

◆ UpdateTask()

DynExpInstr::ZI_MFLITasks::UpdateTask::UpdateTask ( DynExpHardware::ZILabOneHardwareAdapter::SignalInputType  UsedSignalInput,
uint8_t  UsedDemodulator 
)
inlinenoexcept

Definition at line 62 of file ZI_MFLI.h.

Member Function Documentation

◆ UpdateFuncImpl() [1/2]

void DynExpInstr::ZI_MFLITasks::UpdateTask::UpdateFuncImpl ( dispatch_tag< LockinAmplifierTasks::UpdateTask ,
DynExp::InstrumentInstance Instance 
)
finaloverrideprivatevirtual

Updates the respective instrument within the instrument inheritance hierarchy. Call UpdateFuncImpl() of a derived instrument's update task as the last command in a base instrument's update task UpdateFuncImpl() to ensure that derived instruments are updated after base instruments. Overriding functions must throw an exception in case of an error.

Parameters
InstanceHandle to the instrument thread's data

Reimplemented from DynExpInstr::LockinAmplifierTasks::UpdateTask.

Definition at line 40 of file ZI_MFLI.cpp.

◆ UpdateFuncImpl() [2/2]

virtual void DynExpInstr::ZI_MFLITasks::UpdateTask::UpdateFuncImpl ( dispatch_tag< UpdateTask ,
DynExp::InstrumentInstance Instance 
)
inlineprivatevirtual

Definition at line 67 of file ZI_MFLI.h.


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