5#include "proto/team.pb.h"
6#include "software/constants.h"
7#include "software/geom/polygon.h"
8#include "software/time/timestamp.h"
9#include "software/world/robot_capabilities.h"
10#include "software/world/robot_state.h"
35 const std::set<RobotCapability> &unavailable_capabilities =
36 std::set<RobotCapability>(),
51 const std::set<RobotCapability> &unavailable_capabilities =
52 std::set<RobotCapability>(),
65 explicit Robot(
const TbotsProto::Robot &robot_proto);
168 const Point &test_point,
169 double TOLERANCE = BALL_TO_FRONT_OF_ROBOT_DISTANCE_WHEN_DRIBBLING)
const;
181 const Angle &desired_orientation,
229 bool operator()(
const Robot &r1,
const Robot &r2)
const
231 return r1.
id() < r2.
id();
242 std::set<RobotCapability> unavailable_capabilities_;
247 create2021RobotConstants();
static constexpr Angle zero()
Definition angle.h:378
Definition robot_state.h:19
Vector velocity() const
Definition robot.cpp:83
RobotState currentState() const
Definition robot.cpp:63
RobotId id() const
Definition robot.cpp:73
Duration getTimeToPosition(const Point &destination, const Vector &final_velocity=Vector()) const
Definition robot.cpp:188
const std::set< RobotCapability > & getUnavailableCapabilities() const
Definition robot.cpp:129
bool operator!=(const Robot &other) const
Definition robot.cpp:124
void updateState(const RobotState &state, const Timestamp ×tamp)
Definition robot.cpp:57
bool operator==(const Robot &other) const
Definition robot.cpp:116
std::set< RobotCapability > & getMutableRobotCapabilities()
Definition robot.cpp:148
AngularVelocity angularVelocity() const
Definition robot.cpp:93
const RobotConstants_t & robotConstants() const
Definition robot.cpp:153
std::set< RobotCapability > getAvailableCapabilities() const
Definition robot.cpp:134
Polygon dribblerArea() const
Definition robot.cpp:158
Timestamp timestamp() const
Definition robot.cpp:68
Point position() const
Definition robot.cpp:78
Angle orientation() const
Definition robot.cpp:88
Duration getTimeToOrientation(const Angle &desired_orientation, const AngularVelocity &final_angular_velocity=AngularVelocity::zero()) const
Definition robot.cpp:177
bool isNearDribbler(const Point &test_point, double TOLERANCE=BALL_TO_FRONT_OF_ROBOT_DISTANCE_WHEN_DRIBBLING) const
Definition robot.cpp:98
Definition timestamp.h:21
Definition robot_constants.h:7