Skip to content
Snippets Groups Projects
Select Git revision
  • 4799a52663f6cb95de5aef8908fa4701d7f34352
  • 5.4 default protected
  • dev/5.4
  • dev/5.3_downgrade
  • dev/5.5
  • 5.3 protected
  • feature/present_barrier
7 results

RWTHVRClusterUtilities.h

Blame
  • RWTHVRClusterUtilities.h 1.88 KiB
    #pragma once
    
    #include "CoreMinimal.h"
    #include "Components/DisplayClusterCameraComponent.h"
    #include "Kismet/BlueprintFunctionLibrary.h"
    #include "UObject/ConstructorHelpers.h"
    
    #include "RWTHVRClusterUtilities.generated.h"
    
    
    /**
     * Custom log category for all ClusterPlugin related components
     */
    DECLARE_LOG_CATEGORY_EXTERN(RWTHVRCluster, Log, All);
    
    UENUM(BlueprintType)
    enum class ENamedClusterComponent : uint8
    {
    	/* CAVE Specific */
    	NCC_CAVE_ORIGIN UMETA(DisplayName = "CAVE Origin"),
    	NCC_CAVE_CENTER UMETA(DisplayName = "CAVE Center"),
    	NCC_CAVE_LHT UMETA(DisplayName = "CAVE Left Hand Target"),
    	NCC_CAVE_RHT UMETA(DisplayName = "CAVE Right Hand Target"),
    
    	/* ROLV Specific */
    	NCC_ROLV_ORIGIN UMETA(DisplayName = "ROLV Origin"),
    
    	/* Non Specific */
    	NCC_CALIBRATIO UMETA(DisplayName = "Calibratio Motion to Photon Measurement Device"),
    	NCC_SHUTTERGLASSES UMETA(DisplayName = "CAVE/ROLV/TDW Shutter Glasses"),
    	NCC_FLYSTICK UMETA(DisplayName = "CAVE/ROLV/TDW Flystick"),
    	NCC_TRACKING_ORIGIN UMETA(DisplayName = "CAVE/ROLV/TDW Origin")
    };
    
    UCLASS()
    class RWTHVRCLUSTER_API URWTHVRClusterUtilities : public UBlueprintFunctionLibrary
    {
    	GENERATED_BODY()
    
    public:
    	UFUNCTION(BlueprintPure, Category = "RWTHVRCluster|Platform")
    	static bool IsRoomMountedMode();
    	UFUNCTION(BlueprintPure, Category = "RWTHVRCluster|Platform")
    	static bool IsCave();
    	UFUNCTION(BlueprintPure, Category = "RWTHVRCluster|Platform")
    	static bool IsRolv();
    
    	UFUNCTION(BlueprintPure, Category = "RWTHVRCluster")
    	static bool IsPrimaryNode();
    	UFUNCTION(BlueprintPure, Category = "RWTHVRCluster")
    	static bool IsSecondaryNode();
    
    	UFUNCTION(BlueprintPure, Category = "RWTHVRCluster")
    	static FString GetNodeName();
    	/* Distance in meters */
    	UFUNCTION(BlueprintPure, Category = "RWTHVRCluster")
    	static float GetEyeDistance();
    
    	UFUNCTION(BlueprintPure, Category = "RWTHVRCluster")
    	static EDisplayClusterEyeStereoOffset GetNodeEyeType();
    };