|
DynExp
Highly flexible laboratory automation for dynamically changing experiments.
|
Data class for PositionerStage.
More...
#include <Stage.h>
Inheritance diagram for DynExpInstr::PositionerStageData:Public Types | |
| using | PositionType = signed long long |
| Numeric type to store the stage positions. | |
Public Types inherited from DynExp::InstrumentDataBase | |
| using | TaskQueueType = std::list< std::unique_ptr< TaskBase > > |
| Type of an instrument task queue owning the tasks within. | |
| using | TaskQueueIteratorType = TaskQueueType::const_iterator |
Const iterator type to elements of TaskQueueType. | |
Public Member Functions | |
| PositionerStageData ()=default | |
| virtual | ~PositionerStageData ()=default |
| auto | GetCurrentPosition () const noexcept |
| Returns Position. | |
| auto | GetVelocity () const noexcept |
| Returns Velocity. | |
| void | SetCurrentPosition (PositionType Position) noexcept |
Sets Position to Position. | |
| void | SetVelocity (PositionType Velocity) noexcept |
Sets Velocity to Velocity. | |
| bool | IsMoving () const noexcept |
Returns whether the stage is currently moving (result of IsMovingChild()) | |
| bool | HasArrived () const noexcept |
Returns whether the stage has arrived at its destiny position (result of HasArrivedChild()) | |
| bool | HasFailed () const noexcept |
Returns whether the stage is in an error state, i.e. moving has failed (result of HasFailedChild()) | |
| bool | IsReferenced () const noexcept |
Returns whether a closed-loop positioner knows its position in respect to its zero point (result of IsReferencedChild()) | |
Public Member Functions inherited from DynExp::InstrumentDataBase | |
| InstrumentDataBase () | |
| virtual | ~InstrumentDataBase () |
| auto | GetLastUpdateTime () const |
| Getter for LastUpdate. | |
| auto | GetException () const noexcept |
| Getter for InstrumentDataBase::InstrumentException. | |
| void | EnqueueTask (std::unique_ptr< TaskBase > &&Task) |
| Enqueues a task at the back of an instrument's task queue and notifies the instrument about the new task. | |
| void | EnqueuePriorityTask (std::unique_ptr< TaskBase > &&Task) |
| Enqueues a task at the front of an instrument's task queue and notifies the instrument about the new task. | |
| std::unique_ptr< TaskBase > | PopTaskFront () |
| Removes a task from the front of an instrument's task queue. | |
| std::unique_ptr< TaskBase > | PopTaskBack () |
| Removes a task from the back of an instrument's task queue. | |
| auto | GetTaskFront () noexcept |
| Getter for first enqueued task. | |
| auto | GetTaskBack () noexcept |
| Getter for last enqueued task. | |
| size_t | GetNumEnqueuedTasks () const noexcept |
| Getter for the instrument task queue's length. | |
| std::unique_ptr< TaskBase > | PopFinishedTask () |
| Removes a task from the front of an instrument's list of finished tasks. | |
| size_t | GetNumFinishedTasks () const noexcept |
| Getter for the length of the instrument's list of finished tasks. | |
| bool | IsQueueClosed () const noexcept |
| Determines whether the instrument task queue is closed. | |
Public Member Functions inherited from Util::INonCopyable | |
| INonCopyable (const INonCopyable &)=delete | |
| INonCopyable & | operator= (const INonCopyable &)=delete |
Private Member Functions | |
| void | ResetImpl (dispatch_tag< InstrumentDataBase >) override final |
| virtual void | ResetImpl (dispatch_tag< PositionerStageData >) |
Refer to DynExp::InstrumentDataBase::Reset(). Using tag dispatch mechanism to ensure that ResetImpl() of every derived class gets called - starting from InstrumentDataBase, descending the inheritance hierarchy. Override in order to reset derived classes. | |
Override | |
Override by derived classes. | |
| virtual bool | IsMovingChild () const noexcept=0 |
Returns whether the stage is currently moving (result of IsMovingChild()) | |
| virtual bool | HasArrivedChild () const noexcept=0 |
Returns whether the stage has arrived at its destiny position (result of HasArrivedChild()) | |
| virtual bool | HasFailedChild () const noexcept=0 |
Returns whether the stage is in an error state, i.e. moving has failed (result of HasFailedChild()) | |
| virtual bool | IsReferencedChild () const noexcept |
Returns whether a closed-loop positioner knows its position in respect to its zero point (result of IsReferencedChild()) | |
Private Attributes | |
| PositionType | Position = 0 |
| Position in nm if the respective stage supports SI units. Otherwise, in units of steps performed. | |
| PositionType | Velocity = 0 |
| Velocity in nm/s if the respective stage supports SI units. Otherwise, in units of steps/s. | |
Additional Inherited Members | |
Public Attributes inherited from DynExp::InstrumentDataBase | |
| InstrumentBaseOnlyType | InstrumentBaseOnly |
Allow exclusive access to some of InstrumentDataBase's private methods to InstrumentBase. | |
| InstrumenThreadOnlyType | InstrumentThreadOnly |
Allow exclusive access to some of InstrumentDataBase's private methods to the instrument thread InstrumentThreadMain(). | |
Protected Member Functions inherited from Util::ISynchronizedPointerLockable | |
| ISynchronizedPointerLockable () | |
| ~ISynchronizedPointerLockable () | |
| Object should never be destroyed before completely unlocked. | |
Protected Member Functions inherited from Util::INonCopyable | |
| constexpr | INonCopyable ()=default |
| ~INonCopyable ()=default | |
Data class for PositionerStage.
| using DynExpInstr::PositionerStageData::PositionType = signed long long |
|
default |
|
virtualdefault |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
Returns whether the stage has arrived at its destiny position (result of HasArrivedChild())
|
privatepure virtualnoexcept |
Returns whether the stage has arrived at its destiny position (result of HasArrivedChild())
Implemented in DynExpInstr::NenionLeakvalveF3Data, DynExpInstr::PI_C_862StageData, and DynExpInstr::SmarActData.
|
inlinenoexcept |
Returns whether the stage is in an error state, i.e. moving has failed (result of HasFailedChild())
|
privatepure virtualnoexcept |
Returns whether the stage is in an error state, i.e. moving has failed (result of HasFailedChild())
Implemented in DynExpInstr::NenionLeakvalveF3Data, DynExpInstr::PI_C_862StageData, and DynExpInstr::SmarActData.
|
inlinenoexcept |
Returns whether the stage is currently moving (result of IsMovingChild())
|
privatepure virtualnoexcept |
Returns whether the stage is currently moving (result of IsMovingChild())
Implemented in DynExpInstr::NenionLeakvalveF3Data, DynExpInstr::PI_C_862StageData, and DynExpInstr::SmarActData.
|
inlinenoexcept |
Returns whether a closed-loop positioner knows its position in respect to its zero point (result of IsReferencedChild())
|
inlineprivatevirtualnoexcept |
Returns whether a closed-loop positioner knows its position in respect to its zero point (result of IsReferencedChild())
Reimplemented in DynExpInstr::NenionLeakvalveF3Data, and DynExpInstr::SmarActData.
|
finaloverrideprivate |
|
inlineprivatevirtual |
Refer to DynExp::InstrumentDataBase::Reset(). Using tag dispatch mechanism to ensure that ResetImpl() of every derived class gets called - starting from InstrumentDataBase, descending the inheritance hierarchy. Override in order to reset derived classes.
Reimplemented in DynExpInstr::NenionLeakvalveF3Data, DynExpInstr::PI_C_862StageData, and DynExpInstr::SmarActData.
|
inlinenoexcept |
|
inlinenoexcept |
|
private |
|
private |