/* ************************************************************** */ /* * VMAG.H * * Zachary Wolf * 12/15/00 */ #ifndef __VMAG_HEADER #define __VMAG_HEADER #if defined(__cplusplus) || defined(__cplusplus__) extern "C" { #endif /* ************************************************************** */ /* CONSTANTS */ #define VMAG_MAX_CMD 80 /* ************************************************************* */ /* ENUM DEFINITIONS */ enum vmag_device_type_enum {VMAG_HP3457, VMAG_K7011_HP3457, VMAG_NONE}; enum vmag_binary_enum {VMAG_TRUE, VMAG_FALSE}; /* ************************************************************* */ /* STRUCTURE DEFINITIONS */ struct vmag_param_struct { int board_addr; /* GPIB board addr */ int hp3457_addr; /* HP3457 GPIB address */ int k7011_addr; /* K7011 GPIB address */ enum vmag_device_type_enum device_type; /* Type of vmag readout system being used */ int hp3457_chan; /* HP3457 channel if the multiplexer is not being used */ int k7011_card_num; /* K7011 multiplexer card number */ int k7011_hp3457_chan; /* HP3457 channel the K7011 multiplexer is plugged in to */ int k7011_chan; /* K7011 channel for the magnet voltage */ enum vmag_binary_enum show_ui; /* Show user interface if true, don't show otherwise */ }; /* ************************************************************** */ /* PUBLIC FUNCTION DECLARATIONS */ void vmag_init(char log_file_in[], struct vmag_param_struct vmag_param); void vmag_get_voltage(double* voltage); void vmag_exit(void); /* ************************************************************** */ /* DONE */ #if defined(__cplusplus) || defined(__cplusplus__) } #endif #endif