Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions core/include/librmcs/data/datas.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -112,21 +112,21 @@ struct GpioReadConfigView {
}
};

struct AccelerometerDataView {
struct ImuAccelerometerDataView {
int16_t x;
int16_t y;
int16_t z;
uint32_t timestamp_quarter_us;
};

struct GyroscopeDataView {
struct ImuGyroscopeDataView {
int16_t x;
int16_t y;
int16_t z;
uint32_t timestamp_quarter_us;
};

struct TemperatureDataView {
struct ImuTemperatureDataView {
uint16_t raw_register_value;
uint32_t timestamp_quarter_us;
};
Expand Down Expand Up @@ -164,9 +164,9 @@ class DataCallback {
[[nodiscard]] virtual bool
gpio_analog_read_result_callback(uint8_t channel_index, const GpioAnalogDataView& data) = 0;

virtual void accelerometer_receive_callback(const AccelerometerDataView& data) = 0;
virtual void gyroscope_receive_callback(const GyroscopeDataView& data) = 0;
virtual void temperature_receive_callback(const TemperatureDataView& data) = 0;
virtual void accelerometer_receive_callback(const ImuAccelerometerDataView& data) = 0;
virtual void gyroscope_receive_callback(const ImuGyroscopeDataView& data) = 0;
virtual void temperature_receive_callback(const ImuTemperatureDataView& data) = 0;
};

} // namespace librmcs::data
6 changes: 3 additions & 3 deletions core/src/protocol/deserializer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -268,7 +268,7 @@ coroutine::LifoTask<bool> Deserializer::process_imu_field(FieldId) {

switch (payload_type) {
case ImuHeader::PayloadEnum::kAccelerometer: {
data::AccelerometerDataView data_view{};
data::ImuAccelerometerDataView data_view{};
const auto* payload_bytes = co_await peek_bytes(sizeof(ImuAccelerometerPayload));
if (!payload_bytes) [[unlikely]]
co_return false;
Expand All @@ -282,7 +282,7 @@ coroutine::LifoTask<bool> Deserializer::process_imu_field(FieldId) {
break;
}
case ImuHeader::PayloadEnum::kGyroscope: {
data::GyroscopeDataView data_view{};
data::ImuGyroscopeDataView data_view{};
const auto* payload_bytes = co_await peek_bytes(sizeof(ImuGyroscopePayload));
if (!payload_bytes) [[unlikely]]
co_return false;
Expand All @@ -296,7 +296,7 @@ coroutine::LifoTask<bool> Deserializer::process_imu_field(FieldId) {
break;
}
case ImuHeader::PayloadEnum::kTemperature: {
data::TemperatureDataView data_view{};
data::ImuTemperatureDataView data_view{};
const auto* payload_bytes = co_await peek_bytes(sizeof(ImuTemperaturePayload));
if (!payload_bytes) [[unlikely]]
co_return false;
Expand Down
7 changes: 4 additions & 3 deletions core/src/protocol/deserializer.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -45,11 +45,12 @@ class DeserializeCallback {
[[nodiscard]] virtual bool gpio_analog_read_config_deserialized_callback(
uint8_t channel_index, const data::GpioReadConfigView& data) = 0;

virtual void accelerometer_deserialized_callback(const data::AccelerometerDataView& data) = 0;
virtual void
accelerometer_deserialized_callback(const data::ImuAccelerometerDataView& data) = 0;

virtual void gyroscope_deserialized_callback(const data::GyroscopeDataView& data) = 0;
virtual void gyroscope_deserialized_callback(const data::ImuGyroscopeDataView& data) = 0;

virtual void temperature_deserialized_callback(const data::TemperatureDataView& data) = 0;
virtual void temperature_deserialized_callback(const data::ImuTemperatureDataView& data) = 0;

virtual void session_control_deserialized_callback(const data::SessionControlView& data) = 0;

Expand Down
6 changes: 3 additions & 3 deletions core/src/protocol/serializer.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -271,7 +271,7 @@ class Serializer {
return SerializeResult::kSuccess;
}

SerializeResult write_imu_accelerometer(const data::AccelerometerDataView& view) noexcept {
SerializeResult write_imu_accelerometer(const data::ImuAccelerometerDataView& view) noexcept {
const std::size_t required = required_imu_size(FieldId::kImu, ImuPayload::kAccelerometer);
LIBRMCS_VERIFY_LIKELY(required, SerializeResult::kInvalidArgument);

Expand All @@ -297,7 +297,7 @@ class Serializer {
return SerializeResult::kSuccess;
}

SerializeResult write_imu_gyroscope(const data::GyroscopeDataView& view) noexcept {
SerializeResult write_imu_gyroscope(const data::ImuGyroscopeDataView& view) noexcept {
const std::size_t required = required_imu_size(FieldId::kImu, ImuPayload::kGyroscope);
LIBRMCS_VERIFY_LIKELY(required, SerializeResult::kInvalidArgument);

Expand All @@ -323,7 +323,7 @@ class Serializer {
return SerializeResult::kSuccess;
}

SerializeResult write_imu_temperature(const data::TemperatureDataView& view) noexcept {
SerializeResult write_imu_temperature(const data::ImuTemperatureDataView& view) noexcept {
const std::size_t required = required_imu_size(FieldId::kImu, ImuPayload::kTemperature);
LIBRMCS_VERIFY_LIKELY(required, SerializeResult::kInvalidArgument);

Expand Down
6 changes: 3 additions & 3 deletions firmware/c_board/app/src/usb/vendor.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -196,15 +196,15 @@ class Vendor
return false;
}

void accelerometer_deserialized_callback(const data::AccelerometerDataView& data) override {
void accelerometer_deserialized_callback(const data::ImuAccelerometerDataView& data) override {
(void)data;
}

void gyroscope_deserialized_callback(const data::GyroscopeDataView& data) override {
void gyroscope_deserialized_callback(const data::ImuGyroscopeDataView& data) override {
(void)data;
}

void temperature_deserialized_callback(const data::TemperatureDataView& data) override {
void temperature_deserialized_callback(const data::ImuTemperatureDataView& data) override {
(void)data;
}

Expand Down
6 changes: 3 additions & 3 deletions firmware/rmcs_board/app/src/usb/vendor.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -215,15 +215,15 @@ class Vendor
return false;
}

void accelerometer_deserialized_callback(const data::AccelerometerDataView& data) override {
void accelerometer_deserialized_callback(const data::ImuAccelerometerDataView& data) override {
(void)data;
}

void gyroscope_deserialized_callback(const data::GyroscopeDataView& data) override {
void gyroscope_deserialized_callback(const data::ImuGyroscopeDataView& data) override {
(void)data;
}

void temperature_deserialized_callback(const data::TemperatureDataView& data) override {
void temperature_deserialized_callback(const data::ImuTemperatureDataView& data) override {
(void)data;
}

Expand Down
48 changes: 30 additions & 18 deletions host/include/librmcs/board/c_board.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -37,43 +37,55 @@ class CBoard final {
public:
class Callback : public data::DataCallback {
public:
virtual void can_receive_callback(
const librmcs::spec::c_board::CanDescriptor& can,
const librmcs::data::CanDataView& data) {
struct Spec {
using Can = spec::c_board::CanDescriptor;
static constexpr spec::c_board::internal::CanDescriptors kCans{};

using Uart = spec::c_board::UartDescriptor;
static constexpr spec::c_board::internal::UartDescriptors kUarts{};

using Gpio = spec::c_board::GpioDescriptor;
static constexpr spec::c_board::internal::GpioDescriptors kGpios{};
};

struct View {
using Can = data::CanDataView;

using Uart = data::UartDataView;

using GpioDigital = data::GpioDigitalDataView;

using ImuAccelerometer = librmcs::data::ImuAccelerometerDataView;
using ImuGyroscope = librmcs::data::ImuGyroscopeDataView;
using ImuTemperature = librmcs::data::ImuTemperatureDataView;
};

virtual void can_receive_callback(const Spec::Can& can, const View::Can& data) {
(void)can;
(void)data;
}

virtual void uart_receive_callback(
const librmcs::spec::c_board::UartDescriptor& uart,
const librmcs::data::UartDataView& data) {
virtual void uart_receive_callback(const Spec::Uart& uart, const View::Uart& data) {
(void)uart;
(void)data;
}

virtual void gpio_digital_read_result_callback(
const librmcs::spec::c_board::GpioDescriptor& gpio,
const librmcs::data::GpioDigitalDataView& data) {
const Spec::Gpio& gpio, const View::GpioDigital& data) {
(void)gpio;
(void)data;
}
virtual void gpio_analog_read_result_callback(
const librmcs::spec::c_board::GpioDescriptor& gpio,
const librmcs::data::GpioAnalogDataView& data) {
const Spec::Gpio& gpio, const librmcs::data::GpioAnalogDataView& data) {
(void)gpio;
(void)data;
}

void accelerometer_receive_callback(
const librmcs::data::AccelerometerDataView& data) override {
(void)data;
}
void gyroscope_receive_callback(const librmcs::data::GyroscopeDataView& data) override {
(void)data;
}
void temperature_receive_callback(const librmcs::data::TemperatureDataView& data) override {
void accelerometer_receive_callback(const View::ImuAccelerometer& data) override {
(void)data;
}
void gyroscope_receive_callback(const View::ImuGyroscope& data) override { (void)data; }
void temperature_receive_callback(const View::ImuTemperature& data) override { (void)data; }

public:
bool can_receive_callback(data::DataId id, const data::CanDataView& data) final {
Expand Down
48 changes: 30 additions & 18 deletions host/include/librmcs/board/rmcs_board_lite.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -37,43 +37,55 @@ class RmcsBoardLite final {
public:
class Callback : public data::DataCallback {
public:
virtual void can_receive_callback(
const librmcs::spec::rmcs_board_lite::CanDescriptor& can,
const librmcs::data::CanDataView& data) {
struct Spec {
using Can = spec::rmcs_board_lite::CanDescriptor;
static constexpr spec::rmcs_board_lite::internal::CanDescriptors kCans{};

using Uart = spec::rmcs_board_lite::UartDescriptor;
static constexpr spec::rmcs_board_lite::internal::UartDescriptors kUarts{};

using Gpio = spec::rmcs_board_lite::GpioDescriptor;
static constexpr spec::rmcs_board_lite::internal::GpioDescriptors kGpios{};
};

struct View {
using Can = data::CanDataView;

using Uart = data::UartDataView;

using GpioDigital = data::GpioDigitalDataView;

using ImuAccelerometer = librmcs::data::ImuAccelerometerDataView;
using ImuGyroscope = librmcs::data::ImuGyroscopeDataView;
using ImuTemperature = librmcs::data::ImuTemperatureDataView;
};

virtual void can_receive_callback(const Spec::Can& can, const View::Can& data) {
(void)can;
(void)data;
}

virtual void uart_receive_callback(
const librmcs::spec::rmcs_board_lite::UartDescriptor& uart,
const librmcs::data::UartDataView& data) {
virtual void uart_receive_callback(const Spec::Uart& uart, const View::Uart& data) {
(void)uart;
(void)data;
}

virtual void gpio_digital_read_result_callback(
const librmcs::spec::rmcs_board_lite::GpioDescriptor& gpio,
const librmcs::data::GpioDigitalDataView& data) {
const Spec::Gpio& gpio, const View::GpioDigital& data) {
(void)gpio;
(void)data;
}
virtual void gpio_analog_read_result_callback(
const librmcs::spec::rmcs_board_lite::GpioDescriptor& gpio,
const librmcs::data::GpioAnalogDataView& data) {
const Spec::Gpio& gpio, const librmcs::data::GpioAnalogDataView& data) {
(void)gpio;
(void)data;
}

void accelerometer_receive_callback(
const librmcs::data::AccelerometerDataView& data) override {
(void)data;
}
void gyroscope_receive_callback(const librmcs::data::GyroscopeDataView& data) override {
(void)data;
}
void temperature_receive_callback(const librmcs::data::TemperatureDataView& data) override {
void accelerometer_receive_callback(const View::ImuAccelerometer& data) override {
(void)data;
}
void gyroscope_receive_callback(const View::ImuGyroscope& data) override { (void)data; }
void temperature_receive_callback(const View::ImuTemperature& data) override { (void)data; }

public:
bool can_receive_callback(data::DataId id, const data::CanDataView& data) final {
Expand Down
48 changes: 30 additions & 18 deletions host/include/librmcs/board/rmcs_board_pro.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -37,43 +37,55 @@ class RmcsBoardPro final {
public:
class Callback : public data::DataCallback {
public:
virtual void can_receive_callback(
const librmcs::spec::rmcs_board_pro::CanDescriptor& can,
const librmcs::data::CanDataView& data) {
struct Spec {
using Can = spec::rmcs_board_pro::CanDescriptor;
static constexpr spec::rmcs_board_pro::internal::CanDescriptors kCans{};

using Uart = spec::rmcs_board_pro::UartDescriptor;
static constexpr spec::rmcs_board_pro::internal::UartDescriptors kUarts{};

using Gpio = spec::rmcs_board_pro::GpioDescriptor;
static constexpr spec::rmcs_board_pro::internal::GpioDescriptors kGpios{};
};

struct View {
using Can = data::CanDataView;

using Uart = data::UartDataView;

using GpioDigital = data::GpioDigitalDataView;

using ImuAccelerometer = librmcs::data::ImuAccelerometerDataView;
using ImuGyroscope = librmcs::data::ImuGyroscopeDataView;
using ImuTemperature = librmcs::data::ImuTemperatureDataView;
};

virtual void can_receive_callback(const Spec::Can& can, const View::Can& data) {
(void)can;
(void)data;
}

virtual void uart_receive_callback(
const librmcs::spec::rmcs_board_pro::UartDescriptor& uart,
const librmcs::data::UartDataView& data) {
virtual void uart_receive_callback(const Spec::Uart& uart, const View::Uart& data) {
(void)uart;
(void)data;
}

virtual void gpio_digital_read_result_callback(
const librmcs::spec::rmcs_board_pro::GpioDescriptor& gpio,
const librmcs::data::GpioDigitalDataView& data) {
const Spec::Gpio& gpio, const View::GpioDigital& data) {
(void)gpio;
(void)data;
}
virtual void gpio_analog_read_result_callback(
const librmcs::spec::rmcs_board_pro::GpioDescriptor& gpio,
const librmcs::data::GpioAnalogDataView& data) {
const Spec::Gpio& gpio, const librmcs::data::GpioAnalogDataView& data) {
(void)gpio;
(void)data;
}

void accelerometer_receive_callback(
const librmcs::data::AccelerometerDataView& data) override {
(void)data;
}
void gyroscope_receive_callback(const librmcs::data::GyroscopeDataView& data) override {
(void)data;
}
void temperature_receive_callback(const librmcs::data::TemperatureDataView& data) override {
void accelerometer_receive_callback(const View::ImuAccelerometer& data) override {
(void)data;
}
void gyroscope_receive_callback(const View::ImuGyroscope& data) override { (void)data; }
void temperature_receive_callback(const View::ImuTemperature& data) override { (void)data; }

public:
bool can_receive_callback(data::DataId id, const data::CanDataView& data) final {
Expand Down
Loading
Loading