CARLA
 
载入中...
搜索中...
未找到
Public 成员函数 | Private 类型 | Private 属性 | 所有成员列表
carla::traffic_manager::TrackTraffic类 参考

#include <TrackTraffic.h>

+ carla::traffic_manager::TrackTraffic 的协作图:

Public 成员函数

void AddTakenGrid (const GeoGridId geogrid_id, const ActorId actor_id)
 
void Clear ()
 
void DeleteActor (ActorId actor_id)
 Method to delete actor data from tracking.
 
cg::Location GetHeroLocation () const
 
ActorIdSet GetOverlappingVehicles (ActorId actor_id) const
 
ActorIdSet GetPassingVehicles (uint64_t waypoint_id) const
 
bool IsGeoGridFree (const GeoGridId geogrid_id) const
 
void RemovePassingVehicle (uint64_t waypoint_id, ActorId actor_id)
 
void SetHeroLocation (const cg::Location location)
 
 TrackTraffic ()
 
void UpdateGridPosition (const ActorId actor_id, const Buffer &buffer)
 
void UpdatePassingVehicle (uint64_t waypoint_id, ActorId actor_id)
 Methods to update, remove and retrieve vehicles passing through a waypoint.
 
void UpdateUnregisteredGridPosition (const ActorId actor_id, const std::vector< SimpleWaypointPtr > waypoints)
 

Private 类型

using WaypointIdSet = std::unordered_set<uint64_t>
 Structure to keep track of waypoints occupied by vehicles;
 
using WaypointOccupancyMap = std::unordered_map<ActorId, WaypointIdSet>
 
using WaypointOverlap = std::unordered_map<uint64_t, ActorIdSet>
 Structure to keep track of overlapping waypoints between vehicles.
 

Private 属性

std::unordered_map< ActorId, std::unordered_set< GeoGridId > > actor_to_grids
 Geodesic grids occupied by actors's paths.
 
std::unordered_map< GeoGridId, ActorIdSetgrid_to_actors
 Actors currently passing through grids.
 
cg::Location hero_location = cg::Location(0,0,0)
 Current hero location.
 
WaypointOccupancyMap waypoint_occupied
 
WaypointOverlap waypoint_overlap_tracker
 

详细描述

在文件 TrackTraffic.h19 行定义.

成员类型定义说明

◆ WaypointIdSet

using carla::traffic_manager::TrackTraffic::WaypointIdSet = std::unordered_set<uint64_t>
private

Structure to keep track of waypoints occupied by vehicles;

在文件 TrackTraffic.h27 行定义.

◆ WaypointOccupancyMap

在文件 TrackTraffic.h28 行定义.

◆ WaypointOverlap

using carla::traffic_manager::TrackTraffic::WaypointOverlap = std::unordered_map<uint64_t, ActorIdSet>
private

Structure to keep track of overlapping waypoints between vehicles.

在文件 TrackTraffic.h23 行定义.

构造及析构函数说明

◆ TrackTraffic()

carla::traffic_manager::TrackTraffic::TrackTraffic ( )

在文件 TrackTraffic.cpp12 行定义.

成员函数说明

◆ AddTakenGrid()

void carla::traffic_manager::TrackTraffic::AddTakenGrid ( const GeoGridId geogrid_id,
const ActorId actor_id )

在文件 TrackTraffic.cpp86 行定义.

引用了 grid_to_actors.

被这些函数引用 carla::traffic_manager::MotionPlanStage::Update().

+ 这是这个函数的调用关系图:

◆ Clear()

void carla::traffic_manager::TrackTraffic::Clear ( )

在文件 TrackTraffic.cpp186 行定义.

引用了 actor_to_grids, grid_to_actors, waypoint_occupied , 以及 waypoint_overlap_tracker.

被这些函数引用 carla::traffic_manager::TrafficManagerLocal::Stop().

+ 这是这个函数的调用关系图:

◆ DeleteActor()

void carla::traffic_manager::TrackTraffic::DeleteActor ( ActorId actor_id)

Method to delete actor data from tracking.

在文件 TrackTraffic.cpp117 行定义.

引用了 actor_to_grids, grid_to_actors, RemovePassingVehicle() , 以及 waypoint_occupied.

被这些函数引用 carla::traffic_manager::ALSM::RemoveActor() , 以及 UpdateUnregisteredGridPosition().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ GetHeroLocation()

cg::Location carla::traffic_manager::TrackTraffic::GetHeroLocation ( ) const

在文件 TrackTraffic.cpp97 行定义.

引用了 hero_location.

被这些函数引用 carla::traffic_manager::MotionPlanStage::Update().

+ 这是这个函数的调用关系图:

◆ GetOverlappingVehicles()

ActorIdSet carla::traffic_manager::TrackTraffic::GetOverlappingVehicles ( ActorId actor_id) const

在文件 TrackTraffic.cpp101 行定义.

引用了 actor_to_grids , 以及 grid_to_actors.

被这些函数引用 carla::traffic_manager::LocalizationStage::AssignLaneChange() , 以及 carla::traffic_manager::CollisionStage::Update().

+ 这是这个函数的调用关系图:

◆ GetPassingVehicles()

ActorIdSet carla::traffic_manager::TrackTraffic::GetPassingVehicles ( uint64_t waypoint_id) const

在文件 TrackTraffic.cpp177 行定义.

引用了 waypoint_overlap_tracker.

被这些函数引用 carla::traffic_manager::LocalizationStage::AssignLaneChange() , 以及 carla::traffic_manager::MotionPlanStage::SafeAfterJunction().

+ 这是这个函数的调用关系图:

◆ IsGeoGridFree()

bool carla::traffic_manager::TrackTraffic::IsGeoGridFree ( const GeoGridId geogrid_id) const

在文件 TrackTraffic.cpp79 行定义.

引用了 grid_to_actors.

被这些函数引用 carla::traffic_manager::MotionPlanStage::Update().

+ 这是这个函数的调用关系图:

◆ RemovePassingVehicle()

void carla::traffic_manager::TrackTraffic::RemovePassingVehicle ( uint64_t waypoint_id,
ActorId actor_id )

在文件 TrackTraffic.cpp157 行定义.

引用了 waypoint_occupied , 以及 waypoint_overlap_tracker.

被这些函数引用 DeleteActor() , 以及 carla::traffic_manager::PopWaypoint().

+ 这是这个函数的调用关系图:

◆ SetHeroLocation()

void carla::traffic_manager::TrackTraffic::SetHeroLocation ( const cg::Location location)

在文件 TrackTraffic.cpp93 行定义.

引用了 hero_location.

被这些函数引用 carla::traffic_manager::ALSM::UpdateRegisteredActorsData().

+ 这是这个函数的调用关系图:

◆ UpdateGridPosition()

void carla::traffic_manager::TrackTraffic::UpdateGridPosition ( const ActorId actor_id,
const Buffer & buffer )

在文件 TrackTraffic.cpp40 行定义.

引用了 actor_to_grids , 以及 grid_to_actors.

被这些函数引用 carla::traffic_manager::LocalizationStage::Update().

+ 这是这个函数的调用关系图:

◆ UpdatePassingVehicle()

void carla::traffic_manager::TrackTraffic::UpdatePassingVehicle ( uint64_t waypoint_id,
ActorId actor_id )

Methods to update, remove and retrieve vehicles passing through a waypoint.

在文件 TrackTraffic.cpp137 行定义.

引用了 waypoint_occupied , 以及 waypoint_overlap_tracker.

被这些函数引用 carla::traffic_manager::PushWaypoint() , 以及 UpdateUnregisteredGridPosition().

+ 这是这个函数的调用关系图:

◆ UpdateUnregisteredGridPosition()

void carla::traffic_manager::TrackTraffic::UpdateUnregisteredGridPosition ( const ActorId actor_id,
const std::vector< SimpleWaypointPtr > waypoints )

在文件 TrackTraffic.cpp14 行定义.

引用了 actor_to_grids, DeleteActor(), grid_to_actors , 以及 UpdatePassingVehicle().

被这些函数引用 carla::traffic_manager::ALSM::UpdateUnregisteredActorsData().

+ 函数调用图:
+ 这是这个函数的调用关系图:

类成员变量说明

◆ actor_to_grids

std::unordered_map<ActorId, std::unordered_set<GeoGridId> > carla::traffic_manager::TrackTraffic::actor_to_grids
private

Geodesic grids occupied by actors's paths.

在文件 TrackTraffic.h32 行定义.

被这些函数引用 Clear(), DeleteActor(), GetOverlappingVehicles(), UpdateGridPosition() , 以及 UpdateUnregisteredGridPosition().

◆ grid_to_actors

std::unordered_map<GeoGridId, ActorIdSet> carla::traffic_manager::TrackTraffic::grid_to_actors
private

Actors currently passing through grids.

在文件 TrackTraffic.h34 行定义.

被这些函数引用 AddTakenGrid(), Clear(), DeleteActor(), GetOverlappingVehicles(), IsGeoGridFree(), UpdateGridPosition() , 以及 UpdateUnregisteredGridPosition().

◆ hero_location

cg::Location carla::traffic_manager::TrackTraffic::hero_location = cg::Location(0,0,0)
private

Current hero location.

在文件 TrackTraffic.h36 行定义.

被这些函数引用 GetHeroLocation() , 以及 SetHeroLocation().

◆ waypoint_occupied

WaypointOccupancyMap carla::traffic_manager::TrackTraffic::waypoint_occupied
private

在文件 TrackTraffic.h29 行定义.

被这些函数引用 Clear(), DeleteActor(), RemovePassingVehicle() , 以及 UpdatePassingVehicle().

◆ waypoint_overlap_tracker

WaypointOverlap carla::traffic_manager::TrackTraffic::waypoint_overlap_tracker
private

在文件 TrackTraffic.h24 行定义.

被这些函数引用 Clear(), GetPassingVehicles(), RemovePassingVehicle() , 以及 UpdatePassingVehicle().


该类的文档由以下文件生成: