/* ************************************************************** */ /* * MOVEXY.H * * Zachary Wolf * 2/2/00 */ #ifndef __MOVEXY_HEADER #define __MOVEXY_HEADER #if defined(__cplusplus) || defined(__cplusplus__) extern "C" { #endif /* ************************************************************* */ /* ENUM DEFINITIONS */ /* Device type: the first device is the move device, the second is the position read device */ enum movexy_device_type_enum {MOVEXY_MC4_MC4, MOVEXY_MANUAL_NONE, MOVEXY_NONE_NONE}; /* ************************************************************* */ /* STRUCTURE DEFINITIONS */ struct movexy_param_struct { int board_addr; /* GPIB board addr */ int mc4_addr; /* MC4 GPIB address */ enum movexy_device_type_enum device_type; /* Type of devices being used */ char mc4_x_axis; /* MC4 x axis name, W, X, Y, or Z */ char mc4_y_axis; /* MC4 y axis name, W, X, Y, or Z */ double acc; /* Stage acceleration (m/s/s) */ double vel; /* Stage velocity (m/s) */ }; /* ************************************************************** */ /* PUBLIC FUNCTION DECLARATIONS */ void movexy_init(char log_file_in[], struct movexy_param_struct movexy_param); void movexy_abs_move(double x_pos, double y_pos); void movexy_get_pos(double* x_pos, double* y_pos); void movexy_zero(void); void movexy_exit(void); /* ************************************************************** */ /* CONSTANTS */ #define MOVEXY_MAX_CMD 80 /* ************************************************************** */ /* DONE */ #if defined(__cplusplus) || defined(__cplusplus__) } #endif #endif