#pragma once

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

// Package: LiveStreamVoice

#include "Basic.hpp"

#include "LiveStreamVoice_classes.hpp"
#include "LiveStreamVoice_parameters.hpp"


namespace SDK
{

// Function LiveStreamVoice.LiveStreamVoiceSubsystem.ClearVoiceSettings
// (Final, Native, Public, BlueprintCallable)

void ULiveStreamVoiceSubsystem::ClearVoiceSettings()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("LiveStreamVoiceSubsystem", "ClearVoiceSettings");

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

	UObject::ProcessEvent(Func, nullptr);

	Func->FunctionFlags = Flgs;
}


// Function LiveStreamVoice.LiveStreamVoiceSubsystem.EnableLocalVoiceProcessing
// (Final, Native, Public, BlueprintCallable)
// Parameters:
// uint8                                   LocalUserNum                                           (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// bool                                    bEnable                                                (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void ULiveStreamVoiceSubsystem::EnableLocalVoiceProcessing(uint8 LocalUserNum, bool bEnable)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("LiveStreamVoiceSubsystem", "EnableLocalVoiceProcessing");

	Params::LiveStreamVoiceSubsystem_EnableLocalVoiceProcessing Parms{};

	Parms.LocalUserNum = LocalUserNum;
	Parms.bEnable = bEnable;

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

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function LiveStreamVoice.LiveStreamVoiceSubsystem.SetVoiceSettings
// (Final, Native, Public, HasOutParams, BlueprintCallable)
// Parameters:
// struct FVoiceSettings                   InSettings                                             (ConstParm, Parm, OutParm, ReferenceParm, NoDestructor, ContainsInstancedReference, NativeAccessSpecifierPublic)

void ULiveStreamVoiceSubsystem::SetVoiceSettings(const struct FVoiceSettings& InSettings)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("LiveStreamVoiceSubsystem", "SetVoiceSettings");

	Params::LiveStreamVoiceSubsystem_SetVoiceSettings Parms{};

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

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

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}

}

