Public Member Functions | Static Private Member Functions | Private Attributes | List of all members
phidgets::Spatial Class Referencefinal

#include <spatial.h>

Public Member Functions

void algorithmDataHandler (const double quaternion[4], double timestamp) const
 
virtual void attachHandler ()
 
void dataHandler (const double acceleration[3], const double angular_rate[3], const double magnetic_field[3], double timestamp) const
 
virtual void detachHandler ()
 
void setAHRSParameters (double angularVelocityThreshold, double angularVelocityDeltaThreshold, double accelerationThreshold, double magTime, double accelTime, double biasTime)
 
void setAlgorithmMagnetometerGain (double magnetometer_gain)
 
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)
 
void setDataInterval (uint32_t interval_ms) const
 
void setHeatingEnabled (bool heating_enabled)
 
void setSpatialAlgorithm (const std::string algorithm)
 
 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)
 
void zero () const
 
 ~Spatial ()
 

Static Private Member Functions

static void AlgorithmDataHandler (PhidgetSpatialHandle input_handle, void *ctx, const double quaternion[4], double timestamp)
 
static void AttachHandler (PhidgetHandle input_handle, void *ctx)
 
static void DataHandler (PhidgetSpatialHandle input_handle, void *ctx, const double acceleration[3], const double angular_rate[3], const double magnetic_field[3], double timestamp)
 
static void DetachHandler (PhidgetHandle input_handle, void *ctx)
 

Private Attributes

std::function< void(const double quaternion[4], double)> algorithm_data_handler_
 
std::function< void()> attach_handler_
 
std::function< void(const double[3], const double[3], const double[3], double)> data_handler_
 
std::function< void()> detach_handler_
 
PhidgetSpatialHandle spatial_handle_ {nullptr}
 

Detailed Description

Definition at line 41 of file spatial.h.

Constructor & Destructor Documentation

◆ Spatial()

phidgets::Spatial::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 
)
explicit

Definition at line 40 of file spatial.cpp.

◆ ~Spatial()

phidgets::Spatial::~Spatial ( )

Definition at line 105 of file spatial.cpp.

Member Function Documentation

◆ algorithmDataHandler()

void phidgets::Spatial::algorithmDataHandler ( const double  quaternion[4],
double  timestamp 
) const

Definition at line 215 of file spatial.cpp.

◆ AlgorithmDataHandler()

void phidgets::Spatial::AlgorithmDataHandler ( PhidgetSpatialHandle  input_handle,
void *  ctx,
const double  quaternion[4],
double  timestamp 
)
staticprivate

Definition at line 240 of file spatial.cpp.

◆ attachHandler()

void phidgets::Spatial::attachHandler ( )
virtual

Definition at line 221 of file spatial.cpp.

◆ AttachHandler()

void phidgets::Spatial::AttachHandler ( PhidgetHandle  input_handle,
void *  ctx 
)
staticprivate

Definition at line 247 of file spatial.cpp.

◆ dataHandler()

void phidgets::Spatial::dataHandler ( const double  acceleration[3],
const double  angular_rate[3],
const double  magnetic_field[3],
double  timestamp 
) const

Definition at line 207 of file spatial.cpp.

◆ DataHandler()

void phidgets::Spatial::DataHandler ( PhidgetSpatialHandle  input_handle,
void *  ctx,
const double  acceleration[3],
const double  angular_rate[3],
const double  magnetic_field[3],
double  timestamp 
)
staticprivate

Definition at line 231 of file spatial.cpp.

◆ detachHandler()

void phidgets::Spatial::detachHandler ( )
virtual

Definition at line 226 of file spatial.cpp.

◆ DetachHandler()

void phidgets::Spatial::DetachHandler ( PhidgetHandle  input_handle,
void *  ctx 
)
staticprivate

Definition at line 252 of file spatial.cpp.

◆ setAHRSParameters()

void phidgets::Spatial::setAHRSParameters ( double  angularVelocityThreshold,
double  angularVelocityDeltaThreshold,
double  accelerationThreshold,
double  magTime,
double  accelTime,
double  biasTime 
)

Definition at line 162 of file spatial.cpp.

◆ setAlgorithmMagnetometerGain()

void phidgets::Spatial::setAlgorithmMagnetometerGain ( double  magnetometer_gain)

Definition at line 177 of file spatial.cpp.

◆ setCompassCorrectionParameters()

void phidgets::Spatial::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 
)

Definition at line 120 of file spatial.cpp.

◆ setDataInterval()

void phidgets::Spatial::setDataInterval ( uint32_t  interval_ms) const

Definition at line 197 of file spatial.cpp.

◆ setHeatingEnabled()

void phidgets::Spatial::setHeatingEnabled ( bool  heating_enabled)

Definition at line 187 of file spatial.cpp.

◆ setSpatialAlgorithm()

void phidgets::Spatial::setSpatialAlgorithm ( const std::string  algorithm)

Definition at line 136 of file spatial.cpp.

◆ zero()

void phidgets::Spatial::zero ( ) const

Definition at line 111 of file spatial.cpp.

Member Data Documentation

◆ algorithm_data_handler_

std::function<void(const double quaternion[4], double)> phidgets::Spatial::algorithm_data_handler_
private

Definition at line 95 of file spatial.h.

◆ attach_handler_

std::function<void()> phidgets::Spatial::attach_handler_
private

Definition at line 97 of file spatial.h.

◆ data_handler_

std::function<void(const double[3], const double[3], const double[3], double)> phidgets::Spatial::data_handler_
private

Definition at line 92 of file spatial.h.

◆ detach_handler_

std::function<void()> phidgets::Spatial::detach_handler_
private

Definition at line 98 of file spatial.h.

◆ spatial_handle_

PhidgetSpatialHandle phidgets::Spatial::spatial_handle_ {nullptr}
private

Definition at line 100 of file spatial.h.


The documentation for this class was generated from the following files:


phidgets_api
Author(s): Tully Foote, Ivan Dryanovski
autogenerated on Sun May 11 2025 02:20:27