DynExp
Highly flexible laboratory automation for dynamically changing experiments.
|
Base class for all tasks being processed by instruments. The class must not contain public virtual functions since TaskBase::CallbackFunc could call them in TaskBase's
destructor.
More...
Inherited by DynExp::ArriveAtLatchTask, DynExp::DefaultTask, DynExp::ExitTaskBase, DynExp::InitTaskBase, DynExp::UpdateTaskBase, DynExpInstr::DataStreamInstrumentTasks::SetStreamSizeTask, DynExpInstr::DummyDataStreamInstrumentTasks::ResetStreamSizeTask, DynExpInstr::FunctionGeneratorTasks::SetArbitraryFunctionTask, DynExpInstr::FunctionGeneratorTasks::SetPulseFunctionTask, DynExpInstr::FunctionGeneratorTasks::SetRampFunctionTask, DynExpInstr::FunctionGeneratorTasks::SetRectFunctionTask, DynExpInstr::FunctionGeneratorTasks::SetSineFunctionTask, DynExpInstr::FunctionGeneratorTasks::SetTriggerTask, DynExpInstr::InputPortTasks::ResetBufferSizeTask, DynExpInstr::NIDAQAnalogInTasks::ReadTask, DynExpInstr::NIDAQAnalogInTasks::RestartTask, DynExpInstr::NIDAQAnalogInTasks::StartTask, DynExpInstr::NIDAQAnalogInTasks::StopTask, DynExpInstr::NIDAQAnalogOutTasks::ClearTask, DynExpInstr::NIDAQAnalogOutTasks::RestartTask, DynExpInstr::NIDAQAnalogOutTasks::StartTask, DynExpInstr::NIDAQAnalogOutTasks::StopTask, DynExpInstr::NIDAQAnalogOutTasks::WriteTask, DynExpInstr::NIDAQDigitalInTasks::ReadTask, DynExpInstr::NIDAQDigitalInTasks::RestartTask, DynExpInstr::NIDAQDigitalInTasks::StartTask, DynExpInstr::NIDAQDigitalInTasks::StopTask, DynExpInstr::NIDAQDigitalOutTasks::ClearTask, DynExpInstr::NIDAQDigitalOutTasks::RestartTask, DynExpInstr::NIDAQDigitalOutTasks::StartTask, DynExpInstr::NIDAQDigitalOutTasks::StopTask, DynExpInstr::NIDAQDigitalOutTasks::WriteTask, DynExpInstr::NenionLeakvalveF3Tasks::MoveAbsoluteTask, DynExpInstr::NenionLeakvalveF3Tasks::MoveRelativeTask, DynExpInstr::NenionLeakvalveF3Tasks::MoveToHomeTask, DynExpInstr::NenionLeakvalveF3Tasks::ReferenceTask, DynExpInstr::NenionLeakvalveF3Tasks::SetHomeTask, DynExpInstr::NenionLeakvalveF3Tasks::SetVelocityTask, DynExpInstr::NenionLeakvalveF3Tasks::StopMotionTask, DynExpInstr::NetworkAnalogOutTasks::SetDefaultTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkAnalogOutTasks::SetTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDataStreamInstrumentTasks::ClearTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDataStreamInstrumentTasks::ReadTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDataStreamInstrumentTasks::ResetStreamSizeTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDataStreamInstrumentTasks::RestartTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDataStreamInstrumentTasks::SetStreamSizeTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDataStreamInstrumentTasks::StartTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDataStreamInstrumentTasks::StopTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDataStreamInstrumentTasks::WriteTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDigitalOutTasks::SetDefaultTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDigitalOutTasks::SetTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkSpectrometerTasks::AbortTask, DynExpInstr::NetworkSpectrometerTasks::RecordTask, DynExpInstr::NetworkSpectrometerTasks::SetExposureTimeTask, DynExpInstr::NetworkSpectrometerTasks::SetFrequencyRangeTask, DynExpInstr::NetworkSpectrometerTasks::SetSetSilentModeTask, DynExpInstr::NetworkTimeTaggerTasks::ClearTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkTimeTaggerTasks::ConfigureHBTTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkTimeTaggerTasks::ConfigureInputTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkTimeTaggerTasks::ReadTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkTimeTaggerTasks::ResetHBTTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkTimeTaggerTasks::SetCoincidenceWindowTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkTimeTaggerTasks::SetDelayTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkTimeTaggerTasks::SetExposureTimeTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkTimeTaggerTasks::SetHBTActiveTask< BaseInstr,, gRPCStubs >, DynExpInstr::OutputPortTasks::ResetBufferSizeTask, DynExpInstr::PI_C_862_Tasks::MoveAbsoluteTask, DynExpInstr::PI_C_862_Tasks::MoveRelativeTask, DynExpInstr::PI_C_862_Tasks::MoveToHomeTask, DynExpInstr::PI_C_862_Tasks::ReferenceTask, DynExpInstr::PI_C_862_Tasks::SetHomeTask, DynExpInstr::PI_C_862_Tasks::SetVelocityTask, DynExpInstr::PI_C_862_Tasks::StopMotionTask, DynExpInstr::PVCamTasks::CaptureSingleTask, DynExpInstr::PVCamTasks::SetCameraMode, DynExpInstr::PVCamTasks::SetExposureTimeTask, DynExpInstr::PVCamTasks::StartCapturingTask, DynExpInstr::PVCamTasks::StopCapturingTask, DynExpInstr::QutoolsQuTAGTasks::ClearTask, DynExpInstr::QutoolsQuTAGTasks::ConfigureHBTTask, DynExpInstr::QutoolsQuTAGTasks::ConfigureInputTask, DynExpInstr::QutoolsQuTAGTasks::ReadDataTask, DynExpInstr::QutoolsQuTAGTasks::ResetHBTTask, DynExpInstr::QutoolsQuTAGTasks::SetCoincidenceWindowTask, DynExpInstr::QutoolsQuTAGTasks::SetDelayTask, DynExpInstr::QutoolsQuTAGTasks::SetExposureTimeTask, DynExpInstr::QutoolsQuTAGTasks::SetHBTActiveTask, DynExpInstr::QutoolsQuTAGTasks::SetStreamSizeTask, DynExpInstr::RS_SMB100BTasks::ForceTriggerTask, DynExpInstr::RS_SMB100BTasks::SetModulationTask, DynExpInstr::RS_SMB100BTasks::SetSineFunctionTask, DynExpInstr::RS_SMB100BTasks::SetSweepTask, DynExpInstr::RS_SMB100BTasks::SetTriggerTask, DynExpInstr::RS_SMB100BTasks::StartTask, DynExpInstr::RS_SMB100BTasks::StopTask, DynExpInstr::RS_SMC100ATasks::ForceTriggerTask, DynExpInstr::RS_SMC100ATasks::SetModulationTask, DynExpInstr::RS_SMC100ATasks::SetSineFunctionTask, DynExpInstr::RS_SMC100ATasks::SetSweepTask, DynExpInstr::RS_SMC100ATasks::SetTriggerTask, DynExpInstr::RS_SMC100ATasks::StartTask, DynExpInstr::RS_SMC100ATasks::StopTask, DynExpInstr::SmarActTasks::CalibrateTask, DynExpInstr::SmarActTasks::MoveAbsoluteTask, DynExpInstr::SmarActTasks::MoveRelativeTask, DynExpInstr::SmarActTasks::MoveToHomeTask, DynExpInstr::SmarActTasks::ReferenceTask, DynExpInstr::SmarActTasks::SetHomeTask, DynExpInstr::SmarActTasks::SetVelocityTask, DynExpInstr::SmarActTasks::StopMotionTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::ClearTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::ForceFinalSampleTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::ForceTriggerTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::ResetBufferSizeTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::RestartTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::SetConstantOutputTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::SetNumRunsTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::SetTriggerTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::StartTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::StopTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::WriteTask, DynExpInstr::TimeTaggerTasks::ResetBufferSizeTask, DynExpInstr::WidefieldLocalizationTasks::AnalyzeDistortionTask, DynExpInstr::WidefieldLocalizationTasks::AnalyzeWidefieldTask, DynExpInstr::WidefieldLocalizationTasks::ReadCellIDTask, DynExpInstr::WidefieldLocalizationTasks::RecallPositionsTask, DynExpInstr::ZI_MFLITasks::AutoAdjustPhaseTask, DynExpInstr::ZI_MFLITasks::AutoAdjustSensitivityTask, DynExpInstr::ZI_MFLITasks::ClearDataTask, DynExpInstr::ZI_MFLITasks::ForceTriggerTask, DynExpInstr::ZI_MFLITasks::ReadTask, DynExpInstr::ZI_MFLITasks::SetEnableTask, DynExpInstr::ZI_MFLITasks::SetFilterOrderTask, DynExpInstr::ZI_MFLITasks::SetPhaseTask, DynExpInstr::ZI_MFLITasks::SetSamplingRateTask, DynExpInstr::ZI_MFLITasks::SetSensitivityTask, DynExpInstr::ZI_MFLITasks::SetSignalTypeTask, DynExpInstr::ZI_MFLITasks::SetTimeConstantTask, DynExpInstr::ZI_MFLITasks::SetTriggerEdgeTask, DynExpInstr::ZI_MFLITasks::SetTriggerModeTask, DynExpInstr::ZI_MFLITasks::StartTask, and DynExpInstr::ZI_MFLITasks::StopTask.
Classes | |
class | InstrumentBaseOnlyType |
Allow exclusive access to some of TaskBase's private methods to InstrumentBase . More... | |
class | InstrumentDataBaseOnlyType |
Allow exclusive access to some of TaskBase's private methods to InstrumentDataBase . More... | |
Public Types | |
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 Member Functions | |
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... | |
Thread-safe public functions | |
Methods can be called from any thread. Only atomic operations are performed. | |
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... | |
Public Attributes | |
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... | |
Private Member Functions | |
void | Lock () |
Locks the task to prepare it for execution. More... | |
bool | Run (InstrumentInstance &Instance) |
Runs the task. Override RunChild() to define a derived task's action(s). Any exception leaving RunChild() will terminate the instrument thread. In this case, the instrument has to be reset in order to restart it. For minor errors occurring in RunChild() , return a TaskResultType instance with TaskResultType::ErrorCode set to an appropriate (non-zero) value. This sets State to TaskState::Failed. Note that in this case there might be no way to retrieve the error if finished tasks are not kept (i.e. KeepFinishedTask() returns false) and if no CallbackFunc has been set. RunChild() is supposed to check the return value of IsAborting() . More... | |
Override | |
Override by derived classes. | |
virtual TaskResultType | RunChild (InstrumentInstance &Instance)=0 |
Runs the task. Override RunChild() to define a derived task's action(s). Any exception leaving RunChild() will terminate the instrument thread. In this case, the instrument has to be reset in order to restart it. For minor errors occurring in RunChild() , return a TaskResultType instance with TaskResultType::ErrorCode set to an appropriate (non-zero) value. This sets State to TaskState::Failed. Note that in this case there might be no way to retrieve the error if finished tasks are not kept (i.e. KeepFinishedTask() returns false) and if no CallbackFunc has been set. RunChild() is supposed to check the return value of IsAborting() . More... | |
virtual bool | KeepFinishedTask () const noexcept |
Determines whether the task should be kept to check its results after execution. InstrumentDataBase::RemoveTaskFromQueue(). More... | |
Private Attributes | |
const CallbackType | CallbackFunc |
This callback function is called after the task has finished (either successfully or not) with a reference to the current task and with a reference to the exception which occurred during the task execution (if an exception has occurred). More... | |
Instrument-to-other communication | |
These variables are for communication from the instrument thread to other thread(s) only. | |
std::atomic< TaskState > | State |
Holds the task's current state. Refer to TaskBase::TaskState. More... | |
std::atomic< int > | ErrorCode |
Holds the error code of an error which occurred during execution of the task function. More... | |
Other-to-instrument communication | |
These variables are for communication from other thread(s) to the instrument thread only. | |
std::atomic< bool > | ShouldAbort |
Indicates whether the task should abort. Refer to Abort() and IsAborting() . More... | |
Base class for all tasks being processed by instruments. The class must not contain public virtual functions since TaskBase::CallbackFunc could call them in TaskBase's
destructor.
Definition at line 891 of file Instrument.h.
using DynExp::TaskBase::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.
Definition at line 939 of file Instrument.h.
|
strong |
Defines states an instrument's task can undergo. Possible state transitions are:
Enumerator | |
---|---|
Waiting | The task is enqueued and waiting for execution. This is the starting state after construction. |
Locked | The task is locked since its execution is being prepared. It will be the next task to be executed. |
Running | The task is currently being executed. |
Finished | The task execution has finished. No error has occurred. |
Failed | The task execution has failed due to an exception leaving |
Aborted | The task has been aborted either by |
Definition at line 948 of file Instrument.h.
|
inlinenoexcept |
Constructs an instrument task.
CallbackFunc | This callback function is called after the task has finished (either successfully or not) with a reference to the current task and with a reference to the exception which occurred during the task execution (if an exception has occurred). |
Definition at line 979 of file Instrument.h.
|
pure virtual |
The destructor aborts a waiting task setting State to TaskState::Aborted. Then, it calls CallbackFunc with a default-constructed ExceptionContainer
instance.
Definition at line 442 of file Instrument.cpp.
|
inline |
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.
Definition at line 1023 of file Instrument.h.
|
inlinenoexcept |
Getter for the error code related to an error possibly occurred while the task was executed.
Definition at line 1016 of file Instrument.h.
|
inlinenoexcept |
Getter for the instrument task's current state.
Definition at line 997 of file Instrument.h.
|
inlinenoexcept |
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.
Definition at line 1010 of file Instrument.h.
|
noexcept |
Determines whether the task is locked.
Definition at line 465 of file Instrument.cpp.
|
inlineprivatevirtualnoexcept |
Determines whether the task should be kept to check its results after execution. InstrumentDataBase::RemoveTaskFromQueue().
Definition at line 1064 of file Instrument.h.
|
private |
Locks the task to prepare it for execution.
Util::InvalidStateException | is thrown if the task is not in the TaskState::Waiting state. |
Definition at line 473 of file Instrument.cpp.
|
private |
Runs the task. Override RunChild()
to define a derived task's action(s). Any exception leaving RunChild()
will terminate the instrument thread. In this case, the instrument has to be reset in order to restart it. For minor errors occurring in RunChild()
, return a TaskResultType
instance with TaskResultType::ErrorCode set to an appropriate (non-zero) value. This sets State to TaskState::Failed. Note that in this case there might be no way to retrieve the error if finished tasks are not kept (i.e. KeepFinishedTask()
returns false) and if no CallbackFunc has been set. RunChild()
is supposed to check the return value of IsAborting()
.
Instance | Handle to the instrument thread's data |
Util::InvalidStateException | is thrown if the task is not in the TaskState::Waiting or TaskState::Locked state. |
Definition at line 481 of file Instrument.cpp.
|
privatepure virtual |
Runs the task. Override RunChild()
to define a derived task's action(s). Any exception leaving RunChild()
will terminate the instrument thread. In this case, the instrument has to be reset in order to restart it. For minor errors occurring in RunChild()
, return a TaskResultType
instance with TaskResultType::ErrorCode set to an appropriate (non-zero) value. This sets State to TaskState::Failed. Note that in this case there might be no way to retrieve the error if finished tasks are not kept (i.e. KeepFinishedTask()
returns false) and if no CallbackFunc has been set. RunChild()
is supposed to check the return value of IsAborting()
.
Instance | Handle to the instrument thread's data |
Util::InvalidStateException | is thrown if the task is not in the TaskState::Waiting or TaskState::Locked state. |
Implemented in DynExp::UpdateTaskBase, DynExp::ExitTaskBase, DynExp::InitTaskBase, DynExp::ArriveAtLatchTask, DynExp::DefaultTask, DynExpInstr::TimeTaggerTasks::ResetBufferSizeTask, DynExpInstr::OutputPortTasks::ResetBufferSizeTask, DynExpInstr::InputPortTasks::ResetBufferSizeTask, DynExpInstr::FunctionGeneratorTasks::SetTriggerTask, DynExpInstr::FunctionGeneratorTasks::SetArbitraryFunctionTask, DynExpInstr::FunctionGeneratorTasks::SetPulseFunctionTask, DynExpInstr::FunctionGeneratorTasks::SetRampFunctionTask, DynExpInstr::FunctionGeneratorTasks::SetRectFunctionTask, DynExpInstr::FunctionGeneratorTasks::SetSineFunctionTask, DynExpInstr::DataStreamInstrumentTasks::SetStreamSizeTask, DynExpInstr::ZI_MFLITasks::ForceTriggerTask, DynExpInstr::ZI_MFLITasks::SetEnableTask, DynExpInstr::ZI_MFLITasks::SetSamplingRateTask, DynExpInstr::ZI_MFLITasks::SetSignalTypeTask, DynExpInstr::ZI_MFLITasks::SetTriggerEdgeTask, DynExpInstr::ZI_MFLITasks::SetTriggerModeTask, DynExpInstr::ZI_MFLITasks::SetFilterOrderTask, DynExpInstr::ZI_MFLITasks::SetTimeConstantTask, DynExpInstr::ZI_MFLITasks::AutoAdjustPhaseTask, DynExpInstr::ZI_MFLITasks::SetPhaseTask, DynExpInstr::ZI_MFLITasks::AutoAdjustSensitivityTask, DynExpInstr::ZI_MFLITasks::SetSensitivityTask, DynExpInstr::ZI_MFLITasks::StopTask, DynExpInstr::ZI_MFLITasks::StartTask, DynExpInstr::ZI_MFLITasks::ClearDataTask, DynExpInstr::ZI_MFLITasks::ReadTask, DynExpInstr::WidefieldLocalizationTasks::RecallPositionsTask, DynExpInstr::WidefieldLocalizationTasks::AnalyzeDistortionTask, DynExpInstr::WidefieldLocalizationTasks::AnalyzeWidefieldTask, DynExpInstr::WidefieldLocalizationTasks::ReadCellIDTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::SetNumRunsTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::ForceFinalSampleTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::SetConstantOutputTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::SetTriggerTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::ForceTriggerTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::ResetBufferSizeTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::RestartTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::StopTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::StartTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::ClearTask, DynExpInstr::SwabianInstrumentsPulseStreamerTasks::WriteTask, DynExpInstr::SmarActTasks::StopMotionTask, DynExpInstr::SmarActTasks::MoveRelativeTask, DynExpInstr::SmarActTasks::MoveAbsoluteTask, DynExpInstr::SmarActTasks::MoveToHomeTask, DynExpInstr::SmarActTasks::SetVelocityTask, DynExpInstr::SmarActTasks::CalibrateTask, DynExpInstr::SmarActTasks::ReferenceTask, DynExpInstr::SmarActTasks::SetHomeTask, DynExpInstr::RS_SMC100ATasks::SetTriggerTask, DynExpInstr::RS_SMC100ATasks::ForceTriggerTask, DynExpInstr::RS_SMC100ATasks::SetSweepTask, DynExpInstr::RS_SMC100ATasks::SetModulationTask, DynExpInstr::RS_SMC100ATasks::SetSineFunctionTask, DynExpInstr::RS_SMC100ATasks::StopTask, DynExpInstr::RS_SMC100ATasks::StartTask, DynExpInstr::RS_SMB100BTasks::SetTriggerTask, DynExpInstr::RS_SMB100BTasks::ForceTriggerTask, DynExpInstr::RS_SMB100BTasks::SetSweepTask, DynExpInstr::RS_SMB100BTasks::SetModulationTask, DynExpInstr::RS_SMB100BTasks::SetSineFunctionTask, DynExpInstr::RS_SMB100BTasks::StopTask, DynExpInstr::RS_SMB100BTasks::StartTask, DynExpInstr::QutoolsQuTAGTasks::ResetHBTTask, DynExpInstr::QutoolsQuTAGTasks::ConfigureHBTTask, DynExpInstr::QutoolsQuTAGTasks::SetHBTActiveTask, DynExpInstr::QutoolsQuTAGTasks::SetDelayTask, DynExpInstr::QutoolsQuTAGTasks::SetCoincidenceWindowTask, DynExpInstr::QutoolsQuTAGTasks::SetExposureTimeTask, DynExpInstr::QutoolsQuTAGTasks::ConfigureInputTask, DynExpInstr::QutoolsQuTAGTasks::ClearTask, DynExpInstr::QutoolsQuTAGTasks::SetStreamSizeTask, DynExpInstr::QutoolsQuTAGTasks::ReadDataTask, DynExpInstr::PVCamTasks::StopCapturingTask, DynExpInstr::PVCamTasks::StartCapturingTask, DynExpInstr::PVCamTasks::CaptureSingleTask, DynExpInstr::PVCamTasks::SetExposureTimeTask, DynExpInstr::PVCamTasks::SetCameraMode, DynExpInstr::PI_C_862_Tasks::StopMotionTask, DynExpInstr::PI_C_862_Tasks::MoveRelativeTask, DynExpInstr::PI_C_862_Tasks::MoveAbsoluteTask, DynExpInstr::PI_C_862_Tasks::MoveToHomeTask, DynExpInstr::PI_C_862_Tasks::SetVelocityTask, DynExpInstr::PI_C_862_Tasks::ReferenceTask, DynExpInstr::PI_C_862_Tasks::SetHomeTask, DynExpInstr::NIDAQDigitalOutTasks::RestartTask, DynExpInstr::NIDAQDigitalOutTasks::StopTask, DynExpInstr::NIDAQDigitalOutTasks::StartTask, DynExpInstr::NIDAQDigitalOutTasks::ClearTask, DynExpInstr::NIDAQDigitalOutTasks::WriteTask, DynExpInstr::NIDAQDigitalInTasks::RestartTask, DynExpInstr::NIDAQDigitalInTasks::StopTask, DynExpInstr::NIDAQDigitalInTasks::StartTask, DynExpInstr::NIDAQDigitalInTasks::ReadTask, DynExpInstr::NIDAQAnalogOutTasks::RestartTask, DynExpInstr::NIDAQAnalogOutTasks::StopTask, DynExpInstr::NIDAQAnalogOutTasks::StartTask, DynExpInstr::NIDAQAnalogOutTasks::ClearTask, DynExpInstr::NIDAQAnalogOutTasks::WriteTask, DynExpInstr::NIDAQAnalogInTasks::RestartTask, DynExpInstr::NIDAQAnalogInTasks::StopTask, DynExpInstr::NIDAQAnalogInTasks::StartTask, DynExpInstr::NIDAQAnalogInTasks::ReadTask, DynExpInstr::NetworkTimeTaggerTasks::ResetHBTTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkTimeTaggerTasks::ConfigureHBTTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkTimeTaggerTasks::SetHBTActiveTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkTimeTaggerTasks::SetDelayTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkTimeTaggerTasks::SetCoincidenceWindowTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkTimeTaggerTasks::SetExposureTimeTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkTimeTaggerTasks::ConfigureInputTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkTimeTaggerTasks::ClearTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkTimeTaggerTasks::ReadTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkSpectrometerTasks::AbortTask, DynExpInstr::NetworkSpectrometerTasks::RecordTask, DynExpInstr::NetworkSpectrometerTasks::SetSetSilentModeTask, DynExpInstr::NetworkSpectrometerTasks::SetFrequencyRangeTask, DynExpInstr::NetworkSpectrometerTasks::SetExposureTimeTask, DynExpInstr::NetworkDigitalOutTasks::SetDefaultTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDigitalOutTasks::SetTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDataStreamInstrumentTasks::ResetStreamSizeTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDataStreamInstrumentTasks::SetStreamSizeTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDataStreamInstrumentTasks::RestartTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDataStreamInstrumentTasks::StopTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDataStreamInstrumentTasks::StartTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDataStreamInstrumentTasks::ClearTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDataStreamInstrumentTasks::WriteTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDataStreamInstrumentTasks::ReadTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkAnalogOutTasks::SetDefaultTask< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkAnalogOutTasks::SetTask< BaseInstr,, gRPCStubs >, DynExpInstr::NenionLeakvalveF3Tasks::StopMotionTask, DynExpInstr::NenionLeakvalveF3Tasks::MoveRelativeTask, DynExpInstr::NenionLeakvalveF3Tasks::MoveAbsoluteTask, DynExpInstr::NenionLeakvalveF3Tasks::MoveToHomeTask, DynExpInstr::NenionLeakvalveF3Tasks::SetVelocityTask, DynExpInstr::NenionLeakvalveF3Tasks::ReferenceTask, DynExpInstr::NenionLeakvalveF3Tasks::SetHomeTask, and DynExpInstr::DummyDataStreamInstrumentTasks::ResetStreamSizeTask.
|
private |
This callback function is called after the task has finished (either successfully or not) with a reference to the current task and with a reference to the exception which occurred during the task execution (if an exception has occurred).
Definition at line 1072 of file Instrument.h.
|
private |
Holds the error code of an error which occurred during execution of the task function.
Definition at line 1079 of file Instrument.h.
InstrumentBaseOnlyType DynExp::TaskBase::InstrumentBaseOnly |
Allow exclusive access to some of TaskBase's
private methods to InstrumentBase
.
Definition at line 1026 of file Instrument.h.
InstrumentDataBaseOnlyType DynExp::TaskBase::InstrumentDataBaseOnly |
Allow exclusive access to some of TaskBase's
private methods to InstrumentDataBase
.
Definition at line 1027 of file Instrument.h.
|
private |
Indicates whether the task should abort. Refer to Abort()
and IsAborting()
.
Definition at line 1086 of file Instrument.h.
|
private |
Holds the task's current state. Refer to TaskBase::TaskState.
Definition at line 1078 of file Instrument.h.