#pragma once

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

// Package: WorldMetricsCore

#include "Basic.hpp"

#include "Engine_classes.hpp"
#include "CoreUObject_classes.hpp"


SDK_NAMESPACE_START

// Class WorldMetricsCore.WorldMetricsSubsystem
// 0x2A10 (0x2A40 - 0x0030)
class UWorldMetricsSubsystem final : public UWorldSubsystem
{
public:
	uint8                                         Pad_30[0x10];                                      // 0x0030(0x0010)(Fixing Size After Last Property [ Dumper-7 ])
	TArray<class UWorldMetricInterface*>          Metrics;                                           // 0x0040(0x0010)(ZeroConstructor, Transient, UObjectWrapper, NativeAccessSpecifierPrivate, TObjectPtr)
	uint8                                         Pad_50[0x29E0];                                    // 0x0050(0x29E0)(Fixing Size After Last Property [ Dumper-7 ])
	float                                         UpdateRateInSeconds;                               // 0x2A30(0x0004)(ZeroConstructor, Config, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	int32                                         WarmUpFrames;                                      // 0x2A34(0x0004)(ZeroConstructor, Config, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_2A38[0x8];                                     // 0x2A38(0x0008)(Fixing Struct Size After Last Property [ Dumper-7 ])

public:
	static class UClass* StaticClass()
	{
		STATIC_CLASS_IMPL("WorldMetricsSubsystem")
	}
	static const class FName& StaticName()
	{
		STATIC_NAME_IMPL(L"WorldMetricsSubsystem")
	}
	static class UWorldMetricsSubsystem* GetDefaultObj()
	{
		return GetDefaultObjImpl<UWorldMetricsSubsystem>();
	}
};
DUMPER7_ASSERTS_UWorldMetricsSubsystem;

// Class WorldMetricsCore.WorldMetricInterface
// 0x0000 (0x0028 - 0x0028)
class UWorldMetricInterface : public UObject
{
public:
	static class UClass* StaticClass()
	{
		STATIC_CLASS_IMPL("WorldMetricInterface")
	}
	static const class FName& StaticName()
	{
		STATIC_NAME_IMPL(L"WorldMetricInterface")
	}
	static class UWorldMetricInterface* GetDefaultObj()
	{
		return GetDefaultObjImpl<UWorldMetricInterface>();
	}
};
DUMPER7_ASSERTS_UWorldMetricInterface;

// Class WorldMetricsCore.WorldMetricsActorTrackerSubscriber
// 0x0000 (0x0000 - 0x0000)
class IWorldMetricsActorTrackerSubscriber final
{
public:
	static class UClass* StaticClass()
	{
		STATIC_CLASS_IMPL("WorldMetricsActorTrackerSubscriber")
	}
	static const class FName& StaticName()
	{
		STATIC_NAME_IMPL(L"WorldMetricsActorTrackerSubscriber")
	}
	static class IWorldMetricsActorTrackerSubscriber* GetDefaultObj()
	{
		return GetDefaultObjImpl<IWorldMetricsActorTrackerSubscriber>();
	}

	class UObject* AsUObject()
	{
		return reinterpret_cast<UObject*>(this);
	}
	const class UObject* AsUObject() const
	{
		return reinterpret_cast<const UObject*>(this);
	}
};
DUMPER7_ASSERTS_IWorldMetricsActorTrackerSubscriber;

// Class WorldMetricsCore.WorldMetricsExtension
// 0x0000 (0x0028 - 0x0028)
class UWorldMetricsExtension : public UObject
{
public:
	static class UClass* StaticClass()
	{
		STATIC_CLASS_IMPL("WorldMetricsExtension")
	}
	static const class FName& StaticName()
	{
		STATIC_NAME_IMPL(L"WorldMetricsExtension")
	}
	static class UWorldMetricsExtension* GetDefaultObj()
	{
		return GetDefaultObjImpl<UWorldMetricsExtension>();
	}
};
DUMPER7_ASSERTS_UWorldMetricsExtension;

// Class WorldMetricsCore.WorldMetricsActorTracker
// 0x00A8 (0x00D0 - 0x0028)
class UWorldMetricsActorTracker final : public UWorldMetricsExtension
{
public:
	uint8                                         Pad_28[0xA8];                                      // 0x0028(0x00A8)(Fixing Struct Size After Last Property [ Dumper-7 ])

public:
	static class UClass* StaticClass()
	{
		STATIC_CLASS_IMPL("WorldMetricsActorTracker")
	}
	static const class FName& StaticName()
	{
		STATIC_NAME_IMPL(L"WorldMetricsActorTracker")
	}
	static class UWorldMetricsActorTracker* GetDefaultObj()
	{
		return GetDefaultObjImpl<UWorldMetricsActorTracker>();
	}
};
DUMPER7_ASSERTS_UWorldMetricsActorTracker;

SDK_NAMESPACE_END
