Class MotionInterface¶
Defined in File motion_interface.h
Class Documentation¶
-
class MotionInterface¶
acam motion interface class
This class defines the interface to the PI controllers used for the filter wheel and dust cover.
Public Functions
-
inline MotionInterface()¶
-
inline std::string get_current_filtername() const¶
-
inline std::string get_current_coverpos() const¶
-
long initialize_class()¶
-
long open()¶
opens the PI socket connection
-
long close()¶
closes the PI socket connection
-
bool is_open()¶
are motor controllers connected?
-
long is_open(std::string arg, std::string &retstring)¶
are motor controllers connected?
-
long home(std::string name_in, std::string &help)¶
home specified motors
-
long is_home(std::string name_in, std::string &retstring)¶
return the home state of the specified motors
-
long move_abs(std::string name, float pos)¶
-
long send_command(const std::string &name, std::string cmd)¶
writes command as received to the master controller, no reply
-
long send_command(const std::string &name, std::string cmd, std::string &retstring)¶
writes command?, reads reply
-
long motion(std::string args, std::string &retstring)¶
basic motion test commands
-
long filter(std::string args, std::string &retstring)¶
set or get the filter
-
long get_current_filter(std::string &currname)¶
get current filter posname
-
long get_current_filter(std::string &currname, int &currid, float &currpos)¶
get current filter posname,id,pos
-
long cover(std::string posname, std::string &retstring)¶
set or get the dust cover
-
long read_cover(std::string &retstring)¶
Public Members
-
Physik_Instrumente::Interface<Physik_Instrumente::StepperInfo> motorinterface¶
-
std::mutex pi_mutex¶
mutex to protect multi-threaded access to PI controller
-
volatile std::atomic<int> motors_running¶
number of motors that are running in threads
-
volatile std::atomic<long> thr_error¶
error state of threads
-
std::mutex wait_mtx¶
mutex object for waiting for threads
-
std::condition_variable cv¶
condition variable for waiting for threads
-
inline MotionInterface()¶