/* ************************************************************** */ /* * XMAG.H * * Zachary Wolf * 11/16/00 */ #ifndef __XMAG_HEADER #define __XMAG_HEADER #if defined(__cplusplus) || defined(__cplusplus__) extern "C" { #endif /* ************************************************************** */ /* CONSTANTS */ #define XMAG_MAX_CMD 80 #define XMAG_MAX_NUM_DEV 8 #define XMAG_MAX_NAME_LENGTH 40 /* ************************************************************* */ /* ENUM DEFINITIONS */ enum xmag_device_type_enum {XMAG_VRZ404a_VRZ404b, XMAG_NONE}; /* ************************************************************* */ /* STRUCTURE DEFINITIONS */ struct xmag_param_struct { int board_addr; /* GPIB board addr */ int vrz404a_addr; /* VRZ404a GPIB address */ int vrz404b_addr; /* VRZ404b GPIB address */ enum xmag_device_type_enum device_type; /* Type of devices being used */ int num_dev; /* Number of devices in the system */ char dev_name[XMAG_MAX_NUM_DEV][XMAG_MAX_NAME_LENGTH]; /* Information about each device */ }; /* ************************************************************** */ /* PUBLIC FUNCTION DECLARATIONS */ void xmag_init(char log_file_in[], struct xmag_param_struct xmag_param_in); void xmag_get_num_dev(int* num_dev); void xmag_get_dev_name(int dev_num, char* dev_name); void xmag_get_dev_meas(int dev_num, double* dev_meas); void xmag_exit(void); /* ************************************************************** */ /* DONE */ #if defined(__cplusplus) || defined(__cplusplus__) } #endif #endif