24namespace traffic_manager {
26using namespace constants::HybridMode;
27using namespace constants::VehicleRemoval;
29namespace chr = std::chrono;
34using ActorMap = std::unordered_map<ActorId, ActorPtr>;
87 const bool hero_actor_present,
const float physics_radius_square);
ALSM: Agent Lifecycle and State Managerment This class has functionality to update the local cache of...
ALSM(AtomicActorSet ®istered_vehicles, BufferMap &buffer_map, TrackTraffic &track_traffic, std::vector< ActorId > &marked_for_removal, const Parameters ¶meters, const cc::World &world, const LocalMapPtr &local_map, SimulationState &simulation_state, LocalizationStage &localization_stage, CollisionStage &collision_stage, TrafficLightStage &traffic_light_stage, MotionPlanStage &motion_plan_stage, VehicleLightStage &vehicle_light_stage)
void IdentifyNewActors(const ActorList &actor_list)
void RemoveActor(const ActorId actor_id, const bool registered_actor)
AtomicActorSet & registered_vehicles
LocalizationStage & localization_stage
const LocalMapPtr & local_map
std::unordered_map< ActorId, bool > has_physics_enabled
VehicleLightStage & vehicle_light_stage
std::pair< ActorId, double > IdleInfo
bool IsVehicleStuck(const ActorId &actor_id)
MotionPlanStage & motion_plan_stage
std::pair< ActorIdSet, ActorIdSet > DestroyeddActors
CollisionStage & collision_stage
void UpdateData(const bool hybrid_physics_mode, const Actor &vehicle, const bool hero_actor_present, const float physics_radius_square)
void UpdateUnregisteredActorsData()
ActorMap unregistered_actors
cc::Timestamp current_timestamp
const Parameters & parameters
std::vector< ActorId > & marked_for_removal
SimulationState & simulation_state
void UpdateRegisteredActorsData(const bool hybrid_physics_mode, IdleInfo &max_idle_time)
TrafficLightStage & traffic_light_stage
void UpdateIdleTime(std::pair< ActorId, double > &max_idle_time, const ActorId &actor_id)
TrackTraffic & track_traffic
DestroyeddActors IdentifyDestroyedActors(const ActorList &actor_list)
double elapsed_last_actor_destruction
This class has functionality to detect potential collision with a nearby actor.
This class has functionality to maintain a horizon of waypoints ahead of the vehicle for it to follow...
This class holds the state of all the vehicles in the simlation.
This class has functionality for responding to traffic lights and managing entry into non-signalized ...
This class has functionality for turning on/off the vehicle lights according to the current vehicle s...
carla::SharedPtr< cc::Actor > Actor
carla::SharedPtr< cc::ActorList > ActorList
std::shared_ptr< InMemoryMap > LocalMapPtr
std::unordered_map< ActorId, double > IdleTimeMap
std::unordered_map< ActorId, ActorPtr > ActorMap
std::unordered_map< carla::ActorId, Buffer > BufferMap
This file contains definitions of common data structures used in traffic manager.
boost::shared_ptr< T > SharedPtr
Use this SharedPtr (boost::shared_ptr) to keep compatibility with boost::python, but it would be nice...