15#include <unordered_set>
16#include <unordered_map>
41 class CarlaTransformPublisher;
42 class CarlaClockPublisher;
43 class CarlaEgoVehicleControlSubscriber;
86 int W,
int H,
float Fov,
88 void *actor =
nullptr);
94 void *actor =
nullptr);
102 void *actor =
nullptr);
104 uint64_t sensor_type,
108 int W,
int H,
float Fov,
109 void *actor =
nullptr);
111 uint64_t sensor_type,
115 void *actor =
nullptr);
117 uint64_t sensor_type,
121 void *actor =
nullptr);
123 uint64_t sensor_type,
127 void *actor =
nullptr);
129 uint64_t sensor_type,
135 void *actor =
nullptr);
137 uint64_t sensor_type,
140 uint32_t other_actor,
160 std::unordered_map<void *, std::shared_ptr<CarlaPublisher>>
_publishers;
161 std::unordered_map<void *, std::shared_ptr<CarlaTransformPublisher>>
_transforms;
std::unordered_map< void *, std::shared_ptr< CarlaTransformPublisher > > _transforms
void ProcessDataFromRadar(uint64_t sensor_type, carla::streaming::detail::stream_id_type stream_id, const carla::geom::Transform sensor_transform, const carla::sensor::data::RadarData &data, void *actor=nullptr)
void ProcessDataFromDVS(uint64_t sensor_type, carla::streaming::detail::stream_id_type stream_id, const carla::geom::Transform sensor_transform, const carla::SharedBufferView buffer, int W, int H, float Fov, void *actor=nullptr)
static std::shared_ptr< ROS2 > _instance
std::string GetActorParentRosName(void *actor)
static std::shared_ptr< ROS2 > GetInstance()
std::unordered_set< carla::streaming::detail::stream_id_type > _publish_stream
void AddActorCallback(void *actor, std::string ros_name, ActorCallback callback)
void RemoveActorRosName(void *actor)
void ProcessDataFromIMU(uint64_t sensor_type, carla::streaming::detail::stream_id_type stream_id, const carla::geom::Transform sensor_transform, carla::geom::Vector3D accelerometer, carla::geom::Vector3D gyroscope, float compass, void *actor=nullptr)
std::string GetActorRosName(void *actor)
void ProcessDataFromObstacleDetection(uint64_t sensor_type, carla::streaming::detail::stream_id_type stream_id, const carla::geom::Transform sensor_transform, AActor *first_actor, AActor *second_actor, float distance, void *actor=nullptr)
void ProcessDataFromCamera(uint64_t sensor_type, carla::streaming::detail::stream_id_type stream_id, const carla::geom::Transform sensor_transform, int W, int H, float Fov, const carla::SharedBufferView buffer, void *actor=nullptr)
std::unordered_map< void *, ActorCallback > _actor_callbacks
ROS2(const ROS2 &obj)=delete
void ProcessDataFromSemanticLidar(uint64_t sensor_type, carla::streaming::detail::stream_id_type stream_id, const carla::geom::Transform sensor_transform, carla::sensor::data::SemanticLidarData &data, void *actor=nullptr)
std::shared_ptr< CarlaClockPublisher > _clock_publisher
void ProcessDataFromCollisionSensor(uint64_t sensor_type, carla::streaming::detail::stream_id_type stream_id, const carla::geom::Transform sensor_transform, uint32_t other_actor, carla::geom::Vector3D impulse, void *actor)
std::shared_ptr< CarlaEgoVehicleControlSubscriber > _controller
void AddActorRosName(void *actor, std::string ros_name)
bool IsStreamEnabled(carla::streaming::detail::stream_id_type id)
void UpdateActorRosName(void *actor, std::string ros_name)
std::unordered_map< void *, std::vector< void * > > _actor_parent_ros_name
void AddActorParentRosName(void *actor, void *parent)
void SetTimestamp(double timestamp)
void RemoveActorCallback(void *actor)
void ProcessDataFromLidar(uint64_t sensor_type, carla::streaming::detail::stream_id_type stream_id, const carla::geom::Transform sensor_transform, carla::sensor::data::LidarData &data, void *actor=nullptr)
void SetFrame(uint64_t frame)
std::pair< std::shared_ptr< CarlaPublisher >, std::shared_ptr< CarlaTransformPublisher > > GetOrCreateSensor(int type, carla::streaming::detail::stream_id_type id, void *actor)
void EnableStream(carla::streaming::detail::stream_id_type id)
std::unordered_map< void *, std::string > _actor_ros_name
std::unordered_map< void *, std::shared_ptr< CarlaPublisher > > _publishers
void ProcessDataFromGNSS(uint64_t sensor_type, carla::streaming::detail::stream_id_type stream_id, const carla::geom::Transform sensor_transform, const carla::geom::GeoLocation &data, void *actor=nullptr)
std::function< void(void *actor, ROS2CallbackData data)> ActorCallback
This file contains definitions of common data structures used in traffic manager.
std::shared_ptr< BufferView > SharedBufferView