#pragma once

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

// Package: BP_DeviceBase

#include "Basic.hpp"

#include "BP_DeviceBase_classes.hpp"
#include "BP_DeviceBase_parameters.hpp"


SDK_NAMESPACE_START

// Function BP_DeviceBase.BP_DeviceBase_C.DeviceStateUpdate
// (Public, HasOutParams, BlueprintCallable, BlueprintEvent)
// Parameters:
// const struct FST_EventValue&            EventValue                                             (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, HasGetValueTypeHash)
// struct FST_EventValue*                  ReturnEventValue                                       (Parm, OutParm, ZeroConstructor, HasGetValueTypeHash)

void ABP_DeviceBase_C::DeviceStateUpdate(const struct FST_EventValue& EventValue, struct FST_EventValue* ReturnEventValue)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BP_DeviceBase_C", "DeviceStateUpdate");

	Params::BP_DeviceBase_C_DeviceStateUpdate Parms{};

	Parms.EventValue = std::move(EventValue);

	UObject::ProcessEvent(Func, &Parms);

	if (ReturnEventValue != nullptr)
		*ReturnEventValue = std::move(Parms.ReturnEventValue);
}


// Function BP_DeviceBase.BP_DeviceBase_C.ExecuteUbergraph_BP_DeviceBase
// (Final, UbergraphFunction)
// Parameters:
// int32                                   EntryPoint                                             (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)

void ABP_DeviceBase_C::ExecuteUbergraph_BP_DeviceBase(int32 EntryPoint)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BP_DeviceBase_C", "ExecuteUbergraph_BP_DeviceBase");

	Params::BP_DeviceBase_C_ExecuteUbergraph_BP_DeviceBase Parms{};

	Parms.EntryPoint = EntryPoint;

	UObject::ProcessEvent(Func, &Parms);
}


// Function BP_DeviceBase.BP_DeviceBase_C.OnStateChange
// (Public, BlueprintCallable, BlueprintEvent)
// Parameters:
// EN_DeviceState                          State                                                  (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)

void ABP_DeviceBase_C::OnStateChange(EN_DeviceState State)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BP_DeviceBase_C", "OnStateChange");

	Params::BP_DeviceBase_C_OnStateChange Parms{};

	Parms.State = State;

	UObject::ProcessEvent(Func, &Parms);
}


// Function BP_DeviceBase.BP_DeviceBase_C.ReceiveBeginPlay
// (Event, Protected, BlueprintEvent)

void ABP_DeviceBase_C::ReceiveBeginPlay()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BP_DeviceBase_C", "ReceiveBeginPlay");

	UObject::ProcessEvent(Func, nullptr);
}


// Function BP_DeviceBase.BP_DeviceBase_C.SaveUpdateFunc
// (Public, BlueprintCallable, BlueprintEvent)

void ABP_DeviceBase_C::SaveUpdateFunc()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BP_DeviceBase_C", "SaveUpdateFunc");

	UObject::ProcessEvent(Func, nullptr);
}


// Function BP_DeviceBase.BP_DeviceBase_C.UpdateSave
// (Public, BlueprintCallable, BlueprintEvent)
// Parameters:
// int32                                   UpdateIndex                                            (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
// ENUM_SaveDataUpdateType                 LoadType                                               (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)

void ABP_DeviceBase_C::UpdateSave(int32 UpdateIndex, ENUM_SaveDataUpdateType LoadType)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BP_DeviceBase_C", "UpdateSave");

	Params::BP_DeviceBase_C_UpdateSave Parms{};

	Parms.UpdateIndex = UpdateIndex;
	Parms.LoadType = LoadType;

	UObject::ProcessEvent(Func, &Parms);
}


// Function BP_DeviceBase.BP_DeviceBase_C.UserConstructionScript
// (Event, Public, HasDefaults, BlueprintCallable, BlueprintEvent)

void ABP_DeviceBase_C::UserConstructionScript()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BP_DeviceBase_C", "UserConstructionScript");

	UObject::ProcessEvent(Func, nullptr);
}


SDK_NAMESPACE_END
