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

Public Types

enum class  NenionLeakvalveF3StatusType {
  Ready , Moving , Arrived , LocalMode ,
  AnalogMode , Disabled
}
 
- Public Types inherited from DynExpInstr::PositionerStageData
using PositionType = signed long long
 Numeric type to store the stage positions. More...
 
- Public Types inherited from DynExp::InstrumentDataBase
using TaskQueueType = std::list< std::unique_ptr< TaskBase > >
 Type of an instrument task queue owning the tasks within. More...
 
using TaskQueueIteratorType = TaskQueueType::const_iterator
 Const iterator type to elements of TaskQueueType. More...
 

Public Member Functions

 NenionLeakvalveF3Data ()=default
 
virtual ~NenionLeakvalveF3Data ()=default
 
auto GetNenionLeakvalveF3Status () const noexcept
 
auto GetHomePosition () const noexcept
 
void SetHomePosition (PositionType HomePosition) noexcept
 
- Public Member Functions inherited from DynExpInstr::PositionerStageData
 PositionerStageData ()=default
 
virtual ~PositionerStageData ()=default
 
auto GetCurrentPosition () const noexcept
 Returns Position. More...
 
auto GetVelocity () const noexcept
 Returns Velocity. More...
 
void SetCurrentPosition (PositionType Position) noexcept
 Sets Position to Position. More...
 
void SetVelocity (PositionType Velocity) noexcept
 Sets Velocity to Velocity. More...
 
bool IsMoving () const noexcept
 Returns whether the stage is currently moving (result of IsMovingChild()) More...
 
bool HasArrived () const noexcept
 Returns whether the stage has arrived at its destiny position (result of HasArrivedChild()) More...
 
bool HasFailed () const noexcept
 Returns whether the stage is in an error state, i.e. moving has failed (result of HasFailedChild()) More...
 
bool IsReferenced () const noexcept
 Returns whether a closed-loop positioner knows its position in respect to its zero point (result of IsReferencedChild()) More...
 
- Public Member Functions inherited from DynExp::InstrumentDataBase
 InstrumentDataBase ()
 
virtual ~InstrumentDataBase ()
 
auto GetLastUpdateTime () const
 Getter for LastUpdate. More...
 
auto GetException () const noexcept
 Getter for InstrumentDataBase::InstrumentException. More...
 
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. More...
 
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. More...
 
std::unique_ptr< TaskBasePopTaskFront ()
 Removes a task from the front of an instrument's task queue. More...
 
std::unique_ptr< TaskBasePopTaskBack ()
 Removes a task from the back of an instrument's task queue. More...
 
auto GetTaskFront () noexcept
 Getter for first enqueued task. More...
 
auto GetTaskBack () noexcept
 Getter for last enqueued task. More...
 
size_t GetNumEnqueuedTasks () const noexcept
 Getter for the instrument task queue's length. More...
 
std::unique_ptr< TaskBasePopFinishedTask ()
 Removes a task from the front of an instrument's list of finished tasks. More...
 
size_t GetNumFinishedTasks () const noexcept
 Getter for the length of the instrument's list of finished tasks. More...
 
bool IsQueueClosed () const noexcept
 Determines whether the instrument task queue is closed. More...
 
- Public Member Functions inherited from Util::INonCopyable
 INonCopyable (const INonCopyable &)=delete
 
INonCopyableoperator= (const INonCopyable &)=delete
 

Public Attributes

DynExp::LinkedObjectWrapperContainer< DynExp::SerialCommunicationHardwareAdapterHardwareAdapter
 
- Public Attributes inherited from DynExp::InstrumentDataBase
InstrumentBaseOnlyType InstrumentBaseOnly
 Allow exclusive access to some of InstrumentDataBase's private methods to InstrumentBase. More...
 
InstrumenThreadOnlyType InstrumentThreadOnly
 Allow exclusive access to some of InstrumentDataBase's private methods to the instrument thread InstrumentThreadMain(). More...
 

Private Member Functions

void ResetImpl (dispatch_tag< PositionerStageData >) override final
 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. More...
 
virtual void ResetImpl (dispatch_tag< NenionLeakvalveF3Data >)
 
virtual bool IsMovingChild () const noexcept override
 Returns whether the stage is currently moving (result of IsMovingChild()) More...
 
virtual bool HasArrivedChild () const noexcept override
 Returns whether the stage has arrived at its destiny position (result of HasArrivedChild()) More...
 
virtual bool HasFailedChild () const noexcept override
 Returns whether the stage is in an error state, i.e. moving has failed (result of HasFailedChild()) More...
 
virtual bool IsReferencedChild () const noexcept override
 Returns whether a closed-loop positioner knows its position in respect to its zero point (result of IsReferencedChild()) More...
 

Private Attributes

NenionLeakvalveF3StatusType NenionLeakvalveF3Status
 
size_t NumFailedStatusUpdateAttempts = 0
 
PositionType HomePosition = 0
 

Friends

class NenionLeakvalveF3Tasks::UpdateTask
 

Additional Inherited Members

- Protected Member Functions inherited from Util::ISynchronizedPointerLockable
 ISynchronizedPointerLockable ()
 
 ~ISynchronizedPointerLockable ()
 Object should never be destroyed before completely unlocked. More...
 
- Protected Member Functions inherited from Util::INonCopyable
constexpr INonCopyable ()=default
 
 ~INonCopyable ()=default
 

Detailed Description

Definition at line 106 of file NenionLeakvalveF3.h.

Member Enumeration Documentation

◆ NenionLeakvalveF3StatusType

Enumerator
Ready 
Moving 
Arrived 
LocalMode 
AnalogMode 
Disabled 

Definition at line 111 of file NenionLeakvalveF3.h.

Constructor & Destructor Documentation

◆ NenionLeakvalveF3Data()

DynExpInstr::NenionLeakvalveF3Data::NenionLeakvalveF3Data ( )
default

◆ ~NenionLeakvalveF3Data()

virtual DynExpInstr::NenionLeakvalveF3Data::~NenionLeakvalveF3Data ( )
virtualdefault

Member Function Documentation

◆ GetHomePosition()

auto DynExpInstr::NenionLeakvalveF3Data::GetHomePosition ( ) const
inlinenoexcept

Definition at line 118 of file NenionLeakvalveF3.h.

◆ GetNenionLeakvalveF3Status()

auto DynExpInstr::NenionLeakvalveF3Data::GetNenionLeakvalveF3Status ( ) const
inlinenoexcept

Definition at line 116 of file NenionLeakvalveF3.h.

◆ HasArrivedChild()

virtual bool DynExpInstr::NenionLeakvalveF3Data::HasArrivedChild ( ) const
inlineoverrideprivatevirtualnoexcept

Returns whether the stage has arrived at its destiny position (result of HasArrivedChild())

Implements DynExpInstr::PositionerStageData.

Definition at line 128 of file NenionLeakvalveF3.h.

◆ HasFailedChild()

bool DynExpInstr::NenionLeakvalveF3Data::HasFailedChild ( ) const
overrideprivatevirtualnoexcept

Returns whether the stage is in an error state, i.e. moving has failed (result of HasFailedChild())

Implements DynExpInstr::PositionerStageData.

Definition at line 202 of file NenionLeakvalveF3.cpp.

◆ IsMovingChild()

virtual bool DynExpInstr::NenionLeakvalveF3Data::IsMovingChild ( ) const
inlineoverrideprivatevirtualnoexcept

Returns whether the stage is currently moving (result of IsMovingChild())

Implements DynExpInstr::PositionerStageData.

Definition at line 127 of file NenionLeakvalveF3.h.

◆ IsReferencedChild()

virtual bool DynExpInstr::NenionLeakvalveF3Data::IsReferencedChild ( ) const
inlineoverrideprivatevirtualnoexcept

Returns whether a closed-loop positioner knows its position in respect to its zero point (result of IsReferencedChild())

Reimplemented from DynExpInstr::PositionerStageData.

Definition at line 130 of file NenionLeakvalveF3.h.

◆ ResetImpl() [1/2]

virtual void DynExpInstr::NenionLeakvalveF3Data::ResetImpl ( dispatch_tag< NenionLeakvalveF3Data )
inlineprivatevirtual

Definition at line 125 of file NenionLeakvalveF3.h.

◆ ResetImpl() [2/2]

void DynExpInstr::NenionLeakvalveF3Data::ResetImpl ( dispatch_tag< PositionerStageData )
finaloverrideprivatevirtual

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 from DynExpInstr::PositionerStageData.

Definition at line 193 of file NenionLeakvalveF3.cpp.

◆ SetHomePosition()

void DynExpInstr::NenionLeakvalveF3Data::SetHomePosition ( PositionType  HomePosition)
inlinenoexcept

Definition at line 119 of file NenionLeakvalveF3.h.

Friends And Related Function Documentation

◆ NenionLeakvalveF3Tasks::UpdateTask

Definition at line 108 of file NenionLeakvalveF3.h.

Member Data Documentation

◆ HardwareAdapter

DynExp::LinkedObjectWrapperContainer<DynExp::SerialCommunicationHardwareAdapter> DynExpInstr::NenionLeakvalveF3Data::HardwareAdapter

Definition at line 121 of file NenionLeakvalveF3.h.

◆ HomePosition

PositionType DynExpInstr::NenionLeakvalveF3Data::HomePosition = 0
private

Definition at line 134 of file NenionLeakvalveF3.h.

◆ NenionLeakvalveF3Status

NenionLeakvalveF3StatusType DynExpInstr::NenionLeakvalveF3Data::NenionLeakvalveF3Status
private

Definition at line 132 of file NenionLeakvalveF3.h.

◆ NumFailedStatusUpdateAttempts

size_t DynExpInstr::NenionLeakvalveF3Data::NumFailedStatusUpdateAttempts = 0
private

Definition at line 133 of file NenionLeakvalveF3.h.


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