Network total reforge. Team-List and Race-Data handled
This commit is contained in:
24
Source/DTFluxProjectSettings/Public/DTFluxGeneralSettings.h
Normal file
24
Source/DTFluxProjectSettings/Public/DTFluxGeneralSettings.h
Normal file
@ -0,0 +1,24 @@
|
||||
// Fill out your copyright notice in the Description page of Project Settings.
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "CoreMinimal.h"
|
||||
#include "Assets/DTFluxModelAsset.h"
|
||||
#include "Engine/DeveloperSettings.h"
|
||||
#include "DTFluxGeneralSettings.generated.h"
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
UCLASS(Config=Engine, DefaultConfig, meta=(DisplayName="DTFlux General Settings"))
|
||||
class DTFLUXPROJECTSETTINGS_API UDTFluxGeneralSettings : public UDeveloperSettings
|
||||
{
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
|
||||
UDTFluxGeneralSettings();
|
||||
UPROPERTY(Category="General", Config, EditAnywhere, BlueprintReadOnly, DisplayName="Datastorage File")
|
||||
TSoftObjectPtr<UDTFluxModelAsset> ModelAsset;
|
||||
|
||||
};
|
||||
65
Source/DTFluxProjectSettings/Public/DTFluxNetworkSettings.h
Normal file
65
Source/DTFluxProjectSettings/Public/DTFluxNetworkSettings.h
Normal file
@ -0,0 +1,65 @@
|
||||
// Fill out your copyright notice in the Description page of Project Settings.
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "CoreMinimal.h"
|
||||
#include "UObject/Object.h"
|
||||
#include "DTFluxNetworkSettings.generated.h"
|
||||
|
||||
struct FDTFluxHttpSettings;
|
||||
struct FDTFluxWsSettings;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
UCLASS(Config=Engine, DefaultConfig, meta=(DisplayName="DTFlux Network Settings"))
|
||||
class DTFLUXPROJECTSETTINGS_API UDTFluxNetworkSettings : public UDeveloperSettings
|
||||
{
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
|
||||
UDTFluxNetworkSettings();
|
||||
|
||||
UPROPERTY(Category="CHRONO PROXY|Websocket", Config, EditAnywhere, BlueprintReadOnly, DisplayName="Websocket Port")
|
||||
int WebSocketPort = 3000;
|
||||
|
||||
UPROPERTY(Category="CHRONO PROXY|Websocket", Config, EditAnywhere, BlueprintReadOnly, DisplayName="Websocket Address")
|
||||
FString WebSocketAddress = "127.0.0.1";
|
||||
|
||||
UPROPERTY(Category="CHRONO PROXY|Websocket", Config, EditAnywhere, BlueprintReadOnly, DisplayName="Websocket Path")
|
||||
FString WebSocketPath = "/api/v1";
|
||||
|
||||
UPROPERTY(Category="CHRONO PROXY|Websocket", Config, EditAnywhere, BlueprintReadOnly, DisplayName="Autoconnect to WebSocket Server at startup")
|
||||
bool bWebSocketShouldConnectAtStartup = false;
|
||||
|
||||
UPROPERTY(Category="CHRONO PROXY|Websocket", Config, EditAnywhere, BlueprintReadOnly, DisplayName="Auto Reconnect On WebSocket Closed")
|
||||
bool bWebSocketShouldReconnectOnClosed = false;
|
||||
|
||||
UPROPERTY(Category="CHRONO PROXY|Websocket", Config, EditAnywhere, BlueprintReadOnly, DisplayName="Auto Reconnect On WebSocket Error")
|
||||
bool bWebSocketShouldReconnectOnError = false;
|
||||
|
||||
UPROPERTY(Category="CHRONO PROXY|HTTP", Config, EditAnywhere, BlueprintReadOnly, DisplayName="HTTP Address")
|
||||
FString HTTPAddress = "http://localhost";
|
||||
|
||||
UPROPERTY(Category="CHRONO PROXY|HTTP", Config, EditAnywhere, BlueprintReadOnly, DisplayName="HTTP Path")
|
||||
FString HTTPPath = "/";
|
||||
|
||||
UPROPERTY(Category="CHRONO PROXY|HTTP", Config, EditAnywhere, BlueprintReadOnly, DisplayName="HTTP Port")
|
||||
int HTTPPort = 8080;
|
||||
|
||||
|
||||
|
||||
#if WITH_EDITOR
|
||||
virtual void PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent) override;
|
||||
|
||||
DECLARE_MULTICAST_DELEGATE_OneParam(FOnDTFluxHttpSettingsChanged, const FDTFluxHttpSettings&);
|
||||
DECLARE_MULTICAST_DELEGATE_OneParam(FOnDTFluxWebSocketSettingsChanged, const FDTFluxWsSettings&);
|
||||
FOnDTFluxHttpSettingsChanged OnDTFluxHttpSettingsChanged;
|
||||
FOnDTFluxWebSocketSettingsChanged OnDTFluxWebSocketSettingsChanged;
|
||||
|
||||
#endif
|
||||
static void GetHTTPSettings(const UDTFluxNetworkSettings* Settings, FDTFluxHttpSettings& OutHTTPSettings);
|
||||
static void GetWebSocketSettings(const UDTFluxNetworkSettings* Settings, FDTFluxWsSettings& OutWsSettings);
|
||||
|
||||
};
|
||||
@ -0,0 +1,24 @@
|
||||
#pragma once
|
||||
|
||||
#include "CoreMinimal.h"
|
||||
#include "Modules/ModuleManager.h"
|
||||
|
||||
/**
|
||||
* @module DTFluxProjectSettings
|
||||
* @details DTFlux Project is a framework to integrate all kind of events data from
|
||||
* multiple API (stopwatch servers, etc...) or manually to unreal motion design platform
|
||||
* to create live audiovisual shows.
|
||||
* @brief This module provides all defines the projects settings for this plugin
|
||||
* @license See LICENSE.TXT at the of DTFluxAPI plugin folder or at
|
||||
* @see https://github.com/A2MSystemes/DTFluxAPI/blob/main/LICENSE
|
||||
* @author Ange-Marie MAURIN
|
||||
*/
|
||||
DTFLUXPROJECTSETTINGS_API DECLARE_LOG_CATEGORY_EXTERN(logDTFluxProjectSettings, Log, All)
|
||||
|
||||
class FDTFluxProjectSettingsModule : public IModuleInterface
|
||||
{
|
||||
public:
|
||||
|
||||
virtual void StartupModule() override;
|
||||
virtual void ShutdownModule() override;
|
||||
};
|
||||
@ -0,0 +1,58 @@
|
||||
#pragma once
|
||||
|
||||
#include "CoreMinimal.h"
|
||||
#include "DTFluxNetworkSettingsTypes.generated.h"
|
||||
|
||||
|
||||
USTRUCT()
|
||||
struct FDTFluxWsSettings
|
||||
{
|
||||
GENERATED_BODY()
|
||||
|
||||
FDTFluxWsSettings():
|
||||
Path(TEXT("")),
|
||||
Address(TEXT(""))
|
||||
{}
|
||||
|
||||
UPROPERTY()
|
||||
int Port = -1;
|
||||
UPROPERTY()
|
||||
FString Path;
|
||||
UPROPERTY()
|
||||
FString Address;
|
||||
UPROPERTY()
|
||||
bool bShouldAutoReconnectOnClosed = false;
|
||||
UPROPERTY()
|
||||
bool bShouldConnectAtStartup = false;
|
||||
UPROPERTY()
|
||||
bool bShouldAutoReconnectOnError = false;
|
||||
|
||||
bool operator==(const FDTFluxWsSettings& Right) const
|
||||
{
|
||||
return Port == Right.Port || Path == Right.Path || Address == Right.Address;
|
||||
};
|
||||
bool operator!=(const FDTFluxWsSettings& Right) const
|
||||
{
|
||||
return Port != Right.Port || Path != Right.Path || Address != Right.Address;
|
||||
}
|
||||
};
|
||||
|
||||
USTRUCT()
|
||||
struct FDTFluxHttpSettings
|
||||
{
|
||||
GENERATED_BODY()
|
||||
|
||||
FDTFluxHttpSettings():
|
||||
Port(-1),
|
||||
Path(TEXT("")),
|
||||
Address(TEXT("")){}
|
||||
|
||||
UPROPERTY()
|
||||
int Port;
|
||||
UPROPERTY()
|
||||
FString Path;
|
||||
UPROPERTY()
|
||||
FString Address;
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user