imu.cpp
Go to the documentation of this file.
1 #include "phidgets_api/imu.h"
2 
3 namespace phidgets {
4 
6  Phidget(),
7  imu_handle_(0)
8 {
9  // create the handle
10  CPhidgetSpatial_create(&imu_handle_);
11 
12  // pass handle to base class
13  Phidget::init((CPhidgetHandle)imu_handle_);
14 
15  // register base class callbacks
17 
18  // register imu data callback
19  CPhidgetSpatial_set_OnSpatialData_Handler(imu_handle_, SpatialDataHandler, this);
20 }
21 
22 void Imu::setDataRate(int rate)
23 {
24  CPhidgetSpatial_setDataRate(imu_handle_, rate);
25 }
26 
27 void Imu::zero()
28 {
29  // zero (calibrate) gyro
30  CPhidgetSpatial_zeroGyro(imu_handle_);
31 }
32 
33 int Imu::SpatialDataHandler(CPhidgetSpatialHandle /* handle */, void *userptr, CPhidgetSpatial_SpatialEventDataHandle *data, int count)
34 {
35  ((Imu*)userptr)->dataHandler(data, count);
36  return 0;
37 }
38 
39 void Imu::dataHandler(CPhidgetSpatial_SpatialEventDataHandle * /* data */, int /* count */)
40 {
41  printf("Empty data handler\n");
42 }
43 
44 } //namespace phidgets
45 
void setDataRate(int rate)
Definition: imu.cpp:22
virtual void registerHandlers()
Definition: phidget.cpp:16
virtual void dataHandler(CPhidgetSpatial_SpatialEventDataHandle *data, int count)
Definition: imu.cpp:39
void zero()
Definition: imu.cpp:27
static int SpatialDataHandler(CPhidgetSpatialHandle spatial, void *userptr, CPhidgetSpatial_SpatialEventDataHandle *data, int count)
Definition: imu.cpp:33
CPhidgetSpatialHandle imu_handle_
Definition: imu.h:16
void init(CPhidgetHandle handle)
Definition: phidget.cpp:23


phidgets_api
Author(s): Tully Foote, Ivan Dryanovski
autogenerated on Tue May 7 2019 03:19:24