17#include "vrpn_Analog.h"
18#include "vrpn_Tracker.h"
27 for (
size_t i = 0; i < 3; i++) {
44 values[0] = values[1] = values[2] = 0.0;
45 time.tv_sec = 0; time.tv_usec = 0; };
90 double d_update_interval;
91 struct timeval d_prevtime;
92 bool d_report_changes;
103 static void VRPN_CALLBACK handle_analog_update (
void *userdata,
113 std::string d_magnetometer_name;
135 float update_rate,
bool report_changes = VRPN_FALSE);
142 double d_update_interval;
143 struct timeval d_prevtime;
144 bool d_report_changes;
150 double d_gravity_restore_rate;
151 double d_north_restore_rate;
153 struct timeval d_prev_update_time;
154 void update_matrix_based_on_values(
double time_interval);
157 int teardown_vector(
vrpn_IMU_Vector *vector, vrpn_ANALOGCHANGEHANDLER f);
159 static void VRPN_CALLBACK handle_analog_update(
void *userdata,
virtual void report_changes(vrpn_uint32 class_of_service=vrpn_CONNECTION_LOW_LATENCY, const struct timeval time=vrpn_ANALOG_NOW)
Makes public the protected base class function
Generic connection class not specific to the transport mechanism.
定义 vrpn_Connection.h:562
Describes information describing an IMU axis. It describes the analog channel to use to drive the axi...
定义 vrpn_Tracker_IMU.h:24
Normalizes the three directions for a magnetometer into a unit vector.
定义 vrpn_Tracker_IMU.h:65
double d_mins[3]
Minimum, maximum, and current values for each axis.
定义 vrpn_Tracker_IMU.h:98
vrpn_IMU_Vector d_vector
Axes to handle gathering and scaling the required data.
定义 vrpn_Tracker_IMU.h:95
virtual VRPN_API void mainloop()
Override base class function.
VRPN_API vrpn_IMU_Magnetometer(std::string const &name, vrpn_Connection *output_con, vrpn_IMU_Axis_Params params, float update_rate, bool report_changes=VRPN_FALSE)
Constructor
This class will turn set of two or three analog devices into a tracker by
定义 vrpn_Tracker_IMU.h:131
virtual VRPN_API void mainloop()
定义 vrpn_Tracker_IMU.h:107