Fang-Robotics-MCB
Fang Robotics Team Codebase
Loading...
Searching...
No Matches
field_drift_command.hpp
Go to the documentation of this file.
1#ifndef FANG_ROBOTICS_MCB_CONTROL_CHASSIS_HOLONOMIC_COMMAND_FIELD_DRIFT_COMMAND_HPP
2#define FANG_ROBOTICS_MCB_CONTROL_CHASSIS_HOLONOMIC_COMMAND_FIELD_DRIFT_COMMAND_HPP
5
7
8namespace fang::chassis
9{
16 {
17 public:
31
36 (
37 HolonomicSubsystem& holonomicSubsystem,
38 ChassisInputHandler& inputHandler,
39 const Config& config
40 );
41
42 virtual ~FieldDriftCommand() = default;
43
44 const char* getName() const override;
45 void initialize() override;
46 void execute() override;
47 void end(bool interrupted) override;
48 bool isFinished() const;
49
50 protected:
55
60 RPM getFieldRotation() const;
61
62 static constexpr const char* kName{"Field Drift"};
63
67
68 private:
69 static void assertConfigValues(const Config& config);
70 static void assertGetFieldTranslationUniformSigns
71 (
72 const math::AbstractVector2D& abstractFieldTranslation,
73 const physics::Velocity2D& fieldTranslation
74 );
75 };
76}//namespace chassis
77#endif
Definition chassis_input_handler.hpp:12
Definition field_drift_command.hpp:16
void initialize() override
Definition field_drift_command.cpp:33
const char * getName() const override
Definition field_drift_command.cpp:28
RPM getFieldRotation() const
Definition field_drift_command.cpp:102
void end(bool interrupted) override
Definition field_drift_command.cpp:43
physics::Velocity2D getFieldTranslation() const
Definition field_drift_command.cpp:52
HolonomicSubsystem & holonomicSubsystem_
Definition field_drift_command.hpp:64
bool isFinished() const
Definition field_drift_command.cpp:47
void execute() override
Definition field_drift_command.cpp:37
const Config kConfig_
Definition field_drift_command.hpp:66
ChassisInputHandler & chassisInput_
Definition field_drift_command.hpp:65
virtual ~FieldDriftCommand()=default
static constexpr const char * kName
Definition field_drift_command.hpp:62
Definition holonomic_subsystem.hpp:12
Definition command.hpp:44
Definition pwm_info.hpp:4
Definition basic_downscaler.cpp:4
Definition field_drift_command.hpp:27
RPM maxRotation
Definition field_drift_command.hpp:29
physics::Velocity2D maxTranslation
Definition field_drift_command.hpp:28
units::angular_velocity::revolutions_per_minute_t RPM
Definition units_alias.hpp:30