#pragma once

/*
* SDK generated by Dumper-7
*
* https://github.com/Encryqed/Dumper-7
*/

// Package: HeadMountedDisplay

#include "Basic.hpp"


namespace SDK
{

// Enum HeadMountedDisplay.EXRTrackedDeviceType
// NumValues: 0x0007
enum class EXRTrackedDeviceType : uint8
{
	HeadMountedDisplay                       = 0,
	Controller                               = 1,
	TrackingReference                        = 2,
	Other                                    = 3,
	Invalid                                  = 254,
	Any                                      = 255,
	EXRTrackedDeviceType_MAX                 = 256,
};

// Enum HeadMountedDisplay.ESpectatorScreenMode
// NumValues: 0x0009
enum class ESpectatorScreenMode : uint8
{
	Disabled                                 = 0,
	SingleEyeLetterboxed                     = 1,
	Undistorted                              = 2,
	Distorted                                = 3,
	SingleEye                                = 4,
	SingleEyeCroppedToFill                   = 5,
	Texture                                  = 6,
	TexturePlusEye                           = 7,
	ESpectatorScreenMode_MAX                 = 8,
};

// Enum HeadMountedDisplay.EHMDWornState
// NumValues: 0x0004
enum class EHMDWornState : uint8
{
	Unknown                                  = 0,
	Worn                                     = 1,
	NotWorn                                  = 2,
	EHMDWornState_MAX                        = 3,
};

// Enum HeadMountedDisplay.EHMDTrackingOrigin
// NumValues: 0x0003
enum class EHMDTrackingOrigin : uint8
{
	Floor                                    = 0,
	Eye                                      = 1,
	EHMDTrackingOrigin_MAX                   = 2,
};

// Enum HeadMountedDisplay.EOrientPositionSelector
// NumValues: 0x0004
enum class EOrientPositionSelector : uint8
{
	Orientation                              = 0,
	Position                                 = 1,
	OrientationAndPosition                   = 2,
	EOrientPositionSelector_MAX              = 3,
};

// Enum HeadMountedDisplay.ETrackingStatus
// NumValues: 0x0004
enum class ETrackingStatus : uint8
{
	NotTracked                               = 0,
	InertialOnly                             = 1,
	Tracked                                  = 2,
	ETrackingStatus_MAX                      = 3,
};

// ScriptStruct HeadMountedDisplay.XRDeviceId
// 0x000C (0x000C - 0x0000)
struct FXRDeviceId final
{
public:
	class FName                                   SystemName;                                        // 0x0000(0x0008)(BlueprintVisible, BlueprintReadOnly, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	int32                                         DeviceID;                                          // 0x0008(0x0004)(BlueprintVisible, BlueprintReadOnly, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
static_assert(alignof(FXRDeviceId) == 0x000004, "Wrong alignment on FXRDeviceId");
static_assert(sizeof(FXRDeviceId) == 0x00000C, "Wrong size on FXRDeviceId");
static_assert(offsetof(FXRDeviceId, SystemName) == 0x000000, "Member 'FXRDeviceId::SystemName' has a wrong offset!");
static_assert(offsetof(FXRDeviceId, DeviceID) == 0x000008, "Member 'FXRDeviceId::DeviceID' has a wrong offset!");

}

