Auterion App SDK
Auterion SDK is a library that can be used by AuterionOS apps to communicate with the system.
dynamics_control.hpp
1 #pragma once
2 
3 #include <eigen3/Eigen/Eigen>
4 #include <functional>
5 #include <memory>
6 #include <variant>
7 
8 #include "../../auterion.hpp"
9 
10 namespace auterion {
11 namespace fixedwing {
12 
24  private:
25  float _course_setpoint = NAN;
26  float _lateral_acceleration_setpoint = NAN;
27  float _altitude_setpoint = NAN;
28  float _height_rate_setpoint = NAN;
29  float _equivalent_airspeed_setpoint = NAN;
30 
31  public:
35  class Config {};
36 
37  DynamicsSetpoint() = default;
38 
39  DynamicsSetpoint& withCourse(float course_sp) {
40  _course_setpoint = course_sp;
41  return *this;
42  }
43 
44  DynamicsSetpoint& withLateralAcceleration(float acceleration_sp) {
45  _lateral_acceleration_setpoint = acceleration_sp;
46  return *this;
47  }
48 
49  DynamicsSetpoint& withAltitude(float altitude_sp) {
50  _altitude_setpoint = altitude_sp;
51  return *this;
52  }
53 
54  DynamicsSetpoint& withHeightRate(float height_rate_sp) {
55  _height_rate_setpoint = height_rate_sp;
56  return *this;
57  }
58 
59  DynamicsSetpoint& withEquivalentAirspeed(float equivalent_airspeed_sp) {
60  _equivalent_airspeed_setpoint = equivalent_airspeed_sp;
61  return *this;
62  }
63 
64  inline float getCourseSetpoint() const { return _course_setpoint; }
65  inline float getLateralAccelerationSetpoint() const { return _lateral_acceleration_setpoint; }
66  inline float getAltitudeSetpoint() const { return _altitude_setpoint; }
67  inline float getHeightRateSetpoint() const { return _height_rate_setpoint; }
68  inline float getEquivalentAirspeedSetpoint() const { return _equivalent_airspeed_setpoint; }
69 };
70 } // namespace fixedwing
71 } // namespace auterion
Placeholder config.
Definition: dynamics_control.hpp:35
Represents a setpoint to control course, altitude, equivalent airspeed, height rate and lateral accel...
Definition: dynamics_control.hpp:23