DeskSim v2 0.1
Train simulator prototype created for Lokførerskolen
TrainStatusTriggerBox.h
1/****************************************************************/
2/***
3 * @file TrainStatusTriggerBox.h
4 * @brief Contains the status trigger class.
5 *
6 * @author Endre Heksum
7 * @date March 2022
8 *********************************************************************/
9
10// Copyright 2022 Thomas Arinesalingam, John Ole Bjerke, Endre Heksum & Henrik Markengbakken Karlsen . All Rights Reserved.
11
12#pragma once
13
14#include "CoreMinimal.h"
15#include "TrainTriggerBox.h"
16#include "TrainStatusTriggerBox.generated.h"
17
25UCLASS()
26class DESKSIMV2_API ATrainStatusTriggerBox : public ATrainTriggerBox
27{
28 GENERATED_BODY()
29
30public:
31
33
34protected:
35 // Called when the game starts or when spawned
36 void BeginPlay() override;
37
38 // Called before the actor is destroyed
39 void EndPlay(EEndPlayReason::Type EndPlayReason) override;
40
41
42public:
43 // Called every frame
44 void Tick(float DeltaTime) override;
45
46 //UFUNCTION()
47 void OnOverlapBegin(class AActor* OverlappedActor, class AActor* OtherActor) override;
48
49 //UFUNCTION()
50 void OnOverlapEnd(class AActor* OverlappedActor, class AActor* OtherActor) override;
51
52 UFUNCTION()
53 void SendStatusToController();
54
55 UFUNCTION()
56 void EmergencyIf(bool bEqual);
57
58 UFUNCTION()
59 void EmergencyIfNot();
60
62 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Controller")
63 ETriggerStatusType StatusTrigger;
64
66 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Controller")
67 ESignalStatus SignalCompare;
68
69
70};
The status trigger box is used to send status updates to the controller.
Definition: TrainStatusTriggerBox.h:27
Base class containing some common functionality to be extended.
Definition: TrainTriggerBox.h:54