30class VRPN_API vrpn_National_Instruments_Server :
public vrpn_Analog,
public vrpn_Analog_Output {
33 const char *boardName =
"PCI-6713",
34 int numInChannels = vrpn_CHANNEL_MAX,
35 int numOutChannels = vrpn_CHANNEL_MAX,
36 double minInputReportDelaySecs = 0.0,
37 bool inBipolar =
false,
38 int inputMode = vrpn_NI_INPUT_MODE_DIFFERENTIAL,
39 int inputRange = vrpn_NI_INPUT_RANGE_10V,
40 bool driveAIS =
false,
42 bool outBipolar =
false,
43 double minOutVoltage = 0.0,
44 double maxOutVoltage = 10.0);
45 virtual ~vrpn_National_Instruments_Server();
51#ifdef VRPN_USE_NATIONAL_INSTRUMENTS_MX
52 TaskHandle d_analog_task_handle;
53 TaskHandle d_analog_out_task_handle;
55 void reportError(int32 errnumber, vrpn_bool exitProgram = vrpn_false);
57 short d_device_number;
61 double d_in_min_delay;
62 double d_out_min_voltage;
63 double d_out_max_voltage;
65 struct timeval d_last_report_time;
95 virtual bool report_num_channels( vrpn_uint32 class_of_service = vrpn_CONNECTION_RELIABLE );
96 virtual vrpn_int32 encode_num_channels_to(
char* buf, vrpn_int32 num );
103class VRPN_API vrpn_Analog_Output_Server_NI :
public vrpn_Analog_Output {
106 const char *boardName =
"PCI-6713",
107 vrpn_int16 numChannels = vrpn_CHANNEL_MAX,
108 bool bipolar =
false,
109 double minVoltage = 0.0,
110 double maxVoltage = 10.0);
111 virtual ~vrpn_Analog_Output_Server_NI(
void);
116 short NI_device_number;
117 short NI_num_channels;
145 virtual bool report_num_channels( vrpn_uint32 class_of_service = vrpn_CONNECTION_RELIABLE );
146 virtual vrpn_int32 encode_num_channels_to(
char* buf, vrpn_int32 num );