Scope
|
#include <XYControl.h>
Public Member Functions | |
~XYControl () | |
virtual void | Initialize (parameters::XYControl &_params) |
virtual void | StartPolling () |
virtual void | StopPolling () |
virtual void | UpdatePositionValues () |
virtual void | SetZero () |
virtual void | ZeroXAxis () |
virtual void | ZeroYAxis () |
virtual void | MoveRelative (const double &xrel, const double &yrel) |
virtual void | MoveAbsolute (const double &xabs, const double &yabs) |
Protected Member Functions | |
XYControl (XYControl &) | |
XYControl | operator= (XYControl) |
Protected Attributes | |
bool | initialized |
StopCondition | stop |
std::future< bool > | fut |
ScopeController | scope_controller |
std::array< ScopeNumber< double > *, 2 > | pos |
uint32_t | pollinterval |
Base class to control an xy-stage.
Definition at line 14 of file XYControl.h.
|
protected |
disable copy
scope::XYControl::~XYControl | ( | ) |
If pollthread was started, request stop and wait for finish.
Definition at line 13 of file XYControl.cpp.
|
virtual |
Initialize hardware.
Get the ScopeNumbers by reference so we can automatically update GUI by writing to xpos and ypos. Call StartPolling to start the polling thread, since StartPolling is virtual we always call the most derived version of it (which should be overwritten to start the derived RunPolling). If pollinterval is zero we do not start the polling thread.
Definition at line 17 of file XYControl.cpp.
|
virtual |
Start the worker function in the pollthread.
Definition at line 29 of file XYControl.cpp.
|
virtual |
Stop the worker function.
Definition at line 42 of file XYControl.cpp.
|
virtual |
Updates xpos and ypos with the current device position.
Here only a dummy to check if polling works!
Definition at line 48 of file XYControl.cpp.
|
inlinevirtual |
Sets current position as zero.
Definition at line 64 of file XYControl.h.
|
inlinevirtual |
Sets current X position as zero.
Definition at line 67 of file XYControl.h.
|
inlinevirtual |
Sets current Y position as zero.
Definition at line 70 of file XYControl.h.
|
inlinevirtual |
Relative movement.
Definition at line 73 of file XYControl.h.
|
inlinevirtual |
Absolute movement.
Definition at line 76 of file XYControl.h.
|
protected |
true if initialized called successfully
Definition at line 18 of file XYControl.h.
|
protected |
to signal the async polling thread to stop
Definition at line 21 of file XYControl.h.
|
protected |
future for the async polling thread
Definition at line 24 of file XYControl.h.
|
protected |
our ScopeController here
Definition at line 27 of file XYControl.h.
|
protected |
pointers to a ScopeNumber that is updated with the polled x and y positions
Definition at line 30 of file XYControl.h.
|
protected |
interval (in milliseconds) to poll device
Definition at line 33 of file XYControl.h.