14#include "CoreMinimal.h"
15#include "GameFramework/Actor.h"
17#include "BasicSignal.h"
18#include <DeskSimV2/Trains/Train.h>
20#include "CentralSignalController.generated.h"
40 virtual void BeginPlay()
override;
44 virtual void Tick(
float DeltaTime)
override;
48 void FindAllSignals();
53 UFUNCTION(BlueprintCallable, Category =
"Controller")
54 void ReceiveInputSignal(FName SignalID, ESignalType SignalType, ESignalStatus Status);
56 UFUNCTION(BlueprintCallable, Category =
"Controller")
57 void ReceiveInputStatus(FName TrainID);
60 void SendUpdatedSignal(FName SignalID, ESignalType SignalType, ESignalStatus Status);
63 void UpdateRelatedSignals(FName SignalID, ESignalType SignalType, ESignalStatus Status);
66 void SendTrainEmergencyStop(FName TrainID);
68 UFUNCTION(CallInEditor, Category =
"Controller")
69 void TestAllEmergencyStop();
72 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category =
"Controller")
76 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Controller")
80 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Controller")
84 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Controller")
88 TArray<AActor*> DwarfSignalActors;
91 TArray<AActor*> MainSignalActors;
94 TArray<AActor*> ForwardSignalActors;
97 TArray<AActor*> AllSignalActors;
100 TArray<AActor*> AllTrainActors;
Basic signal class, contains functionality to setup and use signal lights.
Definition: BasicSignal.h:91
The central signal controller used for communication.
Definition: CentralSignalController.h:31