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

Class In charge of creating and assigning traffic light groups, controllers and components. 更多...

#include <TrafficLightManager.h>

+ 类 ATrafficLightManager 继承关系图:
+ ATrafficLightManager 的协作图:

Public 成员函数

 ATrafficLightManager ()
 
void GenerateSignalsAndTrafficLights ()
 
UTrafficLightControllerGetController (FString ControllerId)
 
bool GetFrozen ()
 
const boost::optional< carla::road::Map > & GetMap ()
 
ATrafficLightGroupGetTrafficGroup (int JunctionId)
 
USignComponent * GetTrafficSign (FString SignId)
 
void InitializeTrafficLights ()
 
void MatchTrafficLightActorsWithOpenDriveSignals ()
 
void RegisterLightComponentFromOpenDRIVE (UTrafficLightComponent *TrafficLight)
 
void RegisterLightComponentGenerated (UTrafficLightComponent *TrafficLight)
 
void RemoveGeneratedSignalsAndTrafficLights ()
 
void SetFrozen (bool InFrozen)
 

Private 成员函数

void RemoveAttachedProps (TArray< AActor * > Actors) const
 
void RemoveRoadrunnerProps () const
 
void SpawnSignals ()
 
void SpawnTrafficLights ()
 

Private 属性

bool bTrafficLightsFrozen = false
 
USceneComponent * SceneComponent
 
TMap< FString, TSubclassOf< USignComponent > > SignComponentModels
 
TMap< FString, TSubclassOf< AActor > > SpeedLimitModels
 
TMap< FString, UTrafficLightController * > TrafficControllers
 
TMap< int, ATrafficLightGroup * > TrafficGroups
 
int TrafficLightComponentMissingId = -1
 
int TrafficLightControllerMissingId = -1
 
int TrafficLightGroupMissingId = -2
 
TSubclassOf< AActorTrafficLightModel
 
bool TrafficLightsGenerated = false
 
TMap< FString, USignComponent * > TrafficSignComponents
 
TArray< ATrafficSignBase * > TrafficSigns
 
TMap< FString, TSubclassOf< AActor > > TrafficSignsModels
 

详细描述

Class In charge of creating and assigning traffic light groups, controllers and components.

在文件 TrafficLightManager.h19 行定义.

构造及析构函数说明

◆ ATrafficLightManager()

ATrafficLightManager::ATrafficLightManager ( )

在文件 TrafficLightManager.cpp25 行定义.

引用了 SceneComponent, SignComponentModels, SpeedLimitModels, carla::road::SignalType::StopSign(), TrafficLightGroupMissingId, TrafficLightModel, TrafficSignsModels , 以及 carla::road::SignalType::YieldSign().

+ 函数调用图:

成员函数说明

◆ GenerateSignalsAndTrafficLights()

void ATrafficLightManager::GenerateSignalsAndTrafficLights ( )

在文件 TrafficLightManager.cpp255 行定义.

引用了 RemoveRoadrunnerProps(), SpawnSignals(), SpawnTrafficLights(), TrafficLightModel , 以及 TrafficLightsGenerated.

被这些函数引用 InitializeTrafficLights().

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

◆ GetController()

UTrafficLightController * ATrafficLightManager::GetController ( FString ControllerId)

在文件 TrafficLightManager.cpp798 行定义.

引用了 TrafficControllers.

◆ GetFrozen()

bool ATrafficLightManager::GetFrozen ( )

在文件 TrafficLightManager.cpp783 行定义.

引用了 bTrafficLightsFrozen.

◆ GetMap()

const boost::optional< carla::road::Map > & ATrafficLightManager::GetMap ( )

在文件 TrafficLightManager.cpp250 行定义.

引用了 UCarlaStatics::GetGameMode() , 以及 ACarlaGameModeBase::GetMap().

被这些函数引用 InitializeTrafficLights(), RegisterLightComponentFromOpenDRIVE(), SpawnSignals() , 以及 SpawnTrafficLights().

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

◆ GetTrafficGroup()

ATrafficLightGroup * ATrafficLightManager::GetTrafficGroup ( int JunctionId)

在文件 TrafficLightManager.cpp788 行定义.

引用了 TrafficGroups.

◆ GetTrafficSign()

USignComponent * ATrafficLightManager::GetTrafficSign ( FString SignId)

在文件 TrafficLightManager.cpp807 行定义.

引用了 TrafficSignComponents.

◆ InitializeTrafficLights()

void ATrafficLightManager::InitializeTrafficLights ( )

在文件 TrafficLightManager.cpp362 行定义.

引用了 GenerateSignalsAndTrafficLights(), GetMap(), carla::log_warning() , 以及 TrafficLightsGenerated.

+ 函数调用图:

◆ MatchTrafficLightActorsWithOpenDriveSignals()

void ATrafficLightManager::MatchTrafficLightActorsWithOpenDriveSignals ( )

在文件 TrafficLightManager.cpp294 行定义.

引用了 ATrafficLightBase::GetTrafficLightComponent(), UOpenDrive::GetXODR(), carla::opendrive::OpenDriveParser::Load(), carla::log_warning() , 以及 TrafficLight.

+ 函数调用图:

◆ RegisterLightComponentFromOpenDRIVE()

void ATrafficLightManager::RegisterLightComponentFromOpenDRIVE ( UTrafficLightComponent * TrafficLight)

在文件 TrafficLightManager.cpp129 行定义.

引用了 ATrafficLightGroup::AddController(), UTrafficLightController::AddTrafficLight(), ATrafficLightGroup::GetControllers(), UCarlaStatics::GetGameMode(), GetMap(), ACarlaGameModeBase::GetULevelFromName(), ATrafficLightGroup::JunctionId, ATrafficLightGroup::ResetGroup(), UTrafficLightController::ResetState(), TrafficControllers, TrafficGroups, TrafficLightControllerMissingId, TrafficLightGroupMissingId , 以及 TrafficSignComponents.

被这些函数引用 SpawnTrafficLights().

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

◆ RegisterLightComponentGenerated()

void ATrafficLightManager::RegisterLightComponentGenerated ( UTrafficLightComponent * TrafficLight)

◆ RemoveAttachedProps()

void ATrafficLightManager::RemoveAttachedProps ( TArray< AActor * > Actors) const
private

在文件 TrafficLightManager.cpp842 行定义.

引用了 RemoveAttachedProps().

被这些函数引用 RemoveAttachedProps() , 以及 RemoveRoadrunnerProps().

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

◆ RemoveGeneratedSignalsAndTrafficLights()

void ATrafficLightManager::RemoveGeneratedSignalsAndTrafficLights ( )

◆ RemoveRoadrunnerProps()

void ATrafficLightManager::RemoveRoadrunnerProps ( ) const
private

在文件 TrafficLightManager.cpp816 行定义.

引用了 RemoveAttachedProps().

被这些函数引用 GenerateSignalsAndTrafficLights().

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

◆ SetFrozen()

void ATrafficLightManager::SetFrozen ( bool InFrozen)

在文件 TrafficLightManager.cpp762 行定义.

引用了 bTrafficLightsFrozen , 以及 TrafficGroups.

◆ SpawnSignals()

void ATrafficLightManager::SpawnSignals ( )
private

在文件 TrafficLightManager.cpp605 行定义.

引用了 GetClosestTrafficSignActor(), UCarlaStatics::GetGameMode(), GetMap(), ACarlaGameModeBase::GetULevelFromName(), carla::log_warning(), carla::road::SignalType::MaximumSpeed(), SignComponentModels, SpeedLimitModels, TrafficSignComponents, TrafficSigns , 以及 TrafficSignsModels.

被这些函数引用 GenerateSignalsAndTrafficLights().

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

◆ SpawnTrafficLights()

void ATrafficLightManager::SpawnTrafficLights ( )
private

在文件 TrafficLightManager.cpp482 行定义.

引用了 UCarlaStatics::GetGameMode(), GetMap(), ACarlaGameModeBase::GetULevelFromName(), carla::road::SignalType::IsTrafficLight(), carla::log_warning(), RegisterLightComponentFromOpenDRIVE(), TrafficLight, TrafficLightModel , 以及 TrafficSigns.

被这些函数引用 GenerateSignalsAndTrafficLights().

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

类成员变量说明

◆ bTrafficLightsFrozen

bool ATrafficLightManager::bTrafficLightsFrozen = false
private

在文件 TrafficLightManager.h119 行定义.

被这些函数引用 GetFrozen() , 以及 SetFrozen().

◆ SceneComponent

USceneComponent* ATrafficLightManager::SceneComponent
private

在文件 TrafficLightManager.h101 行定义.

被这些函数引用 ATrafficLightManager().

◆ SignComponentModels

TMap<FString, TSubclassOf<USignComponent> > ATrafficLightManager::SignComponentModels
private

在文件 TrafficLightManager.h95 行定义.

被这些函数引用 ATrafficLightManager() , 以及 SpawnSignals().

◆ SpeedLimitModels

TMap<FString, TSubclassOf<AActor> > ATrafficLightManager::SpeedLimitModels
private

在文件 TrafficLightManager.h98 行定义.

被这些函数引用 ATrafficLightManager() , 以及 SpawnSignals().

◆ TrafficControllers

TMap<FString, UTrafficLightController *> ATrafficLightManager::TrafficControllers
private

◆ TrafficGroups

TMap<int, ATrafficLightGroup *> ATrafficLightManager::TrafficGroups
private

◆ TrafficLightComponentMissingId

int ATrafficLightManager::TrafficLightComponentMissingId = -1
private

在文件 TrafficLightManager.h116 行定义.

被这些函数引用 RegisterLightComponentGenerated().

◆ TrafficLightControllerMissingId

int ATrafficLightManager::TrafficLightControllerMissingId = -1
private

◆ TrafficLightGroupMissingId

int ATrafficLightManager::TrafficLightGroupMissingId = -2
private

◆ TrafficLightModel

TSubclassOf<AActor> ATrafficLightManager::TrafficLightModel
private

◆ TrafficLightsGenerated

bool ATrafficLightManager::TrafficLightsGenerated = false
private

◆ TrafficSignComponents

TMap<FString, USignComponent *> ATrafficLightManager::TrafficSignComponents
private

◆ TrafficSigns

TArray<ATrafficSignBase*> ATrafficLightManager::TrafficSigns
private

◆ TrafficSignsModels

TMap<FString, TSubclassOf<AActor> > ATrafficLightManager::TrafficSignsModels
private

在文件 TrafficLightManager.h92 行定义.

被这些函数引用 ATrafficLightManager() , 以及 SpawnSignals().


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