19 #include <boost/thread/locks.hpp> 20 #include <boost/thread/shared_mutex.hpp> 23 #include "nlohmann/json.hpp" 26 #include "modules/planning/proto/pad_msg.pb.h" 27 #include "modules/planning/proto/planning.pb.h" 28 #include "modules/teleop/daemon/proto/daemon_cmd.pb.h" 29 #include "modules/teleop/daemon/proto/daemon_rpt.pb.h" 30 #include "modules/teleop/modem/proto/modem_info.pb.h" 45 void RegisterMessageHandlers();
51 void SendAudioStreamCmd(
bool start_stop);
52 void SendMicStreamCmd(
bool start_stop);
53 void SendVideoStreamCmd(
bool start_stop);
56 void SendPullOverCmd();
57 void SendResumeCruiseCmd();
60 const std::shared_ptr<modules::teleop::modem::ModemInfo> &modem_info);
63 std::unique_ptr<cyber::Node> node_;
69 std::shared_ptr<cyber::Reader<modules::teleop::modem::ModemInfo>>
71 std::shared_ptr<cyber::Reader<modules::teleop::modem::ModemInfo>>
73 std::shared_ptr<cyber::Reader<modules::teleop::modem::ModemInfo>>
77 const std::string &modem_id,
78 const std::shared_ptr<modules::teleop::modem::ModemInfo> &modem_info);
80 std::shared_ptr<cyber::Reader<apollo::planning::ADCTrajectory>>
84 void UpdateCarDaemonRpt(
85 const std::shared_ptr<modules::teleop::daemon::DaemonRpt> &rpt);
86 void UpdateOperatorDaemonRpt(
87 const std::shared_ptr<modules::teleop::daemon::DaemonRpt> &rpt);
88 std::shared_ptr<cyber::Reader<modules::teleop::daemon::DaemonRpt>>
89 remote_daemon_rpt_reader_;
90 std::shared_ptr<cyber::Reader<modules::teleop::daemon::DaemonRpt>>
91 local_daemon_rpt_reader_;
93 std::shared_ptr<cyber::Writer<modules::teleop::daemon::DaemonCmd>>
94 remote_daemon_cmd_writer_;
95 std::shared_ptr<cyber::Writer<modules::teleop::daemon::DaemonCmd>>
96 local_daemon_cmd_writer_;
99 std::shared_ptr<cyber::Writer<apollo::planning::PadMessage>>
102 const std::shared_ptr<apollo::planning::ADCTrajectory> &msg);
106 nlohmann::json teleop_status_;
110 boost::shared_mutex mutex_;
PlanningContext is the runtime context in planning. It is persistent across multiple frames...
Definition: atomic_hash_map.h:25
struct mg_connection Connection
Definition: websocket_handler.h:54
The WebSocketHandler, built on top of CivetWebSocketHandler, is a websocket handler that handles diff...
Definition: websocket_handler.h:46
TeleopService(WebSocketHandler *websocket)