Go to the documentation of this file.
30 #ifndef PHIDGETS_API_SPATIAL_H
31 #define PHIDGETS_API_SPATIAL_H
35 #include <libphidget22/phidget22.h>
47 int32_t serial_number,
int hub_port,
bool is_hub_port_device,
48 std::function<
void(
const double[3],
const double[3],
const double[3],
51 std::function<
void(
const double[4],
double)> algorithm_data_handler,
52 std::function<
void()> attach_handler =
nullptr,
53 std::function<
void()> detach_handler =
nullptr);
58 double cc_offset1,
double cc_offset2,
59 double cc_gain0,
double cc_gain1,
60 double cc_gain2,
double cc_T0,
61 double cc_T1,
double cc_T2,
62 double cc_T3,
double cc_T4,
68 double angularVelocityDeltaThreshold,
69 double accelerationThreshold,
double magTime,
70 double accelTime,
double biasTime);
80 void dataHandler(
const double acceleration[3],
const double angular_rate[3],
81 const double magnetic_field[3],
double timestamp)
const;
84 double timestamp)
const;
90 std::function<void(
const double[3],
const double[3],
const double[3],
94 std::function<void(
const double quaternion[4],
double)>
102 static void DataHandler(PhidgetSpatialHandle input_handle,
void *ctx,
103 const double acceleration[3],
104 const double angular_rate[3],
105 const double magnetic_field[3],
double timestamp);
107 void *ctx,
const double quaternion[4],
109 static void AttachHandler(PhidgetHandle input_handle,
void *ctx);
110 static void DetachHandler(PhidgetHandle input_handle,
void *ctx);
115 #endif // PHIDGETS_API_SPATIAL_H
std::function< void(const double[3], const double[3], const double[3], double)> data_handler_
void setHeatingEnabled(bool heating_enabled)
void setCompassCorrectionParameters(double cc_mag_field, double cc_offset0, double cc_offset1, double cc_offset2, double cc_gain0, double cc_gain1, double cc_gain2, double cc_T0, double cc_T1, double cc_T2, double cc_T3, double cc_T4, double cc_T5)
std::function< void()> attach_handler_
static void AlgorithmDataHandler(PhidgetSpatialHandle input_handle, void *ctx, const double quaternion[4], double timestamp)
void setDataInterval(uint32_t interval_ms) const
virtual void attachHandler()
std::function< void(const double quaternion[4], double)> algorithm_data_handler_
PhidgetSpatialHandle spatial_handle_
void dataHandler(const double acceleration[3], const double angular_rate[3], const double magnetic_field[3], double timestamp) const
virtual void detachHandler()
static void DetachHandler(PhidgetHandle input_handle, void *ctx)
std::function< void()> detach_handler_
void setAlgorithmMagnetometerGain(double magnetometer_gain)
void algorithmDataHandler(const double quaternion[4], double timestamp) const
Spatial(int32_t serial_number, int hub_port, bool is_hub_port_device, std::function< void(const double[3], const double[3], const double[3], double)> data_handler, std::function< void(const double[4], double)> algorithm_data_handler, std::function< void()> attach_handler=nullptr, std::function< void()> detach_handler=nullptr)
#define PHIDGET22_NO_COPY_NO_MOVE_NO_ASSIGN(Classname)
void setSpatialAlgorithm(const std::string algorithm)
static void DataHandler(PhidgetSpatialHandle input_handle, void *ctx, const double acceleration[3], const double angular_rate[3], const double magnetic_field[3], double timestamp)
void setAHRSParameters(double angularVelocityThreshold, double angularVelocityDeltaThreshold, double accelerationThreshold, double magTime, double accelTime, double biasTime)
static void AttachHandler(PhidgetHandle input_handle, void *ctx)
phidgets_api
Author(s): Tully Foote, Ivan Dryanovski
autogenerated on Sun May 11 2025 02:20:27