9#include "core/competition/command_structure/auto_command.h"
10#include "core/math/geometry/pose2d.h"
12#include "core/math/kinematics/chassis_velocities.h"
13#include "core/math/kinematics/chassis_accelerations.h"
47 AutoCommand* SetPositionCmd(
const Pose2d& newpos = zero_pos);
double ang_accel_deg
Definition odometry_base.h:134
static int background_task(void *ptr)
Definition odometry_base.cpp:25
double ang_speed_deg
Definition odometry_base.h:133
Pose2d current_pos
Current position of the robot in terms of x,y,rotation.
Definition odometry_base.h:129
virtual double get_accel()
Definition odometry_base.cpp:102
double get_angular_accel_deg()
Definition odometry_base.cpp:118
double speed
Definition odometry_base.h:131
OdometryBase(bool is_async)
Definition odometry_base.cpp:12
static double smallest_angle(double start_deg, double end_deg)
Definition odometry_base.cpp:78
vex::mutex mut
Mutex to control multithreading.
Definition odometry_base.h:126
double accel
Definition odometry_base.h:132
virtual double get_speed()
Definition odometry_base.cpp:94
ChassisVelocities get_chassis_velocity()
Definition odometry_base.cpp:131
virtual Pose2d update()=0
void end_async()
Definition odometry_base.cpp:43
ChassisAccelerations get_chassis_accel()
Definition odometry_base.cpp:151
virtual Pose2d get_position(void)
Gets the current position and rotation.
Definition odometry_base.cpp:46
vex::task * handle
handle to the vex task that is running the odometry code
Definition odometry_base.h:123
bool end_task
end_task is true if we instruct the odometry thread to shut down
Definition odometry_base.h:82
virtual void set_position(const Pose2d &newpos=zero_pos)
Sets the current position of the robot.
Definition odometry_base.cpp:58
double get_angular_speed_deg()
Definition odometry_base.cpp:110
constexpr Pose2d()
Default Constructor for Pose2d.
Definition pose2d.h:28
Represents robot chassis accelerations.
Definition chassis_accelerations.h:12
Represents robot chassis velocities.
Definition chassis_velocities.h:14