9#include "core/subsystems/custom_encoder.h"
10#include "core/subsystems/odometry/odometry_base.h"
11#include "core/utils/math_util.h"
13#include "core/utils/math/geometry/pose2d.h"
37 bool is_async,
bool calc_vel_acc_on_brain,
Pose2d initial_pose,
Pose2d sensor_offset, int32_t port,
43 int background_task(
void *ptr);
62 size_t cobs_decode(
const uint8_t *buffer,
size_t length,
void *data);
64 size_t cobs_encode(
const void *data,
size_t length, uint8_t *buffer);
73 bool calc_vel_acc_on_brain;
virtual double get_accel()
Definition odometry_base.cpp:98
OdometryBase(bool is_async)
Definition odometry_base.cpp:8
virtual double get_speed()
Definition odometry_base.cpp:90
void send_config(const Pose2d &initial_pose, const Pose2d &sensor_offset, const bool &calc_vel_acc_on_brain)
Send.
Definition odometry_serial.cpp:44
Pose2d get_pose2d(void)
Definition odometry_serial.cpp:167
OdometrySerial(bool is_async, bool calc_vel_acc_on_brain, Pose2d initial_pose, Pose2d sensor_offset, int32_t port, int32_t baudrate)
Construct a new Odometry Serial Object.
Definition odometry_serial.cpp:33
void set_position(const Pose2d &new_pose) override
Resets the position and rotational data to the input.
Definition odometry_serial.cpp:150
size_t cobs_decode(const uint8_t *buffer, size_t length, void *data)
Definition odometry_serial.cpp:209
Pose2d update() override
Definition odometry_serial.cpp:111
Pose2d get_position(void) override
Definition odometry_serial.cpp:157
int receive_cobs_packet(uint32_t port, uint8_t *buffer, size_t buffer_size)
Definition odometry_serial.cpp:79
size_t cobs_encode(const void *data, size_t length, uint8_t *buffer)
Definition odometry_serial.cpp:178