#pragma once

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

// Package: HairStrandsSolver

#include "Basic.hpp"

#include "HairStrandsSolver_classes.hpp"
#include "HairStrandsSolver_parameters.hpp"


SDK_NAMESPACE_START

// Function HairStrandsSolver.GroomSolverComponent.AddGroomComponent
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// class UGroomComponent*                  GroomComponent                                         (Parm, ZeroConstructor, InstancedReference, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomSolverComponent::AddGroomComponent(class UGroomComponent* GroomComponent)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomSolverComponent", "AddGroomComponent");

	Params::GroomSolverComponent_AddGroomComponent Parms{};

	Parms.GroomComponent = GroomComponent;

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

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsSolver.GroomSolverComponent.RemoveGroomComponent
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// class UGroomComponent*                  GroomComponent                                         (Parm, ZeroConstructor, InstancedReference, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomSolverComponent::RemoveGroomComponent(class UGroomComponent* GroomComponent)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomSolverComponent", "RemoveGroomComponent");

	Params::GroomSolverComponent_RemoveGroomComponent Parms{};

	Parms.GroomComponent = GroomComponent;

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

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsSolver.GroomSolverComponent.ResetGroomComponents
// (Final, RequiredAPI, Native, Public, BlueprintCallable)

void UGroomSolverComponent::ResetGroomComponents()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomSolverComponent", "ResetGroomComponents");

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

	UObject::ProcessEvent(Func, nullptr);

	Func->FunctionFlags = Flgs;
}


// Function HairStrandsSolver.GroomSolverComponent.SetDeformerSolver
// (Final, RequiredAPI, Native, Public, BlueprintCallable)
// Parameters:
// class UMeshDeformer*                    DeformerSolver                                         (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UGroomSolverComponent::SetDeformerSolver(class UMeshDeformer* DeformerSolver)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("GroomSolverComponent", "SetDeformerSolver");

	Params::GroomSolverComponent_SetDeformerSolver Parms{};

	Parms.DeformerSolver = DeformerSolver;

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

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


SDK_NAMESPACE_END
