#pragma once

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

// Package: MIDIDevice

#include "Basic.hpp"

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


namespace SDK
{

// Class MIDIDevice.MIDIDeviceController
// 0x0038 (0x0060 - 0x0028)
class UMIDIDeviceController final : public UObject
{
public:
	UMulticastDelegateProperty_                   OnMIDIEvent;                                       // 0x0028(0x0010)(ZeroConstructor, InstancedReference, BlueprintAssignable, NativeAccessSpecifierPublic)
	int32                                         DeviceID;                                          // 0x0038(0x0004)(BlueprintVisible, BlueprintReadOnly, ZeroConstructor, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	uint8                                         Pad_3C[0x4];                                       // 0x003C(0x0004)(Fixing Size After Last Property [ Dumper-7 ])
	class FString                                 DeviceName;                                        // 0x0040(0x0010)(BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	uint8                                         Pad_50[0x10];                                      // 0x0050(0x0010)(Fixing Struct Size After Last Property [ Dumper-7 ])

public:
	static class UClass* StaticClass()
	{
		return StaticClassImpl<"MIDIDeviceController">();
	}
	static class UMIDIDeviceController* GetDefaultObj()
	{
		return GetDefaultObjImpl<UMIDIDeviceController>();
	}
};
static_assert(alignof(UMIDIDeviceController) == 0x000008, "Wrong alignment on UMIDIDeviceController");
static_assert(sizeof(UMIDIDeviceController) == 0x000060, "Wrong size on UMIDIDeviceController");
static_assert(offsetof(UMIDIDeviceController, OnMIDIEvent) == 0x000028, "Member 'UMIDIDeviceController::OnMIDIEvent' has a wrong offset!");
static_assert(offsetof(UMIDIDeviceController, DeviceID) == 0x000038, "Member 'UMIDIDeviceController::DeviceID' has a wrong offset!");
static_assert(offsetof(UMIDIDeviceController, DeviceName) == 0x000040, "Member 'UMIDIDeviceController::DeviceName' has a wrong offset!");

// Class MIDIDevice.MIDIDeviceManager
// 0x0000 (0x0028 - 0x0028)
class UMIDIDeviceManager final : public UBlueprintFunctionLibrary
{
public:
	static class UMIDIDeviceController* CreateMIDIDeviceController(const int32 DeviceID, const int32 MIDIBufferSize);
	static void FindMIDIDevices(TArray<struct FFoundMIDIDevice>* OutMIDIDevices);

public:
	static class UClass* StaticClass()
	{
		return StaticClassImpl<"MIDIDeviceManager">();
	}
	static class UMIDIDeviceManager* GetDefaultObj()
	{
		return GetDefaultObjImpl<UMIDIDeviceManager>();
	}
};
static_assert(alignof(UMIDIDeviceManager) == 0x000008, "Wrong alignment on UMIDIDeviceManager");
static_assert(sizeof(UMIDIDeviceManager) == 0x000028, "Wrong size on UMIDIDeviceManager");

}

