#include <MultiSenseTypes.hh>
Public Attributes | |
bool | enabled |
std::string | name |
uint32_t | rangeTableIndex |
uint32_t | rateTableIndex |
Class used to store a specific IMU configuration.
Example code to query a IMU configuration:
{.cpp} // // Instantiate a channel connecting to a sensor at the factory default // IP address crl::multisense::Channel* channel; channel = crl::multisense::Channel::Create("10.66.171.21"); channel->setMtu(7200); // // Create local variables to store the information returned by // reference from getImuConfig(). std::vector<crl::multisense::imu::Config> imuConfigVect; uint32_t samplesPerMessage; // // Query the IMU configuration from the Channel instance crl::multisense::Status status = channel->getImuConfig(samplesPerMessage, imuConfigVect); // // Check to see if the IMU configuration query was successful if(crl::multisense::Status_Ok != status) { throw std::runtime_error("Unable to query the imu configuration"); } // // Use the IMU configuration... // // Destroy the channel instance crl::multisense::Channel::Destroy(channel);
Example code to set a IMU configuration:
{.cpp} // // Instantiate a channel connecting to a sensor at the factory default // IP address crl::multisense::Channel* channel; channel = crl::multisense::Channel::Create("10.66.171.21"); channel->setMtu(7200); // // Create a vector of IMU configurations to store the queried IMU configuration std::vector<crl::multisense::imu::Config> imuConfigVect; // // Create a uint32_t to store the samplesPerMessage quantity returned // by reference from getImuConfig uint32_t samplesPerMessage; crl::multisense::Status status; // // Query the IMU configuration from the Channel instance status = channel->getImuConfig(samplesPerMessage, imuConfigVect); // // Check to see if the IMU configuration query was successful if(crl::multisense::Status_Ok != status) { throw std::runtime_error("Unable to query the imu configuration"); } // // Enable streaming for the IMU device at index 0 and select the // rate corresponding to index 0 in crl::multisense::imu::Info::rates for // the corresponding IMU device imuConfigVect[0].enabled = true; imuConfigVect[0].rateTableIndex = 0; // // Do not store these new settings in flash bool storeSettings = false; // // Set the new IMU configuration. Keep the same samplesPerMessage setting // indicated by the 0 value crl::multisense::Status status = channel->setImuConfig(storeSettings, 0, imuConfigVect); // // Check to see if the new IMU configuration was successfully received. if(crl::multisense::Status_Ok != status) { throw std::runtime_error("Unable to set the imu configuration"); } // // Destroy the channel instance crl::multisense::Channel::Destroy(channel);
Definition at line 1971 of file MultiSenseTypes.hh.
A boolean flag indicating whether the given IMU source is currently enabled
Definition at line 1978 of file MultiSenseTypes.hh.
std::string crl::multisense::imu::Config::name |
The name of a specific IMU source corresponding to crl::multisense::imu::Info::name
Definition at line 1976 of file MultiSenseTypes.hh.
The index into the range table for a given IMU source specified in crl::multisense::imu::Info::ranges
Definition at line 1984 of file MultiSenseTypes.hh.
The index into the rate table for a given IMU source specified in crl::multisense::imu::Info::rates
Definition at line 1981 of file MultiSenseTypes.hh.