#pragma once

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

// Package: HairStrandsCore

#include "Basic.hpp"

#include "HairStrandsCore_classes.hpp"
#include "HairStrandsCore_parameters.hpp"


SDK_NAMESPACE_START

// Function HairStrandsCore.GroomAsset.GetDeformedGroupSections
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure)
// Parameters:
// TArray<int32>                           ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, NativeAccessSpecifierPublic)

TArray<int32> UGroomAsset::GetDeformedGroupSections()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "GetDeformedGroupSections");

	Params::GroomAsset_GetDeformedGroupSections Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomAsset.GetHairGroupsCards
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure)
// Parameters:
// TArray<struct FHairGroupsCardsSourceDescription>ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, NativeAccessSpecifierPublic)

TArray<struct FHairGroupsCardsSourceDescription> UGroomAsset::GetHairGroupsCards()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "GetHairGroupsCards");

	Params::GroomAsset_GetHairGroupsCards Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomAsset.GetHairGroupsInterpolation
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure)
// Parameters:
// TArray<struct FHairGroupsInterpolation> ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, NativeAccessSpecifierPublic)

TArray<struct FHairGroupsInterpolation> UGroomAsset::GetHairGroupsInterpolation()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "GetHairGroupsInterpolation");

	Params::GroomAsset_GetHairGroupsInterpolation Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomAsset.GetHairGroupsLOD
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure)
// Parameters:
// TArray<struct FHairGroupsLOD>           ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, NativeAccessSpecifierPublic)

TArray<struct FHairGroupsLOD> UGroomAsset::GetHairGroupsLOD()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "GetHairGroupsLOD");

	Params::GroomAsset_GetHairGroupsLOD Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomAsset.GetHairGroupsMaterials
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure)
// Parameters:
// TArray<struct FHairGroupsMaterial>      ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, NativeAccessSpecifierPublic)

TArray<struct FHairGroupsMaterial> UGroomAsset::GetHairGroupsMaterials()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "GetHairGroupsMaterials");

	Params::GroomAsset_GetHairGroupsMaterials Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomAsset.GetHairGroupsMeshes
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure)
// Parameters:
// TArray<struct FHairGroupsMeshesSourceDescription>ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, NativeAccessSpecifierPublic)

TArray<struct FHairGroupsMeshesSourceDescription> UGroomAsset::GetHairGroupsMeshes()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "GetHairGroupsMeshes");

	Params::GroomAsset_GetHairGroupsMeshes Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomAsset.GetHairGroupsPhysics
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure)
// Parameters:
// TArray<struct FHairGroupsPhysics>       ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, NativeAccessSpecifierPublic)

TArray<struct FHairGroupsPhysics> UGroomAsset::GetHairGroupsPhysics()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "GetHairGroupsPhysics");

	Params::GroomAsset_GetHairGroupsPhysics Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomAsset.GetHairGroupsRendering
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure)
// Parameters:
// TArray<struct FHairGroupsRendering>     ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, NativeAccessSpecifierPublic)

TArray<struct FHairGroupsRendering> UGroomAsset::GetHairGroupsRendering()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "GetHairGroupsRendering");

	Params::GroomAsset_GetHairGroupsRendering Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomAsset.SetDeformedGroupSections
// (Final, RequiredAPI, Native, Public, HasOutParams, BlueprintCallable)
// Parameters:
// const TArray<int32>&                    In                                                     (ConstParm, Parm, OutParm, ZeroConstructor, ReferenceParm, NativeAccessSpecifierPublic)

void UGroomAsset::SetDeformedGroupSections(const TArray<int32>& In)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "SetDeformedGroupSections");

	Params::GroomAsset_SetDeformedGroupSections Parms{};

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

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomAsset.SetEnableGlobalInterpolation
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// bool                                    In                                                     (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomAsset::SetEnableGlobalInterpolation(bool In)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "SetEnableGlobalInterpolation");

	Params::GroomAsset_SetEnableGlobalInterpolation Parms{};

	Parms.In = In;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomAsset.SetEnableSimulationCache
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// bool                                    In                                                     (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomAsset::SetEnableSimulationCache(bool In)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "SetEnableSimulationCache");

	Params::GroomAsset_SetEnableSimulationCache Parms{};

	Parms.In = In;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomAsset.SetHairGroupsCards
// (Final, RequiredAPI, Native, Public, HasOutParams, BlueprintCallable)
// Parameters:
// const TArray<struct FHairGroupsCardsSourceDescription>&In                                                     (ConstParm, Parm, OutParm, ZeroConstructor, ReferenceParm, NativeAccessSpecifierPublic)

void UGroomAsset::SetHairGroupsCards(const TArray<struct FHairGroupsCardsSourceDescription>& In)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "SetHairGroupsCards");

	Params::GroomAsset_SetHairGroupsCards Parms{};

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

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomAsset.SetHairGroupsInterpolation
// (Final, RequiredAPI, Native, Public, HasOutParams, BlueprintCallable)
// Parameters:
// const TArray<struct FHairGroupsInterpolation>&In                                                     (ConstParm, Parm, OutParm, ZeroConstructor, ReferenceParm, NativeAccessSpecifierPublic)

void UGroomAsset::SetHairGroupsInterpolation(const TArray<struct FHairGroupsInterpolation>& In)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "SetHairGroupsInterpolation");

	Params::GroomAsset_SetHairGroupsInterpolation Parms{};

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

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomAsset.SetHairGroupsLOD
// (Final, RequiredAPI, Native, Public, HasOutParams, BlueprintCallable)
// Parameters:
// const TArray<struct FHairGroupsLOD>&    In                                                     (ConstParm, Parm, OutParm, ZeroConstructor, ReferenceParm, NativeAccessSpecifierPublic)

void UGroomAsset::SetHairGroupsLOD(const TArray<struct FHairGroupsLOD>& In)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "SetHairGroupsLOD");

	Params::GroomAsset_SetHairGroupsLOD Parms{};

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

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomAsset.SetHairGroupsMaterials
// (Final, RequiredAPI, Native, Public, HasOutParams, BlueprintCallable)
// Parameters:
// const TArray<struct FHairGroupsMaterial>&In                                                     (ConstParm, Parm, OutParm, ZeroConstructor, ReferenceParm, NativeAccessSpecifierPublic)

void UGroomAsset::SetHairGroupsMaterials(const TArray<struct FHairGroupsMaterial>& In)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "SetHairGroupsMaterials");

	Params::GroomAsset_SetHairGroupsMaterials Parms{};

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

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomAsset.SetHairGroupsMeshes
// (Final, RequiredAPI, Native, Public, HasOutParams, BlueprintCallable)
// Parameters:
// const TArray<struct FHairGroupsMeshesSourceDescription>&In                                                     (ConstParm, Parm, OutParm, ZeroConstructor, ReferenceParm, NativeAccessSpecifierPublic)

void UGroomAsset::SetHairGroupsMeshes(const TArray<struct FHairGroupsMeshesSourceDescription>& In)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "SetHairGroupsMeshes");

	Params::GroomAsset_SetHairGroupsMeshes Parms{};

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

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomAsset.SetHairGroupsPhysics
// (Final, RequiredAPI, Native, Public, HasOutParams, BlueprintCallable)
// Parameters:
// const TArray<struct FHairGroupsPhysics>&In                                                     (ConstParm, Parm, OutParm, ZeroConstructor, ReferenceParm, NativeAccessSpecifierPublic)

void UGroomAsset::SetHairGroupsPhysics(const TArray<struct FHairGroupsPhysics>& In)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "SetHairGroupsPhysics");

	Params::GroomAsset_SetHairGroupsPhysics Parms{};

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

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomAsset.SetHairGroupsRendering
// (Final, RequiredAPI, Native, Public, HasOutParams, BlueprintCallable)
// Parameters:
// const TArray<struct FHairGroupsRendering>&In                                                     (ConstParm, Parm, OutParm, ZeroConstructor, ReferenceParm, NativeAccessSpecifierPublic)

void UGroomAsset::SetHairGroupsRendering(const TArray<struct FHairGroupsRendering>& In)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "SetHairGroupsRendering");

	Params::GroomAsset_SetHairGroupsRendering Parms{};

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

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomAsset.SetHairInterpolationType
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// EGroomInterpolationType                 In                                                     (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomAsset::SetHairInterpolationType(EGroomInterpolationType In)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "SetHairInterpolationType");

	Params::GroomAsset_SetHairInterpolationType Parms{};

	Parms.In = In;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomAsset.SetRiggedSkeletalMesh
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// class USkeletalMesh*                    In                                                     (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomAsset::SetRiggedSkeletalMesh(class USkeletalMesh* In)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "SetRiggedSkeletalMesh");

	Params::GroomAsset_SetRiggedSkeletalMesh Parms{};

	Parms.In = In;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomAsset.GetEnableGlobalInterpolation
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure, Const)
// Parameters:
// bool                                    ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

bool UGroomAsset::GetEnableGlobalInterpolation() const
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "GetEnableGlobalInterpolation");

	Params::GroomAsset_GetEnableGlobalInterpolation Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomAsset.GetEnableSimulationCache
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure, Const)
// Parameters:
// bool                                    ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

bool UGroomAsset::GetEnableSimulationCache() const
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "GetEnableSimulationCache");

	Params::GroomAsset_GetEnableSimulationCache Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomAsset.GetHairInterpolationType
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure, Const)
// Parameters:
// EGroomInterpolationType                 ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

EGroomInterpolationType UGroomAsset::GetHairInterpolationType() const
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "GetHairInterpolationType");

	Params::GroomAsset_GetHairInterpolationType Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomAsset.GetRiggedSkeletalMesh
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure, Const)
// Parameters:
// class USkeletalMesh*                    ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

class USkeletalMesh* UGroomAsset::GetRiggedSkeletalMesh() const
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomAsset", "GetRiggedSkeletalMesh");

	Params::GroomAsset_GetRiggedSkeletalMesh Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomBindingAsset.Build
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// TDelegate<void(class UGroomBindingAsset* GroomBinding, EGroomBindingAssetBuildResult Result)>CompletionDelegate                                     (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomBindingAsset::Build(TDelegate<void(class UGroomBindingAsset* GroomBinding, EGroomBindingAssetBuildResult Result)> CompletionDelegate)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "Build");

	Params::GroomBindingAsset_Build Parms{};

	Parms.CompletionDelegate = CompletionDelegate;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomBindingAsset.SetGroom
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// class UGroomAsset*                      InGroom                                                (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomBindingAsset::SetGroom(class UGroomAsset* InGroom)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "SetGroom");

	Params::GroomBindingAsset_SetGroom Parms{};

	Parms.InGroom = InGroom;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomBindingAsset.SetGroomBindingType
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// EGroomBindingMeshType                   InGroomBindingType                                     (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomBindingAsset::SetGroomBindingType(EGroomBindingMeshType InGroomBindingType)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "SetGroomBindingType");

	Params::GroomBindingAsset_SetGroomBindingType Parms{};

	Parms.InGroomBindingType = InGroomBindingType;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomBindingAsset.SetGroupInfos
// (Final, RequiredAPI, Native, Public, HasOutParams, BlueprintCallable)
// Parameters:
// const TArray<struct FGoomBindingGroupInfo>&InGroupInfos                                           (ConstParm, Parm, OutParm, ZeroConstructor, ReferenceParm, NativeAccessSpecifierPublic)

void UGroomBindingAsset::SetGroupInfos(const TArray<struct FGoomBindingGroupInfo>& InGroupInfos)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "SetGroupInfos");

	Params::GroomBindingAsset_SetGroupInfos Parms{};

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

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomBindingAsset.SetMatchingSection
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// int32                                   InMatchingSection                                      (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomBindingAsset::SetMatchingSection(int32 InMatchingSection)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "SetMatchingSection");

	Params::GroomBindingAsset_SetMatchingSection Parms{};

	Parms.InMatchingSection = InMatchingSection;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomBindingAsset.SetNumInterpolationPoints
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// int32                                   InNumInterpolationPoints                               (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomBindingAsset::SetNumInterpolationPoints(int32 InNumInterpolationPoints)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "SetNumInterpolationPoints");

	Params::GroomBindingAsset_SetNumInterpolationPoints Parms{};

	Parms.InNumInterpolationPoints = InNumInterpolationPoints;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomBindingAsset.SetSourceGeometryCache
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// class UGeometryCache*                   InGeometryCache                                        (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomBindingAsset::SetSourceGeometryCache(class UGeometryCache* InGeometryCache)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "SetSourceGeometryCache");

	Params::GroomBindingAsset_SetSourceGeometryCache Parms{};

	Parms.InGeometryCache = InGeometryCache;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomBindingAsset.SetSourceMeshRequestedLOD
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// int32                                   InSourceMeshRequestedLOD                               (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomBindingAsset::SetSourceMeshRequestedLOD(int32 InSourceMeshRequestedLOD)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "SetSourceMeshRequestedLOD");

	Params::GroomBindingAsset_SetSourceMeshRequestedLOD Parms{};

	Parms.InSourceMeshRequestedLOD = InSourceMeshRequestedLOD;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomBindingAsset.SetSourceMeshUsedLOD
// (Final, RequiredAPI, Native, Private, BlueprintCallable)
// Parameters:
// int32                                   InSourceMeshUsedLOD                                    (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomBindingAsset::SetSourceMeshUsedLOD(int32 InSourceMeshUsedLOD)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "SetSourceMeshUsedLOD");

	Params::GroomBindingAsset_SetSourceMeshUsedLOD Parms{};

	Parms.InSourceMeshUsedLOD = InSourceMeshUsedLOD;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomBindingAsset.SetSourceSkeletalMesh
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// class USkeletalMesh*                    InSkeletalMesh                                         (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomBindingAsset::SetSourceSkeletalMesh(class USkeletalMesh* InSkeletalMesh)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "SetSourceSkeletalMesh");

	Params::GroomBindingAsset_SetSourceSkeletalMesh Parms{};

	Parms.InSkeletalMesh = InSkeletalMesh;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomBindingAsset.SetTargetBindingAttribute
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// class FName                             InAttributeName                                        (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomBindingAsset::SetTargetBindingAttribute(class FName InAttributeName)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "SetTargetBindingAttribute");

	Params::GroomBindingAsset_SetTargetBindingAttribute Parms{};

	Parms.InAttributeName = InAttributeName;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomBindingAsset.SetTargetGeometryCache
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// class UGeometryCache*                   InGeometryCache                                        (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomBindingAsset::SetTargetGeometryCache(class UGeometryCache* InGeometryCache)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "SetTargetGeometryCache");

	Params::GroomBindingAsset_SetTargetGeometryCache Parms{};

	Parms.InGeometryCache = InGeometryCache;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomBindingAsset.SetTargetMeshRequestedMinLOD
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// int32                                   InTargetMeshRequestedMinLOD                            (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomBindingAsset::SetTargetMeshRequestedMinLOD(int32 InTargetMeshRequestedMinLOD)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "SetTargetMeshRequestedMinLOD");

	Params::GroomBindingAsset_SetTargetMeshRequestedMinLOD Parms{};

	Parms.InTargetMeshRequestedMinLOD = InTargetMeshRequestedMinLOD;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomBindingAsset.SetTargetMeshUsedMinLOD
// (Final, RequiredAPI, Native, Private, BlueprintCallable)
// Parameters:
// int32                                   InTargetMeshUsedMinLOD                                 (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomBindingAsset::SetTargetMeshUsedMinLOD(int32 InTargetMeshUsedMinLOD)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "SetTargetMeshUsedMinLOD");

	Params::GroomBindingAsset_SetTargetMeshUsedMinLOD Parms{};

	Parms.InTargetMeshUsedMinLOD = InTargetMeshUsedMinLOD;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomBindingAsset.SetTargetSkeletalMesh
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// class USkeletalMesh*                    InSkeletalMesh                                         (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomBindingAsset::SetTargetSkeletalMesh(class USkeletalMesh* InSkeletalMesh)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "SetTargetSkeletalMesh");

	Params::GroomBindingAsset_SetTargetSkeletalMesh Parms{};

	Parms.InSkeletalMesh = InSkeletalMesh;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomBindingAsset.GetGroom
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure, Const)
// Parameters:
// class UGroomAsset*                      ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

class UGroomAsset* UGroomBindingAsset::GetGroom() const
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "GetGroom");

	Params::GroomBindingAsset_GetGroom Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomBindingAsset.GetGroomBindingType
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure, Const)
// Parameters:
// EGroomBindingMeshType                   ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

EGroomBindingMeshType UGroomBindingAsset::GetGroomBindingType() const
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "GetGroomBindingType");

	Params::GroomBindingAsset_GetGroomBindingType Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomBindingAsset.GetGroupInfos
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure, Const)
// Parameters:
// const TArray<struct FGoomBindingGroupInfo>ReturnValue                                            (ConstParm, Parm, OutParm, ZeroConstructor, ReturnParm, ReferenceParm, NativeAccessSpecifierPublic)

const TArray<struct FGoomBindingGroupInfo> UGroomBindingAsset::GetGroupInfos() const
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "GetGroupInfos");

	Params::GroomBindingAsset_GetGroupInfos Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomBindingAsset.GetMatchingSection
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure, Const)
// Parameters:
// int32                                   ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

int32 UGroomBindingAsset::GetMatchingSection() const
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "GetMatchingSection");

	Params::GroomBindingAsset_GetMatchingSection Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomBindingAsset.GetNumInterpolationPoints
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure, Const)
// Parameters:
// int32                                   ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

int32 UGroomBindingAsset::GetNumInterpolationPoints() const
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "GetNumInterpolationPoints");

	Params::GroomBindingAsset_GetNumInterpolationPoints Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomBindingAsset.GetSourceGeometryCache
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure, Const)
// Parameters:
// class UGeometryCache*                   ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

class UGeometryCache* UGroomBindingAsset::GetSourceGeometryCache() const
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "GetSourceGeometryCache");

	Params::GroomBindingAsset_GetSourceGeometryCache Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomBindingAsset.GetSourceMeshRequestedLOD
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure, Const)
// Parameters:
// int32                                   ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

int32 UGroomBindingAsset::GetSourceMeshRequestedLOD() const
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "GetSourceMeshRequestedLOD");

	Params::GroomBindingAsset_GetSourceMeshRequestedLOD Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomBindingAsset.GetSourceMeshUsedLOD
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure, Const)
// Parameters:
// int32                                   ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

int32 UGroomBindingAsset::GetSourceMeshUsedLOD() const
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "GetSourceMeshUsedLOD");

	Params::GroomBindingAsset_GetSourceMeshUsedLOD Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomBindingAsset.GetSourceSkeletalMesh
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure, Const)
// Parameters:
// class USkeletalMesh*                    ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

class USkeletalMesh* UGroomBindingAsset::GetSourceSkeletalMesh() const
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "GetSourceSkeletalMesh");

	Params::GroomBindingAsset_GetSourceSkeletalMesh Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomBindingAsset.GetTargetBindingAttribute
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure, Const)
// Parameters:
// class FName                             ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

class FName UGroomBindingAsset::GetTargetBindingAttribute() const
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "GetTargetBindingAttribute");

	Params::GroomBindingAsset_GetTargetBindingAttribute Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomBindingAsset.GetTargetGeometryCache
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure, Const)
// Parameters:
// class UGeometryCache*                   ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

class UGeometryCache* UGroomBindingAsset::GetTargetGeometryCache() const
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "GetTargetGeometryCache");

	Params::GroomBindingAsset_GetTargetGeometryCache Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomBindingAsset.GetTargetMeshRequestedMinLOD
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure, Const)
// Parameters:
// int32                                   ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

int32 UGroomBindingAsset::GetTargetMeshRequestedMinLOD() const
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "GetTargetMeshRequestedMinLOD");

	Params::GroomBindingAsset_GetTargetMeshRequestedMinLOD Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomBindingAsset.GetTargetMeshUsedMinLOD
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure, Const)
// Parameters:
// int32                                   ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

int32 UGroomBindingAsset::GetTargetMeshUsedMinLOD() const
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "GetTargetMeshUsedMinLOD");

	Params::GroomBindingAsset_GetTargetMeshUsedMinLOD Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomBindingAsset.GetTargetSkeletalMesh
// (Final, RequiredAPI, Native, Public, BlueprintCallable, BlueprintPure, Const)
// Parameters:
// class USkeletalMesh*                    ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

class USkeletalMesh* UGroomBindingAsset::GetTargetSkeletalMesh() const
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomBindingAsset", "GetTargetSkeletalMesh");

	Params::GroomBindingAsset_GetTargetSkeletalMesh Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomBlueprintLibrary.CreateNewGeometryCacheGroomBindingAsset
// (Final, RequiredAPI, Native, Static, Public, BlueprintCallable)
// Parameters:
// class UGroomAsset*                      GroomAsset                                             (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// class UGeometryCache*                   GeometryCache                                          (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// int32                                   NumInterpolationPoints                                 (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// class UGeometryCache*                   SourceGeometryCacheForTransfer                         (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// int32                                   MatchingSection                                        (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// class UGroomBindingAsset*               ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

class UGroomBindingAsset* UGroomBlueprintLibrary::CreateNewGeometryCacheGroomBindingAsset(class UGroomAsset* GroomAsset, class UGeometryCache* GeometryCache, int32 NumInterpolationPoints, class UGeometryCache* SourceGeometryCacheForTransfer, int32 MatchingSection)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = StaticClass()->GetFunction("GroomBlueprintLibrary", "CreateNewGeometryCacheGroomBindingAsset");

	Params::GroomBlueprintLibrary_CreateNewGeometryCacheGroomBindingAsset Parms{};

	Parms.GroomAsset = GroomAsset;
	Parms.GeometryCache = GeometryCache;
	Parms.NumInterpolationPoints = NumInterpolationPoints;
	Parms.SourceGeometryCacheForTransfer = SourceGeometryCacheForTransfer;
	Parms.MatchingSection = MatchingSection;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	GetDefaultObj()->ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomBlueprintLibrary.CreateNewGeometryCacheGroomBindingAssetWithPath
// (Final, RequiredAPI, Native, Static, Public, BlueprintCallable)
// Parameters:
// const class FString&                    DesiredPackagePath                                     (Parm, ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// class UGroomAsset*                      GroomAsset                                             (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// class UGeometryCache*                   GeometryCache                                          (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// int32                                   NumInterpolationPoints                                 (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// class UGeometryCache*                   SourceGeometryCacheForTransfer                         (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// int32                                   MatchingSection                                        (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// class UGroomBindingAsset*               ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

class UGroomBindingAsset* UGroomBlueprintLibrary::CreateNewGeometryCacheGroomBindingAssetWithPath(const class FString& DesiredPackagePath, class UGroomAsset* GroomAsset, class UGeometryCache* GeometryCache, int32 NumInterpolationPoints, class UGeometryCache* SourceGeometryCacheForTransfer, int32 MatchingSection)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = StaticClass()->GetFunction("GroomBlueprintLibrary", "CreateNewGeometryCacheGroomBindingAssetWithPath");

	Params::GroomBlueprintLibrary_CreateNewGeometryCacheGroomBindingAssetWithPath Parms{};

	Parms.DesiredPackagePath = std::move(DesiredPackagePath);
	Parms.GroomAsset = GroomAsset;
	Parms.GeometryCache = GeometryCache;
	Parms.NumInterpolationPoints = NumInterpolationPoints;
	Parms.SourceGeometryCacheForTransfer = SourceGeometryCacheForTransfer;
	Parms.MatchingSection = MatchingSection;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	GetDefaultObj()->ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomBlueprintLibrary.CreateNewGroomBindingAsset
// (Final, RequiredAPI, Native, Static, Public, BlueprintCallable)
// Parameters:
// class UGroomAsset*                      InGroomAsset                                           (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// class USkeletalMesh*                    InSkeletalMesh                                         (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// int32                                   InNumInterpolationPoints                               (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// class USkeletalMesh*                    InSourceSkeletalMeshForTransfer                        (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// int32                                   InMatchingSection                                      (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// class UGroomBindingAsset*               ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

class UGroomBindingAsset* UGroomBlueprintLibrary::CreateNewGroomBindingAsset(class UGroomAsset* InGroomAsset, class USkeletalMesh* InSkeletalMesh, int32 InNumInterpolationPoints, class USkeletalMesh* InSourceSkeletalMeshForTransfer, int32 InMatchingSection)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = StaticClass()->GetFunction("GroomBlueprintLibrary", "CreateNewGroomBindingAsset");

	Params::GroomBlueprintLibrary_CreateNewGroomBindingAsset Parms{};

	Parms.InGroomAsset = InGroomAsset;
	Parms.InSkeletalMesh = InSkeletalMesh;
	Parms.InNumInterpolationPoints = InNumInterpolationPoints;
	Parms.InSourceSkeletalMeshForTransfer = InSourceSkeletalMeshForTransfer;
	Parms.InMatchingSection = InMatchingSection;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	GetDefaultObj()->ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomBlueprintLibrary.CreateNewGroomBindingAssetWithPath
// (Final, RequiredAPI, Native, Static, Public, BlueprintCallable)
// Parameters:
// const class FString&                    InDesiredPackagePath                                   (Parm, ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// class UGroomAsset*                      InGroomAsset                                           (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// class USkeletalMesh*                    InSkeletalMesh                                         (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// int32                                   InNumInterpolationPoints                               (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// class USkeletalMesh*                    InSourceSkeletalMeshForTransfer                        (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// int32                                   InMatchingSection                                      (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// class UGroomBindingAsset*               ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

class UGroomBindingAsset* UGroomBlueprintLibrary::CreateNewGroomBindingAssetWithPath(const class FString& InDesiredPackagePath, class UGroomAsset* InGroomAsset, class USkeletalMesh* InSkeletalMesh, int32 InNumInterpolationPoints, class USkeletalMesh* InSourceSkeletalMeshForTransfer, int32 InMatchingSection)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = StaticClass()->GetFunction("GroomBlueprintLibrary", "CreateNewGroomBindingAssetWithPath");

	Params::GroomBlueprintLibrary_CreateNewGroomBindingAssetWithPath Parms{};

	Parms.InDesiredPackagePath = std::move(InDesiredPackagePath);
	Parms.InGroomAsset = InGroomAsset;
	Parms.InSkeletalMesh = InSkeletalMesh;
	Parms.InNumInterpolationPoints = InNumInterpolationPoints;
	Parms.InSourceSkeletalMeshForTransfer = InSourceSkeletalMeshForTransfer;
	Parms.InMatchingSection = InMatchingSection;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	GetDefaultObj()->ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomBlueprintLibrary.IsHairStrandsSupportedInWorld
// (Final, RequiredAPI, Native, Static, Public, BlueprintCallable)
// Parameters:
// const class UObject*                    WorldContextObject                                     (ConstParm, Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// bool                                    ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

bool UGroomBlueprintLibrary::IsHairStrandsSupportedInWorld(const class UObject* WorldContextObject)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = StaticClass()->GetFunction("GroomBlueprintLibrary", "IsHairStrandsSupportedInWorld");

	Params::GroomBlueprintLibrary_IsHairStrandsSupportedInWorld Parms{};

	Parms.WorldContextObject = WorldContextObject;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	GetDefaultObj()->ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomComponent.AddCollisionComponent
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// class USkeletalMeshComponent*           SkeletalMeshComponent                                  (Parm, ZeroConstructor, InstancedReference, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomComponent::AddCollisionComponent(class USkeletalMeshComponent* SkeletalMeshComponent)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomComponent", "AddCollisionComponent");

	Params::GroomComponent_AddCollisionComponent Parms{};

	Parms.SkeletalMeshComponent = SkeletalMeshComponent;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomComponent.GetIsHairLengthScaleEnabled
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// bool                                    ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

bool UGroomComponent::GetIsHairLengthScaleEnabled()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomComponent", "GetIsHairLengthScaleEnabled");

	Params::GroomComponent_GetIsHairLengthScaleEnabled Parms{};

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomComponent.GetNiagaraComponent
// (Final, Native, Public, BlueprintCallable)
// Parameters:
// const int32                             GroupIndex                                             (ConstParm, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// class UNiagaraComponent*                ReturnValue                                            (ExportObject, Parm, OutParm, ZeroConstructor, ReturnParm, InstancedReference, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

class UNiagaraComponent* UGroomComponent::GetNiagaraComponent(const int32 GroupIndex)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomComponent", "GetNiagaraComponent");

	Params::GroomComponent_GetNiagaraComponent Parms{};

	Parms.GroupIndex = GroupIndex;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function HairStrandsCore.GroomComponent.ResetCollisionComponents
// (Final, RequiredAPI, Native, Public, BlueprintCallable)

void UGroomComponent::ResetCollisionComponents()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomComponent", "ResetCollisionComponents");

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, nullptr);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomComponent.ResetSimulation
// (Final, RequiredAPI, Native, Public, BlueprintCallable)

void UGroomComponent::ResetSimulation()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomComponent", "ResetSimulation");

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, nullptr);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomComponent.SetBindingAsset
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// class UGroomBindingAsset*               InBinding                                              (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomComponent::SetBindingAsset(class UGroomBindingAsset* InBinding)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomComponent", "SetBindingAsset");

	Params::GroomComponent_SetBindingAsset Parms{};

	Parms.InBinding = InBinding;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomComponent.SetEnableSimulation
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// bool                                    bInEnableSimulation                                    (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomComponent::SetEnableSimulation(bool bInEnableSimulation)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomComponent", "SetEnableSimulation");

	Params::GroomComponent_SetEnableSimulation Parms{};

	Parms.bInEnableSimulation = bInEnableSimulation;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomComponent.SetGroomAsset
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// class UGroomAsset*                      Asset                                                  (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomComponent::SetGroomAsset(class UGroomAsset* Asset)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomComponent", "SetGroomAsset");

	Params::GroomComponent_SetGroomAsset Parms{};

	Parms.Asset = Asset;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomComponent.SetGroomCache
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// class UGroomCache*                      InGroomCache                                           (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomComponent::SetGroomCache(class UGroomCache* InGroomCache)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomComponent", "SetGroomCache");

	Params::GroomComponent_SetGroomCache Parms{};

	Parms.InGroomCache = InGroomCache;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomComponent.SetHairLengthScale
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// float                                   Scale                                                  (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomComponent::SetHairLengthScale(float Scale)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomComponent", "SetHairLengthScale");

	Params::GroomComponent_SetHairLengthScale Parms{};

	Parms.Scale = Scale;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomComponent.SetHairLengthScaleEnable
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// bool                                    bEnable                                                (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomComponent::SetHairLengthScaleEnable(bool bEnable)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomComponent", "SetHairLengthScaleEnable");

	Params::GroomComponent_SetHairLengthScaleEnable Parms{};

	Parms.bEnable = bEnable;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomComponent.SetMeshDeformer
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// class UMeshDeformer*                    InMeshDeformer                                         (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomComponent::SetMeshDeformer(class UMeshDeformer* InMeshDeformer)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomComponent", "SetMeshDeformer");

	Params::GroomComponent_SetMeshDeformer Parms{};

	Parms.InMeshDeformer = InMeshDeformer;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsCore.GroomComponent.SetPhysicsAsset
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// class UPhysicsAsset*                    InPhysicsAsset                                         (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomComponent::SetPhysicsAsset(class UPhysicsAsset* InPhysicsAsset)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomComponent", "SetPhysicsAsset");

	Params::GroomComponent_SetPhysicsAsset Parms{};

	Parms.InPhysicsAsset = InPhysicsAsset;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


SDK_NAMESPACE_END
