14 #include "TrafficLightManager.generated.h" 27 UFUNCTION(BlueprintCallable, Category =
"Traffic Light Manager")
28 void RegisterLightComponentFromOpenDRIVE(UTrafficLightComponent *
TrafficLight);
30 UFUNCTION(BlueprintCallable, Category =
"Traffic Light Manager")
31 void RegisterLightComponentGenerated(UTrafficLightComponent * TrafficLight);
33 const boost::optional<carla::road::Map> &GetMap();
35 UFUNCTION(BlueprintCallable, Category =
"Traffic Light Manager")
38 UFUNCTION(BlueprintCallable, Category =
"Traffic Light Manager")
41 UFUNCTION(BlueprintCallable, Category =
"Traffic Light Manager")
42 USignComponent* GetTrafficSign(FString
SignId);
44 UFUNCTION(BlueprintCallable, Category =
"Traffic Light Manager")
45 void SetFrozen(
bool InFrozen);
47 UFUNCTION(BlueprintCallable, Category =
"Traffic Light Manager")
50 UFUNCTION(CallInEditor, Category =
"Traffic Light Manager")
51 void GenerateSignalsAndTrafficLights();
53 UFUNCTION(CallInEditor, Category =
"Traffic Light Manager")
54 void RemoveGeneratedSignalsAndTrafficLights();
56 UFUNCTION(CallInEditor, Category =
"Traffic Light Manager")
57 void MatchTrafficLightActorsWithOpenDriveSignals();
60 void InitializeTrafficLights();
64 void SpawnTrafficLights();
68 void RemoveRoadrunnerProps()
const;
70 void RemoveAttachedProps(TArray<AActor*> Actors)
const;
82 TMap<FString, USignComponent *> TrafficSignComponents;
87 UPROPERTY(EditAnywhere, Category= "Traffic Light Manager")
88 TSubclassOf<AActor> TrafficLightModel;
91 UPROPERTY(EditAnywhere, Category= "Traffic Light Manager")
92 TMap<FString, TSubclassOf<AActor>> TrafficSignsModels;
94 UPROPERTY(EditAnywhere, Category= "Traffic Light Manager")
95 TMap<FString, TSubclassOf<USignComponent>> SignComponentModels;
97 UPROPERTY(EditAnywhere, Category= "Traffic Light Manager")
98 TMap<FString, TSubclassOf<AActor>> SpeedLimitModels;
100 UPROPERTY(Category = "Traffic Light Manager", VisibleDefaultsOnly, BlueprintReadOnly, meta = (AllowPrivateAccess = "true"))
101 USceneComponent *SceneComponent;
103 UPROPERTY(EditAnywhere, Category= "Traffic Light Manager")
104 bool TrafficLightsGenerated = false;
108 int TrafficLightGroupMissingId = -2;
112 int TrafficLightControllerMissingId = -1;
116 int TrafficLightComponentMissingId = -1;
119 bool bTrafficLightsFrozen = false;
Class which implements the state changing of traffic lights.
Maps a controller from OpenDrive.
Class In charge of creating and assigning traffic light groups, controllers and components.