15 #ifndef SIMULATION_INTERFACE__ZMQ_MULTI_CLIENT_HPP_
16 #define SIMULATION_INTERFACE__ZMQ_MULTI_CLIENT_HPP_
18 #include <simulation_api_schema.pb.h>
23 #include <rclcpp/rclcpp.hpp>
28 #include <zmqpp/zmqpp.hpp>
37 const unsigned int socket_port);
43 auto call(
const simulation_api_schema::SimulationRequest &)
44 -> simulation_api_schema::SimulationResponse;
46 auto call(
const simulation_api_schema::InitializeRequest &)
47 -> simulation_api_schema::InitializeResponse;
49 auto call(
const simulation_api_schema::UpdateFrameRequest &)
50 -> simulation_api_schema::UpdateFrameResponse;
52 auto call(
const simulation_api_schema::UpdateStepTimeRequest &)
53 -> simulation_api_schema::UpdateStepTimeResponse;
55 auto call(
const simulation_api_schema::SpawnVehicleEntityRequest &)
56 -> simulation_api_schema::SpawnVehicleEntityResponse;
58 auto call(
const simulation_api_schema::SpawnPedestrianEntityRequest &)
59 -> simulation_api_schema::SpawnPedestrianEntityResponse;
61 auto call(
const simulation_api_schema::SpawnMiscObjectEntityRequest &)
62 -> simulation_api_schema::SpawnMiscObjectEntityResponse;
64 auto call(
const simulation_api_schema::DespawnEntityRequest &)
65 -> simulation_api_schema::DespawnEntityResponse;
67 auto call(
const simulation_api_schema::UpdateEntityStatusRequest &)
68 -> simulation_api_schema::UpdateEntityStatusResponse;
70 auto call(
const simulation_api_schema::AttachImuSensorRequest &)
71 -> simulation_api_schema::AttachImuSensorResponse;
73 auto call(
const simulation_api_schema::AttachLidarSensorRequest &)
74 -> simulation_api_schema::AttachLidarSensorResponse;
76 auto call(
const simulation_api_schema::AttachDetectionSensorRequest &)
77 -> simulation_api_schema::AttachDetectionSensorResponse;
79 auto call(
const simulation_api_schema::AttachOccupancyGridSensorRequest &)
80 -> simulation_api_schema::AttachOccupancyGridSensorResponse;
82 auto call(
const simulation_api_schema::UpdateTrafficLightsRequest &)
83 -> simulation_api_schema::UpdateTrafficLightsResponse;
85 auto call(
const simulation_api_schema::AttachPseudoTrafficLightDetectorRequest &)
86 -> simulation_api_schema::AttachPseudoTrafficLightDetectorResponse;
92 zmqpp::context context_;
93 const zmqpp::socket_type type_;
94 zmqpp::socket socket_;
96 bool is_running =
true;
Definition: zmq_multi_client.hpp:33
const simulation_interface::TransportProtocol protocol
Definition: zmq_multi_client.hpp:88
MultiClient(const simulation_interface::TransportProtocol &protocol, const std::string &hostname, const unsigned int socket_port)
Definition: zmq_multi_client.cpp:21
void closeConnection()
Definition: zmq_multi_client.cpp:33
auto call(const simulation_api_schema::SimulationRequest &) -> simulation_api_schema::SimulationResponse
Definition: zmq_multi_client.cpp:43
~MultiClient()
Definition: zmq_multi_client.cpp:41
const std::string hostname
Definition: zmq_multi_client.hpp:89
TransportProtocol
Definition: constants.hpp:22
std::string string
Definition: junit5.hpp:26
Definition: conversions.hpp:56