46 class AckermannControllerSettings;
47 class ActorDescription;
49 class VehicleAckermannControl;
52 class WalkerBoneControlIn;
53 class WalkerBoneControlOut;
73 const std::string &host,
75 size_t worker_threads = 0u);
80 bool IsTrafficManagerRunning(uint16_t port)
const;
84 std::pair<std::string, uint16_t> GetTrafficManagerRunning(uint16_t port)
const;
87 bool AddTrafficManagerRunning(std::pair<std::string, uint16_t> trafficManagerInfo)
const;
89 void DestroyTrafficManager(uint16_t port)
const;
95 const std::string GetEndpoint()
const;
97 std::string GetClientVersion();
99 std::string GetServerVersion();
107 void CopyOpenDriveToServer(
110 void ApplyColorTextureToObjects(
111 const std::vector<std::string> &objects_name,
115 void ApplyColorTextureToObjects(
116 const std::vector<std::string> &objects_name,
120 std::vector<std::string> GetNamesOfAllObjects()
const;
126 std::vector<uint8_t> GetNavigationMesh()
const;
128 bool SetFilesBaseFolder(
const std::string &path);
130 std::vector<std::string> GetRequiredFiles(
const std::string &folder =
"",
const bool download =
true)
const;
132 std::string GetMapData()
const;
134 void RequestFile(
const std::string &name)
const;
136 std::vector<uint8_t> GetCacheFile(
const std::string &name,
const bool request_otherwise =
true)
const;
138 std::vector<std::string> GetAvailableMaps();
140 std::vector<rpc::ActorDefinition> GetActorDefinitions();
152 std::vector<rpc::Actor> GetActorsById(
const std::vector<ActorId> &ids);
158 void ApplyPhysicsControlToVehicle(
162 void SetLightStateToVehicle(
166 void OpenVehicleDoor(
170 void CloseVehicleDoor(
186 void SetActorLocation(
190 void SetActorTransform(
194 void SetActorTargetVelocity(
198 void SetActorTargetAngularVelocity(
202 void EnableActorConstantVelocity(
206 void DisableActorConstantVelocity(
209 void AddActorImpulse(
213 void AddActorImpulse(
227 void AddActorAngularImpulse(
235 void SetActorSimulatePhysics(
239 void SetActorCollisions(
246 void SetActorEnableGravity(
250 void SetActorAutopilot(
254 void ShowVehicleDebugTelemetry(
258 void ApplyControlToVehicle(
262 void ApplyAckermannControlToVehicle(
268 void ApplyAckermannControllerSettings(
274 std::string simfile_path);
280 void SetWheelSteerDirection(
286 float GetWheelSteerAngle(
291 void EnableChronoPhysics(
293 uint64_t MaxSubsteps,
294 float MaxSubstepDeltaTime,
295 std::string VehicleJSON,
296 std::string PowertrainJSON,
297 std::string TireJSON,
298 std::string BaseJSONPath);
300 void ApplyControlToWalker(
307 void SetBonesTransform(
315 void GetPoseFromAnimation(
318 void SetTrafficLightState(
322 void SetTrafficLightGreenTime(
326 void SetTrafficLightYellowTime(
330 void SetTrafficLightRedTime(
334 void FreezeTrafficLight(
338 void ResetTrafficLightGroup(
341 void ResetAllTrafficLights();
343 void FreezeAllTrafficLights(
bool frozen);
345 std::vector<geom::BoundingBox> GetLightBoxes(
352 std::vector<ActorId> GetGroupTrafficLights(
355 std::string StartRecorder(std::string name,
bool additional_data);
359 std::string ShowRecorderFileInfo(std::string name,
bool show_all);
361 std::string ShowRecorderCollisions(std::string name,
char type1,
char type2);
363 std::string ShowRecorderActorsBlocked(std::string name,
double min_time,
double min_distance);
365 std::string ReplayFile(std::string name,
double start,
double duration,
366 uint32_t follow_id,
bool replay_sensors);
368 void SetReplayerTimeFactor(
double time_factor);
370 void SetReplayerIgnoreHero(
bool ignore_hero);
372 void SetReplayerIgnoreSpectator(
bool ignore_spectator);
374 void StopReplayer(
bool keep_actors);
376 void SubscribeToStream(
378 std::function<
void(
Buffer)> callback);
380 void SubscribeToGBuffer(
383 std::function<
void(
Buffer)> callback);
393 void UnSubscribeFromGBuffer(
400 std::vector<rpc::Command> commands,
403 std::vector<rpc::CommandResponse> ApplyBatchSync(
404 std::vector<rpc::Command> commands,
407 uint64_t SendTickCue();
409 std::vector<rpc::LightState> QueryLightsStateToServer()
const;
411 void UpdateServerLightsState(
412 std::vector<rpc::LightState>& lights,
413 bool discard_client =
false)
const;
415 void UpdateDayNightCycle(
const bool active)
const;
418 std::vector<geom::BoundingBox> GetLevelBBs(uint8_t queried_tag)
const;
420 std::vector<rpc::EnvironmentObject> GetEnvironmentObjects(uint8_t queried_tag)
const;
422 void EnableEnvironmentObjects(
423 std::vector<uint64_t> env_objects_ids,
426 std::pair<bool,rpc::LabelledPoint> ProjectPoint(
429 std::vector<rpc::LabelledPoint> CastRay(
435 const std::unique_ptr<Pimpl>
_pimpl;
Seting for map generation from opendrive without additional geometry.
std::vector< std::pair< ActorId, VehicleLightState::flag_type > > VehicleLightStateList
This file contains definitions of common data structures used in traffic manager. ...
std::deque< std::shared_ptr< SimpleWaypoint > > Buffer
const std::unique_ptr< Pimpl > _pimpl
Base class for all the objects containing data generated by a sensor.
A token that uniquely identify a stream.
Provides communication with the rpc and streaming servers of a CARLA simulator.
Positive time duration up to milliseconds resolution.
Inherit (privately) to suppress copy/move construction and assignment.
Defines the physical appearance of a vehicle whitch is obtained by the sensors.