47 lines
1.4 KiB
C
47 lines
1.4 KiB
C
|
|
// Fill out your copyright notice in the Description page of Project Settings.
|
|||
|
|
|
|||
|
|
#pragma once
|
|||
|
|
|
|||
|
|
#include "CoreMinimal.h"
|
|||
|
|
#include "Subsystems/EngineSubsystem.h"
|
|||
|
|
#include "Types/Interfaces/DTFluxDataCollector.h"
|
|||
|
|
#include "DTFluxCoreSubsystem.generated.h"
|
|||
|
|
|
|||
|
|
class UFDTFluxNetworkSubsystem;
|
|||
|
|
/** Forward Decl */
|
|||
|
|
class UDTFluxModelAsset;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
*
|
|||
|
|
*/
|
|||
|
|
UCLASS()
|
|||
|
|
class DTFLUXCORESUBSYSTEM_API UDTFluxCoreSubsystem : public UEngineSubsystem
|
|||
|
|
{
|
|||
|
|
GENERATED_BODY()
|
|||
|
|
|
|||
|
|
|
|||
|
|
public:
|
|||
|
|
TSoftObjectPtr<UDTFluxModelAsset> DataStorage;
|
|||
|
|
|
|||
|
|
// TSharedPtr<FDTFluxParser> Parser;
|
|||
|
|
|
|||
|
|
DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FOnSplitRankings, FDateTime, ReceivedAt, TArray<UDTFluxSplitRanking*>, SplitRankings)
|
|||
|
|
|
|||
|
|
DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FOnStageRankings, FDateTime, ReceivedAt, TArray<UDTFluxStageRanking*>, StageRankings)
|
|||
|
|
|
|||
|
|
DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FOnContestRankings, FDateTime, ReceivedAt, TArray<UDTFluxContestRanking*>, StageRankings)
|
|||
|
|
|
|||
|
|
DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FOnTeamList, FDateTime, ReceivedAt, TArray<UDTFluxTeam*>, TeamList)
|
|||
|
|
|
|||
|
|
DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FOnTeamUpdate, FDateTime, ReceivedAt, TArray<UDTFluxTeam*>, TeamUpdatedList)
|
|||
|
|
|
|||
|
|
|
|||
|
|
protected:
|
|||
|
|
// ~Subsystem Interface
|
|||
|
|
virtual void Initialize(FSubsystemCollectionBase& Collection) override;
|
|||
|
|
virtual void Deinitialize() override;
|
|||
|
|
// ~Subsystem Interface
|
|||
|
|
private:
|
|||
|
|
UFDTFluxNetworkSubsystem* NetworkSubsystem = nullptr;
|
|||
|
|
};
|