LibMultiSense
LibMultiSense Documentation
ImuConfigMessage.hh
Go to the documentation of this file.
1 
37 #ifndef LibMultiSense_ImuConfigMessage
38 #define LibMultiSense_ImuConfigMessage
39 
40 #include "utility/Portability.hh"
41 
42 namespace crl {
43 namespace multisense {
44 namespace details {
45 namespace wire {
46 namespace imu {
47 
48 class Config {
49 public:
51  static CRL_CONSTEXPR uint32_t FLAGS_ENABLED = (1<<0);
52 
53  std::string name;
54  uint32_t flags;
55  uint32_t rateTableIndex;
56  uint32_t rangeTableIndex;
57 
58  //
59  // Serialization routine
60 
61  template<class Archive>
62  void serialize(Archive& message,
63  const VersionType version)
64  {
65  (void) version;
66 
67  message & name;
68  message & flags;
69  message & rateTableIndex;
70  message & rangeTableIndex;
71  }
72 };
73 
74 } // namespace imu
75 
76 class ImuConfig {
77 public:
80 
81  uint8_t storeSettingsInFlash; // boolean
82  uint32_t samplesPerMessage; // 0 to ignore
83  std::vector<imu::Config> configs;
84 
85  //
86  // Constructors
87 
90 
91  //
92  // Serialization routine
93 
94  template<class Archive>
95  void serialize(Archive& message,
96  const VersionType version)
97  {
98  (void) version;
99  message & storeSettingsInFlash;
100  message & samplesPerMessage;
101  message & configs;
102  }
103 };
104 
105 }}}} // namespaces
106 
107 #endif
crl::multisense::details::wire::imu::Config::rangeTableIndex
uint32_t rangeTableIndex
Definition: ImuConfigMessage.hh:56
crl::multisense::details::wire::ImuConfig::ID
static CRL_CONSTEXPR IdType ID
Definition: ImuConfigMessage.hh:78
crl::multisense::details::wire::imu::Config
Definition: ImuConfigMessage.hh:48
Portability.hh
CRL_CONSTEXPR
#define CRL_CONSTEXPR
Definition: Portability.hh:49
crl::multisense::details::wire::imu::Config::VERSION
static CRL_CONSTEXPR VersionType VERSION
Definition: ImuConfigMessage.hh:50
crl::multisense::details::wire::ImuConfig
Definition: ImuConfigMessage.hh:76
crl::multisense::details::wire::ImuConfig::ImuConfig
ImuConfig(utility::BufferStreamReader &r, VersionType v)
Definition: ImuConfigMessage.hh:88
crl
Definition: BufferStream.hh:51
crl::multisense::details::wire::imu::Config::flags
uint32_t flags
Definition: ImuConfigMessage.hh:54
crl::multisense::details::wire::imu::Config::serialize
void serialize(Archive &message, const VersionType version)
Definition: ImuConfigMessage.hh:62
crl::multisense::details::wire::ImuConfig::storeSettingsInFlash
uint8_t storeSettingsInFlash
Definition: ImuConfigMessage.hh:81
crl::multisense::details::wire::imu::Config::name
std::string name
Definition: ImuConfigMessage.hh:53
crl::multisense::details::wire::imu::Config::FLAGS_ENABLED
static CRL_CONSTEXPR uint32_t FLAGS_ENABLED
Definition: ImuConfigMessage.hh:51
crl::multisense::details::wire::ImuConfig::VERSION
static CRL_CONSTEXPR VersionType VERSION
Definition: ImuConfigMessage.hh:79
crl::multisense::details::wire::VersionType
uint16_t VersionType
Definition: Protocol.hh:137
crl::multisense::details::wire::ImuConfig::serialize
void serialize(Archive &message, const VersionType version)
Definition: ImuConfigMessage.hh:95
crl::multisense::details::wire::ID_DATA_IMU_CONFIG
static CRL_CONSTEXPR IdType ID_DATA_IMU_CONFIG
Definition: Protocol.hh:223
crl::multisense::details::wire::imu::Config::rateTableIndex
uint32_t rateTableIndex
Definition: ImuConfigMessage.hh:55
crl::multisense::details::utility::BufferStreamReader
Definition: BufferStream.hh:192
multisense
Definition: MultiSenseChannel.hh:44
crl::multisense::details::wire::ImuConfig::ImuConfig
ImuConfig()
Definition: ImuConfigMessage.hh:89
crl::multisense::details::wire::ImuConfig::samplesPerMessage
uint32_t samplesPerMessage
Definition: ImuConfigMessage.hh:82
crl::multisense::details::wire::ImuConfig::configs
std::vector< imu::Config > configs
Definition: ImuConfigMessage.hh:83
crl::multisense::details::wire::IdType
uint16_t IdType
Definition: Protocol.hh:136