Formula Student Autonomous Systems
The code for the main driverless system
Loading...
Searching...
No Matches
vehicle_model.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <memory>
4#include <string>
5
13public:
14 virtual ~VehicleModel() = default;
15 virtual void step(double dt) = 0;
16 virtual void reset() = 0;
17
18 // Essential state getters
19 virtual double get_position_x() const = 0;
20 virtual double get_position_y() const = 0;
21 virtual double get_yaw() const = 0;
22 virtual double get_velocity_x() const = 0;
23
24 // Essential state setters
25 virtual void set_position(double x, double y, double yaw) = 0;
26 virtual void set_velocity(double vx) = 0;
27
28 // Control inputs
29 virtual void set_steering(double angle) = 0;
30 virtual void set_throttle(double throttle) = 0;
31
32 virtual std::string get_model_name() const = 0;
33};
Vehicle model interface.
virtual void set_steering(double angle)=0
virtual void set_velocity(double vx)=0
virtual double get_yaw() const =0
virtual double get_position_x() const =0
virtual double get_position_y() const =0
virtual void set_throttle(double throttle)=0
virtual std::string get_model_name() const =0
virtual void set_position(double x, double y, double yaw)=0
virtual ~VehicleModel()=default
virtual void step(double dt)=0
virtual void reset()=0
virtual double get_velocity_x() const =0