26#include "modules/planning/traffic_rules/keepclear/proto/keepclear.pb.h"
37 bool Init(
const std::string& name,
38 const std::shared_ptr<DependencyInjector>& injector)
override;
46 bool IsCreeping(
const double pnc_junction_start_s,
47 const double adc_front_edge_s)
const;
49 bool BuildKeepClearObstacle(
Frame*
const frame,
51 const std::string& virtual_obstacle_id,
52 const double keep_clear_start_s,
53 const double keep_clear_end_s);
57 static constexpr char const* KEEP_CLEAR_VO_ID_PREFIX =
"KC_";
58 static constexpr char const* KEEP_CLEAR_JUNCTION_VO_ID_PREFIX =
"KC_JC_";
A general class to denote the return status of an API call.
Frame holds all data for one planning cycle.
This class creates a virtual obstacle for each clear area region.
common::Status ApplyRule(Frame *const frame, ReferenceLineInfo *const reference_line_info)
virtual ~KeepClear()=default
bool Init(const std::string &name, const std::shared_ptr< DependencyInjector > &injector) override
ReferenceLineInfo holds all data for one reference line.
Planning module main class.
#define CYBER_PLUGIN_MANAGER_REGISTER_PLUGIN(name, base)