490. SSP API
490.1 SSP RPCs
The following Remote Procedure Calls (RPCs) are defined in the Protobuf file ssp.proto.
| Method Name | Description |
|---|---|
| init | This RPC is used to initialize SSP This should always be the first message sent to SSP Request Type: init_req Response Type: init_resp |
| launch_simulator | This RPC is used to launch simulator server It should be used only if Foretify should be responsible for launching simulator server Request Type: launch_simulator_req Response Type: launch_simulator_resp |
| terminate_simulator | This RPC is used to terminate simulator server It should be used only if Foretify should be responsible for launching simulator server Request Type: terminate_simulator_req Response Type: terminate_simulator_resp |
| start_simulation | This RPC is used to start simulation. In case of external simulator server process, this function should also perform the connection to the server. It is expected to execute asynchroniously Request Type: start_simulation_req Response Type: start_simulation_resp |
| wait_start_simulation | This RPC is used to wait till SSP finishes starting simulation (including connection to simulator server if neccessary) Request Type: wait_start_simulation_req Response Type: wait_start_simulation_resp |
| end_simulation | This RPC is used to end simulation Request Type: end_simulation_req Response Type: end_simulation_resp |
| start_step | This RPC is used to signal SSP that it can start performing simulation step Request Type: start_step_req Response Type: start_step_resp |
| wait_step | This RPC is used to wait till SSP finishes performing simulation step Request Type: wait_step_req Response Type: wait_step_resp |
| get_actors_states | This RPC is used to get the updated state of actors in simulation Request Type: get_actors_states_req Response Type: get_actors_states_resp |
| create_actor | This RPC is used to create a new actor in simulation Request Type: create_actor_req Response Type: create_actor_resp |
| set_actor_params | This RPC is used to set actor simulation related parameters Request Type: set_actor_params_req Response Type: set_actor_params_resp |
| destroy_actor | This RPC is used to remove actor from simulation Request Type: destroy_actor_req Response Type: destroy_actor_resp |
| set_weather | This RPC is used to set weather conditions in simulation Request Type: set_weather_req Response Type: set_weather_resp |
| set_time_of_day | This RPC is used to set time of day in simulation Request Type: set_time_of_day_req Response Type: set_time_of_day_resp |
| sim_command | This RPC provides a mechanism for passing arbitrary string commands to and from the simulator Request Type: sim_command_req Response Type: sim_command_resp |
| set_xy_trajectory_move | This RPC is used to set a trajectory of an actor in terms of polyline, list of global (x,y) points with equal time intervals. Request Type: set_xy_trajectory_move_req Response Type: set_move_resp |
| set_steer_and_pedals_move | This RPC is used to set a trajectory in the form of throttle/brake pedals and steering wheel commands to the vehicle actuators. The actuators commands expressed as polynomial functions in time Request Type: set_steer_and_pedals_move_req Response Type: set_move_resp |
| set_dynamic_move | This RPC is used to set a trajectory in the form of throttle/brake pedals and steering wheel commands to the vehicle actuators. This message replaces set_steer_and_pedals_move message Request Type: set_dynamic_move_req Response Type: set_move_resp |
| set_actor_command | Sends an actor command such as gear shift or hand brake. Request Type: set_actor_command_req Response Type: set_actor_command_resp |
| set_external_controller_move | This message is used to set a move for externally controlled actors in the simulator, it can also be used to communicate the Ego path in the simulator Request Type: set_external_controller_move_req Response Type: set_move_resp |
| get_traffic_light_state | This message is used to get the state of a single traffic light signal Request Type: get_traffic_light_state_req Response Type: get_traffic_light_state_resp |
| set_traffic_light_state | This message is used to set the state of a single traffic light signal Request Type: set_traffic_light_state_req Response Type: set_traffic_light_state_resp |