#pragma once

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

// Package: AudioAnalyzer

#include "Basic.hpp"

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


SDK_NAMESPACE_START

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

// Class AudioAnalyzer.AudioAnalyzerSettings
// 0x0000 (0x0028 - 0x0028)
class UAudioAnalyzerSettings : public UAudioAnalyzerAssetBase
{
public:
	static class UClass* StaticClass()
	{
		STATIC_CLASS_IMPL("AudioAnalyzerSettings")
	}
	static const class FName& StaticName()
	{
		STATIC_NAME_IMPL(L"AudioAnalyzerSettings")
	}
	static class UAudioAnalyzerSettings* GetDefaultObj()
	{
		return GetDefaultObjImpl<UAudioAnalyzerSettings>();
	}
};
DUMPER7_ASSERTS_UAudioAnalyzerSettings;

// Class AudioAnalyzer.AudioAnalyzer
// 0x0078 (0x00A0 - 0x0028)
class UAudioAnalyzer : public UObject
{
public:
	class UAudioBus*                              AudioBus;                                          // 0x0028(0x0008)(ZeroConstructor, Transient, NoDestructor, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierPublic, TObjectPtr)
	uint8                                         Pad_30[0x8];                                       // 0x0030(0x0008)(Fixing Size After Last Property [ Dumper-7 ])
	class UAudioAnalyzerSubsystem*                AudioAnalyzerSubsystem;                            // 0x0038(0x0008)(ZeroConstructor, Transient, NoDestructor, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierPrivate, TObjectPtr)
	uint8                                         Pad_40[0x60];                                      // 0x0040(0x0060)(Fixing Struct Size After Last Property [ Dumper-7 ])

public:
	void StartAnalyzing(const class UObject* WorldContextObject, class UAudioBus* AudioBusToAnalyze);
	void StopAnalyzing(const class UObject* WorldContextObject);

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

// Class AudioAnalyzer.AudioAnalyzerNRTSettings
// 0x0000 (0x0028 - 0x0028)
class UAudioAnalyzerNRTSettings : public UAudioAnalyzerAssetBase
{
public:
	static class UClass* StaticClass()
	{
		STATIC_CLASS_IMPL("AudioAnalyzerNRTSettings")
	}
	static const class FName& StaticName()
	{
		STATIC_NAME_IMPL(L"AudioAnalyzerNRTSettings")
	}
	static class UAudioAnalyzerNRTSettings* GetDefaultObj()
	{
		return GetDefaultObjImpl<UAudioAnalyzerNRTSettings>();
	}
};
DUMPER7_ASSERTS_UAudioAnalyzerNRTSettings;

// Class AudioAnalyzer.AudioAnalyzerNRT
// 0x0050 (0x0078 - 0x0028)
class UAudioAnalyzerNRT : public UAudioAnalyzerAssetBase
{
public:
	class USoundWave*                             Sound;                                             // 0x0028(0x0008)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, NoDestructor, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierPublic, TObjectPtr)
	float                                         DurationInSeconds;                                 // 0x0030(0x0004)(BlueprintVisible, BlueprintReadOnly, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_34[0x44];                                      // 0x0034(0x0044)(Fixing Struct Size After Last Property [ Dumper-7 ])

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

// Class AudioAnalyzer.AudioAnalyzerSubsystem
// 0x0020 (0x0050 - 0x0030)
class UAudioAnalyzerSubsystem final : public UEngineSubsystem
{
public:
	TArray<class UAudioAnalyzer*>                 AudioAnalyzers;                                    // 0x0030(0x0010)(ZeroConstructor, Transient, UObjectWrapper, NativeAccessSpecifierPrivate, TObjectPtr)
	uint8                                         Pad_40[0x10];                                      // 0x0040(0x0010)(Fixing Struct Size After Last Property [ Dumper-7 ])

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

SDK_NAMESPACE_END
