7#include "proto/parameters.pb.h"
8#include "shared/constants.h"
9#include "software/geom/point.h"
10#include "software/time/timestamp.h"
14static const int NUM_PARAMS_TO_OPTIMIZE = 2;
31 Pass(
Point passer_point,
Point receiver_point,
double pass_speed_m_per_s);
42 Point passer_point,
const std::array<double, NUM_PARAMS_TO_OPTIMIZE>& pass_array,
43 double pass_speed_m_per_s);
58 const Point& pass_destination,
59 double dest_speed_m_per_s,
60 double min_pass_speed_m_per_s,
61 double max_pass_speed_m_per_s);
72 const Point& pass_destination,
73 const TbotsProto::PassingConfig& passing_config);
88 double receive_speed_m_per_s,
89 double min_pass_speed_m_per_s,
90 double max_pass_speed_m_per_s);
97 std::array<double, NUM_PARAMS_TO_OPTIMIZE>
toPassArray()
const;
134 double speed()
const;
152 friend std::ostream&
operator<<(std::ostream& output_stream,
const Pass& pass);
169 Point receiver_point;
172 double pass_speed_m_per_s;
friend std::ostream & operator<<(std::ostream &output_stream, const Pass &pass)
Definition pass.cpp:133
Angle receiverOrientation() const
Definition pass.cpp:20
bool operator==(const Pass &other) const
Definition pass.cpp:141
double speed() const
Definition pass.cpp:36
std::array< double, NUM_PARAMS_TO_OPTIMIZE > toPassArray() const
Definition pass.cpp:122
Point receiverPoint() const
Definition pass.cpp:15
Duration estimatePassDuration() const
Definition pass.cpp:127
static double getPassSpeed(const Point &ball_position, const Point &pass_destination, double receive_speed_m_per_s, double min_pass_speed_m_per_s, double max_pass_speed_m_per_s)
Definition pass.cpp:68
Point passerPoint() const
Definition pass.cpp:31
Angle passerOrientation() const
Definition pass.cpp:25
static Pass fromDestReceiveSpeed(const Point &ball_position, const Point &pass_destination, double dest_speed_m_per_s, double min_pass_speed_m_per_s, double max_pass_speed_m_per_s)
Definition pass.cpp:48
static Pass fromPassArray(Point passer_point, const std::array< double, NUM_PARAMS_TO_OPTIMIZE > &pass_array, double pass_speed_m_per_s)
Definition pass.cpp:41