#pragma once

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

// Package: NiagaraShader

#include "Basic.hpp"

#include "CoreUObject_structs.hpp"


namespace SDK
{

// Enum NiagaraShader.FNiagaraCompileEventSeverity
// NumValues: 0x0004
enum class EFNiagaraCompileEventSeverity : uint8
{
	Log                                      = 0,
	Warning                                  = 1,
	Error                                    = 2,
	FNiagaraCompileEventSeverity_MAX         = 3,
};

// ScriptStruct NiagaraShader.SimulationStageMetaData
// 0x0030 (0x0030 - 0x0000)
struct FSimulationStageMetaData final
{
public:
	class FName                                   SimulationStageName;                               // 0x0000(0x0008)(ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	class FName                                   IterationSource;                                   // 0x0008(0x0008)(ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         bSpawnOnly : 1;                                    // 0x0010(0x0001)(BitIndex: 0x00, PropSize: 0x0001 (NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic))
	uint8                                         bWritesParticles : 1;                              // 0x0010(0x0001)(BitIndex: 0x01, PropSize: 0x0001 (NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic))
	uint8                                         bPartialParticleUpdate : 1;                        // 0x0010(0x0001)(BitIndex: 0x02, PropSize: 0x0001 (NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic))
	uint8                                         Pad_11[0x7];                                       // 0x0011(0x0007)(Fixing Size After Last Property [ Dumper-7 ])
	TArray<class FName>                           OutputDestinations;                                // 0x0018(0x0010)(ZeroConstructor, NativeAccessSpecifierPublic)
	int32                                         MinStage;                                          // 0x0028(0x0004)(ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	int32                                         MaxStage;                                          // 0x002C(0x0004)(ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
static_assert(alignof(FSimulationStageMetaData) == 0x000008, "Wrong alignment on FSimulationStageMetaData");
static_assert(sizeof(FSimulationStageMetaData) == 0x000030, "Wrong size on FSimulationStageMetaData");
static_assert(offsetof(FSimulationStageMetaData, SimulationStageName) == 0x000000, "Member 'FSimulationStageMetaData::SimulationStageName' has a wrong offset!");
static_assert(offsetof(FSimulationStageMetaData, IterationSource) == 0x000008, "Member 'FSimulationStageMetaData::IterationSource' has a wrong offset!");
static_assert(offsetof(FSimulationStageMetaData, OutputDestinations) == 0x000018, "Member 'FSimulationStageMetaData::OutputDestinations' has a wrong offset!");
static_assert(offsetof(FSimulationStageMetaData, MinStage) == 0x000028, "Member 'FSimulationStageMetaData::MinStage' has a wrong offset!");
static_assert(offsetof(FSimulationStageMetaData, MaxStage) == 0x00002C, "Member 'FSimulationStageMetaData::MaxStage' has a wrong offset!");

// ScriptStruct NiagaraShader.NiagaraDataInterfaceGeneratedFunction
// 0x0028 (0x0028 - 0x0000)
struct alignas(0x08) FNiagaraDataInterfaceGeneratedFunction final
{
public:
	uint8                                         Pad_0[0x28];                                       // 0x0000(0x0028)(Fixing Struct Size After Last Property [ Dumper-7 ])
};
static_assert(alignof(FNiagaraDataInterfaceGeneratedFunction) == 0x000008, "Wrong alignment on FNiagaraDataInterfaceGeneratedFunction");
static_assert(sizeof(FNiagaraDataInterfaceGeneratedFunction) == 0x000028, "Wrong size on FNiagaraDataInterfaceGeneratedFunction");

// ScriptStruct NiagaraShader.NiagaraDataInterfaceGPUParamInfo
// 0x0030 (0x0030 - 0x0000)
struct FNiagaraDataInterfaceGPUParamInfo final
{
public:
	class FString                                 DataInterfaceHLSLSymbol;                           // 0x0000(0x0010)(ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	class FString                                 DIClassName;                                       // 0x0010(0x0010)(ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	TArray<struct FNiagaraDataInterfaceGeneratedFunction> GeneratedFunctions;                        // 0x0020(0x0010)(ZeroConstructor, NativeAccessSpecifierPublic)
};
static_assert(alignof(FNiagaraDataInterfaceGPUParamInfo) == 0x000008, "Wrong alignment on FNiagaraDataInterfaceGPUParamInfo");
static_assert(sizeof(FNiagaraDataInterfaceGPUParamInfo) == 0x000030, "Wrong size on FNiagaraDataInterfaceGPUParamInfo");
static_assert(offsetof(FNiagaraDataInterfaceGPUParamInfo, DataInterfaceHLSLSymbol) == 0x000000, "Member 'FNiagaraDataInterfaceGPUParamInfo::DataInterfaceHLSLSymbol' has a wrong offset!");
static_assert(offsetof(FNiagaraDataInterfaceGPUParamInfo, DIClassName) == 0x000010, "Member 'FNiagaraDataInterfaceGPUParamInfo::DIClassName' has a wrong offset!");
static_assert(offsetof(FNiagaraDataInterfaceGPUParamInfo, GeneratedFunctions) == 0x000020, "Member 'FNiagaraDataInterfaceGPUParamInfo::GeneratedFunctions' has a wrong offset!");

// ScriptStruct NiagaraShader.NiagaraCompileEvent
// 0x0060 (0x0060 - 0x0000)
struct FNiagaraCompileEvent final
{
public:
	EFNiagaraCompileEventSeverity                 Severity;                                          // 0x0000(0x0001)(ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_1[0x7];                                        // 0x0001(0x0007)(Fixing Size After Last Property [ Dumper-7 ])
	class FString                                 Message;                                           // 0x0008(0x0010)(ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	class FString                                 ShortDescription;                                  // 0x0018(0x0010)(ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	bool                                          bDismissable;                                      // 0x0028(0x0001)(ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_29[0x3];                                       // 0x0029(0x0003)(Fixing Size After Last Property [ Dumper-7 ])
	struct FGuid                                  NodeGuid;                                          // 0x002C(0x0010)(ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	struct FGuid                                  PinGuid;                                           // 0x003C(0x0010)(ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_4C[0x4];                                       // 0x004C(0x0004)(Fixing Size After Last Property [ Dumper-7 ])
	TArray<struct FGuid>                          StackGuids;                                        // 0x0050(0x0010)(ZeroConstructor, NativeAccessSpecifierPublic)
};
static_assert(alignof(FNiagaraCompileEvent) == 0x000008, "Wrong alignment on FNiagaraCompileEvent");
static_assert(sizeof(FNiagaraCompileEvent) == 0x000060, "Wrong size on FNiagaraCompileEvent");
static_assert(offsetof(FNiagaraCompileEvent, Severity) == 0x000000, "Member 'FNiagaraCompileEvent::Severity' has a wrong offset!");
static_assert(offsetof(FNiagaraCompileEvent, Message) == 0x000008, "Member 'FNiagaraCompileEvent::Message' has a wrong offset!");
static_assert(offsetof(FNiagaraCompileEvent, ShortDescription) == 0x000018, "Member 'FNiagaraCompileEvent::ShortDescription' has a wrong offset!");
static_assert(offsetof(FNiagaraCompileEvent, bDismissable) == 0x000028, "Member 'FNiagaraCompileEvent::bDismissable' has a wrong offset!");
static_assert(offsetof(FNiagaraCompileEvent, NodeGuid) == 0x00002C, "Member 'FNiagaraCompileEvent::NodeGuid' has a wrong offset!");
static_assert(offsetof(FNiagaraCompileEvent, PinGuid) == 0x00003C, "Member 'FNiagaraCompileEvent::PinGuid' has a wrong offset!");
static_assert(offsetof(FNiagaraCompileEvent, StackGuids) == 0x000050, "Member 'FNiagaraCompileEvent::StackGuids' has a wrong offset!");

}

