8#include "redux/canand/CanandUtils.h"
9#include "redux/canand/CanandAddress.h"
410 uint64_t data = this->
encode();
452 (this->flags.
encode() << 56)
469 uint64_t data = this->
encode();
528 uint64_t data = this->
encode();
574 uint64_t data = this->
encode();
633 uint64_t data = this->
encode();
682 uint64_t data = this->
encode();
736 uint64_t data = this->
encode();
785 uint64_t data = this->
encode();
849 uint64_t data = this->
encode();
908 uint64_t data = this->
encode();
967 uint64_t data = this->
encode();
1016 uint64_t data = this->
encode();
1062 uint64_t data = this->
encode();
1149 return (data.
encode() << 0);
1257 return (data.
encode() << 0);
1275 return (data.
encode() << 0);
1293 return (data.
encode() << 0);
Definition: CanandAddress.h:62
bool SendCANMessage(uint16_t apiIndex, uint8_t *data, uint8_t length)
Definition: CanandgyroDetails.h:78
@ kNormal
Definition: CanandgyroDetails.h:82
@ kSaveZro
Definition: CanandgyroDetails.h:85
@ kTempCal1
Definition: CanandgyroDetails.h:91
@ kTempCal0
Definition: CanandgyroDetails.h:88
Definition: CanandgyroDetails.h:34
@ kAngularVelocitySaturation
Definition: CanandgyroDetails.h:68
@ kCalibrating
Definition: CanandgyroDetails.h:64
@ kPowerCycle
Definition: CanandgyroDetails.h:40
@ kAccelerationSaturation
Definition: CanandgyroDetails.h:72
@ kHardwareFault
Definition: CanandgyroDetails.h:60
@ kCanGeneralError
Definition: CanandgyroDetails.h:50
@ kOutOfTemperatureRange
Definition: CanandgyroDetails.h:55
@ kCanIdConflict
Definition: CanandgyroDetails.h:45
Definition: CanandgyroDetails.h:97
@ kResetFactoryDefault
Definition: CanandgyroDetails.h:104
@ kFetchSettingValue
Definition: CanandgyroDetails.h:107
@ kFetchSettings
Definition: CanandgyroDetails.h:101
Definition: CanandgyroDetails.h:21
@ kCommitSuccess
Definition: CanandgyroDetails.h:28
@ kSetSuccess
Definition: CanandgyroDetails.h:25
constexpr uint64_t packInt(int64_t data, uint8_t width, uint8_t offset)
Definition: CanandUtils.h:307
constexpr float extractF32(uint64_t data, uint8_t offset)
Definition: CanandUtils.h:259
constexpr uint8_t extractU8(uint64_t data, uint8_t width, uint8_t offset)
Definition: CanandUtils.h:133
constexpr bool extractBool(uint64_t data, uint8_t offset)
Definition: CanandUtils.h:284
constexpr uint64_t extractU64(uint64_t data, uint8_t width, uint8_t offset)
Definition: CanandUtils.h:169
constexpr int16_t extractI16(uint64_t data, uint8_t width, uint8_t offset)
Definition: CanandUtils.h:197
constexpr uint64_t packF32(float data, uint8_t offset)
Definition: CanandUtils.h:332
constexpr uint16_t extractU16(uint64_t data, uint8_t width, uint8_t offset)
Definition: CanandUtils.h:145
constexpr uint64_t packUInt(uint64_t data, uint8_t width, uint8_t offset)
Definition: CanandUtils.h:295
constexpr uint64_t packBool(bool data, uint8_t offset)
Definition: CanandUtils.h:356
@ kSetSetting
Definition: CanandgyroDetails.h:326
@ kStatus
Definition: CanandgyroDetails.h:335
@ kSettingCommand
Definition: CanandgyroDetails.h:323
@ kClearStickyFaults
Definition: CanandgyroDetails.h:332
@ kEnumerate
Definition: CanandgyroDetails.h:341
@ kYawOutput
Definition: CanandgyroDetails.h:344
@ kCalibrationStatus
Definition: CanandgyroDetails.h:359
@ kReportSetting
Definition: CanandgyroDetails.h:329
@ kPartyMode
Definition: CanandgyroDetails.h:338
@ kAngularVelocityOutput
Definition: CanandgyroDetails.h:350
@ kCalibrate
Definition: CanandgyroDetails.h:356
@ kAccelerationOutput
Definition: CanandgyroDetails.h:353
@ kAngularPositionOutput
Definition: CanandgyroDetails.h:347
uint16_t extractAccelerationFramePeriod(uint64_t data)
Definition: CanandgyroDetails.h:1247
uint64_t constructFirmwareVersion(types::FirmwareVersion data)
Definition: CanandgyroDetails.h:1148
uint16_t extractDeviceType(uint64_t data)
Definition: CanandgyroDetails.h:1175
uint64_t constructAngularPositionFramePeriod(uint16_t data)
Definition: CanandgyroDetails.h:1202
uint16_t extractAngularPositionFramePeriod(uint64_t data)
Definition: CanandgyroDetails.h:1211
uint64_t constructYawFramePeriod(uint16_t data)
Definition: CanandgyroDetails.h:1184
uint64_t constructSerialNumber(uint64_t data)
Definition: CanandgyroDetails.h:1130
uint16_t extractAngularVelocityFramePeriod(uint64_t data)
Definition: CanandgyroDetails.h:1229
types::QuatXyz extractSetPosePositiveW(uint64_t data)
Definition: CanandgyroDetails.h:1283
uint64_t constructSetPosePositiveW(types::QuatXyz data)
Definition: CanandgyroDetails.h:1274
types::Yaw extractSetYaw(uint64_t data)
Definition: CanandgyroDetails.h:1265
const std::vector< uint8_t > VDEP_SETTINGS
Definition: CanandgyroDetails.h:1309
uint64_t constructAccelerationFramePeriod(uint16_t data)
Definition: CanandgyroDetails.h:1238
types::FirmwareVersion extractFirmwareVersion(uint64_t data)
Definition: CanandgyroDetails.h:1157
uint64_t constructSetPoseNegativeW(types::QuatXyz data)
Definition: CanandgyroDetails.h:1292
uint64_t constructStatusFramePeriod(uint16_t data)
Definition: CanandgyroDetails.h:1112
uint64_t constructSetYaw(types::Yaw data)
Definition: CanandgyroDetails.h:1256
uint16_t extractStatusFramePeriod(uint64_t data)
Definition: CanandgyroDetails.h:1121
@ kAngularPositionFramePeriod
Definition: CanandgyroDetails.h:1089
@ kSetYaw
Definition: CanandgyroDetails.h:1098
@ kSetPoseNegativeW
Definition: CanandgyroDetails.h:1104
@ kStatusFramePeriod
Definition: CanandgyroDetails.h:1074
@ kFirmwareVersion
Definition: CanandgyroDetails.h:1080
@ kYawFramePeriod
Definition: CanandgyroDetails.h:1086
@ kSetPosePositiveW
Definition: CanandgyroDetails.h:1101
@ kAngularVelocityFramePeriod
Definition: CanandgyroDetails.h:1092
@ kDeviceType
Definition: CanandgyroDetails.h:1083
@ kSerialNumber
Definition: CanandgyroDetails.h:1077
@ kAccelerationFramePeriod
Definition: CanandgyroDetails.h:1095
types::QuatXyz extractSetPoseNegativeW(uint64_t data)
Definition: CanandgyroDetails.h:1301
uint64_t extractSerialNumber(uint64_t data)
Definition: CanandgyroDetails.h:1139
uint64_t constructDeviceType(uint16_t data)
Definition: CanandgyroDetails.h:1166
uint16_t extractYawFramePeriod(uint64_t data)
Definition: CanandgyroDetails.h:1193
uint64_t constructAngularVelocityFramePeriod(uint16_t data)
Definition: CanandgyroDetails.h:1220
Definition: CanandgyroDetails.h:16
Definition: CanandgyroDetails.h:915
static constexpr AccelerationOutput decode(uint64_t data)
Definition: CanandgyroDetails.h:932
int16_t z
Definition: CanandgyroDetails.h:918
int16_t x
Definition: CanandgyroDetails.h:924
bool send(redux::canand::CanandAddress &addr)
Definition: CanandgyroDetails.h:966
static const uint32_t DLC_MAX
Definition: CanandgyroDetails.h:959
static const uint32_t DLC_MIN
Definition: CanandgyroDetails.h:956
constexpr uint64_t encode()
Definition: CanandgyroDetails.h:945
int16_t y
Definition: CanandgyroDetails.h:921
Definition: CanandgyroDetails.h:792
static const uint32_t DLC_MAX
Definition: CanandgyroDetails.h:841
static const uint32_t DLC_MIN
Definition: CanandgyroDetails.h:838
int16_t z
Definition: CanandgyroDetails.h:804
int16_t y
Definition: CanandgyroDetails.h:801
static constexpr AngularPositionOutput decode(uint64_t data)
Definition: CanandgyroDetails.h:812
bool send(redux::canand::CanandAddress &addr)
Definition: CanandgyroDetails.h:848
int16_t w
Definition: CanandgyroDetails.h:795
constexpr uint64_t encode()
Definition: CanandgyroDetails.h:826
int16_t x
Definition: CanandgyroDetails.h:798
Definition: CanandgyroDetails.h:856
int16_t pitch
Definition: CanandgyroDetails.h:862
int16_t roll
Definition: CanandgyroDetails.h:865
constexpr uint64_t encode()
Definition: CanandgyroDetails.h:886
static constexpr AngularVelocityOutput decode(uint64_t data)
Definition: CanandgyroDetails.h:873
bool send(redux::canand::CanandAddress &addr)
Definition: CanandgyroDetails.h:907
static const uint32_t DLC_MAX
Definition: CanandgyroDetails.h:900
int16_t yaw
Definition: CanandgyroDetails.h:859
static const uint32_t DLC_MIN
Definition: CanandgyroDetails.h:897
Definition: CanandgyroDetails.h:974
static const uint32_t DLC_MAX
Definition: CanandgyroDetails.h:1008
static constexpr Calibrate decode(uint64_t data)
Definition: CanandgyroDetails.h:985
static const uint32_t DLC_MIN
Definition: CanandgyroDetails.h:1005
constexpr uint64_t encode()
Definition: CanandgyroDetails.h:996
bool send(redux::canand::CanandAddress &addr)
Definition: CanandgyroDetails.h:1015
uint8_t calibration_type
Definition: CanandgyroDetails.h:977
Definition: CanandgyroDetails.h:1023
static constexpr CalibrationStatus decode(uint64_t data)
Definition: CanandgyroDetails.h:1032
static const uint32_t DLC_MIN
Definition: CanandgyroDetails.h:1051
static const uint32_t DLC_MAX
Definition: CanandgyroDetails.h:1054
bool send(redux::canand::CanandAddress &addr)
Definition: CanandgyroDetails.h:1061
constexpr uint64_t encode()
Definition: CanandgyroDetails.h:1043
Definition: CanandgyroDetails.h:535
static const uint32_t DLC_MIN
Definition: CanandgyroDetails.h:563
static constexpr ClearStickyFaults decode(uint64_t data)
Definition: CanandgyroDetails.h:544
constexpr uint64_t encode()
Definition: CanandgyroDetails.h:555
bool send(redux::canand::CanandAddress &addr)
Definition: CanandgyroDetails.h:573
static const uint32_t DLC_MAX
Definition: CanandgyroDetails.h:566
Definition: CanandgyroDetails.h:689
bool is_bootloader
Definition: CanandgyroDetails.h:695
uint64_t serial
Definition: CanandgyroDetails.h:692
static const uint32_t DLC_MIN
Definition: CanandgyroDetails.h:725
constexpr uint64_t encode()
Definition: CanandgyroDetails.h:715
static constexpr Enumerate decode(uint64_t data)
Definition: CanandgyroDetails.h:703
bool send(redux::canand::CanandAddress &addr)
Definition: CanandgyroDetails.h:735
static const uint32_t DLC_MAX
Definition: CanandgyroDetails.h:728
Definition: CanandgyroDetails.h:640
uint8_t party_level
Definition: CanandgyroDetails.h:643
static const uint32_t DLC_MAX
Definition: CanandgyroDetails.h:674
static constexpr PartyMode decode(uint64_t data)
Definition: CanandgyroDetails.h:651
static const uint32_t DLC_MIN
Definition: CanandgyroDetails.h:671
bool send(redux::canand::CanandAddress &addr)
Definition: CanandgyroDetails.h:681
constexpr uint64_t encode()
Definition: CanandgyroDetails.h:662
Definition: CanandgyroDetails.h:476
bool send(redux::canand::CanandAddress &addr)
Definition: CanandgyroDetails.h:527
uint8_t address
Definition: CanandgyroDetails.h:479
uint64_t value
Definition: CanandgyroDetails.h:482
static const uint32_t DLC_MAX
Definition: CanandgyroDetails.h:520
constexpr uint64_t encode()
Definition: CanandgyroDetails.h:506
static constexpr ReportSetting decode(uint64_t data)
Definition: CanandgyroDetails.h:493
uint8_t flags
Definition: CanandgyroDetails.h:485
static const uint32_t DLC_MIN
Definition: CanandgyroDetails.h:517
Definition: CanandgyroDetails.h:417
static constexpr SetSetting decode(uint64_t data)
Definition: CanandgyroDetails.h:434
constexpr uint64_t encode()
Definition: CanandgyroDetails.h:447
static const uint32_t DLC_MAX
Definition: CanandgyroDetails.h:461
types::SettingFlags flags
Definition: CanandgyroDetails.h:426
static const uint32_t DLC_MIN
Definition: CanandgyroDetails.h:458
uint64_t value
Definition: CanandgyroDetails.h:423
uint8_t address
Definition: CanandgyroDetails.h:420
bool send(redux::canand::CanandAddress &addr)
Definition: CanandgyroDetails.h:468
Definition: CanandgyroDetails.h:363
uint8_t control_flag
Definition: CanandgyroDetails.h:366
static const uint32_t DLC_MAX
Definition: CanandgyroDetails.h:402
static const uint32_t DLC_MIN
Definition: CanandgyroDetails.h:399
bool send(redux::canand::CanandAddress &addr)
Definition: CanandgyroDetails.h:409
uint8_t setting_index
Definition: CanandgyroDetails.h:369
constexpr uint64_t encode()
Definition: CanandgyroDetails.h:389
static constexpr SettingCommand decode(uint64_t data)
Definition: CanandgyroDetails.h:377
Definition: CanandgyroDetails.h:581
uint8_t faults
Definition: CanandgyroDetails.h:584
constexpr uint64_t encode()
Definition: CanandgyroDetails.h:611
uint8_t sticky_faults
Definition: CanandgyroDetails.h:587
int16_t temperature
Definition: CanandgyroDetails.h:590
static const uint32_t DLC_MAX
Definition: CanandgyroDetails.h:625
bool send(redux::canand::CanandAddress &addr)
Definition: CanandgyroDetails.h:632
static constexpr Status decode(uint64_t data)
Definition: CanandgyroDetails.h:598
static const uint32_t DLC_MIN
Definition: CanandgyroDetails.h:622
Definition: CanandgyroDetails.h:743
static const uint32_t DLC_MAX
Definition: CanandgyroDetails.h:777
bool send(redux::canand::CanandAddress &addr)
Definition: CanandgyroDetails.h:784
static constexpr YawOutput decode(uint64_t data)
Definition: CanandgyroDetails.h:754
types::Yaw yaw
Definition: CanandgyroDetails.h:746
constexpr uint64_t encode()
Definition: CanandgyroDetails.h:765
static const uint32_t DLC_MIN
Definition: CanandgyroDetails.h:774
Definition: CanandgyroDetails.h:156
uint16_t firmware_year
Definition: CanandgyroDetails.h:165
constexpr uint64_t encode()
Definition: CanandgyroDetails.h:186
uint8_t firmware_patch
Definition: CanandgyroDetails.h:159
uint8_t firmware_minor
Definition: CanandgyroDetails.h:162
static constexpr FirmwareVersion decode(uint64_t data)
Definition: CanandgyroDetails.h:173
Definition: CanandgyroDetails.h:237
int16_t y
Definition: CanandgyroDetails.h:243
constexpr uint64_t encode()
Definition: CanandgyroDetails.h:267
static constexpr QuatXyz decode(uint64_t data)
Definition: CanandgyroDetails.h:254
int16_t z
Definition: CanandgyroDetails.h:246
int16_t x
Definition: CanandgyroDetails.h:240
Definition: CanandgyroDetails.h:113
bool synch_hold
Definition: CanandgyroDetails.h:119
uint8_t synch_msg_count
Definition: CanandgyroDetails.h:122
constexpr uint64_t encode()
Definition: CanandgyroDetails.h:143
bool ephemeral
Definition: CanandgyroDetails.h:116
static constexpr SettingFlags decode(uint64_t data)
Definition: CanandgyroDetails.h:130
Definition: CanandgyroDetails.h:199
constexpr uint64_t encode()
Definition: CanandgyroDetails.h:225
int16_t temperature_point
Definition: CanandgyroDetails.h:202
float offset
Definition: CanandgyroDetails.h:205
static constexpr TempCalPoint decode(uint64_t data)
Definition: CanandgyroDetails.h:213
Definition: CanandgyroDetails.h:280
int16_t wraparound
Definition: CanandgyroDetails.h:286
static constexpr Yaw decode(uint64_t data)
Definition: CanandgyroDetails.h:294
constexpr uint64_t encode()
Definition: CanandgyroDetails.h:306
float yaw
Definition: CanandgyroDetails.h:283