43 std::shared_ptr<InternalData> internal_ =
nullptr;
45 std::mutex lock_hdmap_junction_id_;
47 std::shared_ptr<OSLight> last_os_light_ =
nullptr;
48 uint64_t ts_last_os_light_ = 0;
49 std::mutex lock_last_os_light_;
52 explicit V2xProxy(std::shared_ptr<::apollo::hdmap::HDMap> hdmap =
nullptr);
60 v2x_car_status_timer_->Stop();
61 obu_status_timer_->Stop();
62 rsu_whitelist_timer_->Stop();
66 std::set<std::string> *whitelist);
71 void RecvTrafficlight();
73 void RecvOsPlanning();
77 std::unique_ptr<::apollo::cyber::Timer> v2x_car_status_timer_;
78 std::unique_ptr<::apollo::cyber::Timer> obu_status_timer_;
79 std::unique_ptr<::apollo::cyber::Timer> rsu_whitelist_timer_;
81 std::unique_ptr<::apollo::cyber::Node> node_ =
nullptr;
82 std::unique_ptr<OsInterFace> os_interface_;
83 std::unique_ptr<ObuInterFaceGrpcImpl> obu_interface_;
84 std::unique_ptr<std::thread> recv_thread_ =
nullptr;
85 std::unique_ptr<std::thread> planning_thread_ =
nullptr;
86 std::unique_ptr<std::thread> rsi_thread_ =
nullptr;
87 std::unique_ptr<std::thread> obs_thread_ =
nullptr;
91 void OnV2xCarStatusTimer();
93 std::shared_ptr<::apollo::hdmap::HDMap> hdmap_;
95 bool init_flag_ =
false;
96 bool init_heading_ =
false;
97 double heading_ = 0.0001;
99 std::atomic<bool> exit_;
100 std::mutex rsu_list_mutex_;
101 std::set<std::string> rsu_list_;
define v2x proxy module and apollo os interface
V2xProxy(std::shared_ptr<::apollo::hdmap::HDMap > hdmap=nullptr)
define v2x proxy module and onboard unit interface grpc impl class
PlanningContext is the runtime context in planning. It is persistent across multiple frames...
Definition: atomic_hash_map.h:25
bool GetRsuListFromFile(const std::string &filename, std::set< std::string > *whitelist)
const char *const kUnknownJunctionId
Definition: utils.h:40
void stop()
Definition: v2x_proxy.h:58
Definition: v2x_proxy.h:41