You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
- Split default param transmitter to SoundCueTransmitter & ParameterTransmitterBase to avoid generating transmitters for SoundBase child classes that don't support/require one (ex. SoundWaves) - Move param transmitter to sharedptrs to avoid a bunch of unnecessary copy/clone logic when virtualizing loops - Remove DefaultParameters field on ActiveSound in favor of shared impl in FParameterTransmitterBase that caches current state of parameters - Fix for move that clears out active sound's current parameters when sound could have multiple wave instances that need said parameters #rb phil.popp #jira UE-164898 #preflight 6334a0a1ee7b13756dcd20ea [CL 22240385 by rob gay in ue5-main branch]
47 lines
1.1 KiB
C++
47 lines
1.1 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
#include "IAudioParameterTransmitter.h"
|
|
#include "UObject/Object.h"
|
|
|
|
|
|
namespace Audio
|
|
{
|
|
const FName IParameterTransmitter::RouterName = "ParameterTransmitter";
|
|
|
|
TArray<UObject*> ILegacyParameterTransmitter::GetReferencedObjects() const
|
|
{
|
|
return { };
|
|
}
|
|
|
|
FParameterTransmitterBase::FParameterTransmitterBase(TArray<FAudioParameter>&& InDefaultParams)
|
|
: AudioParameters(MoveTemp(InDefaultParams))
|
|
{
|
|
}
|
|
|
|
bool FParameterTransmitterBase::GetParameter(FName InName, FAudioParameter& OutValue) const
|
|
{
|
|
if (const FAudioParameter* Param = FAudioParameter::FindParam(AudioParameters, InName))
|
|
{
|
|
OutValue = *Param;
|
|
return true;
|
|
}
|
|
|
|
return false;
|
|
}
|
|
|
|
const TArray<FAudioParameter>& FParameterTransmitterBase::GetParameters() const
|
|
{
|
|
return AudioParameters;
|
|
}
|
|
|
|
bool FParameterTransmitterBase::Reset()
|
|
{
|
|
AudioParameters.Reset();
|
|
return true;
|
|
}
|
|
|
|
bool FParameterTransmitterBase::SetParameters(TArray<FAudioParameter>&& InParameters)
|
|
{
|
|
FAudioParameter::Merge(MoveTemp(InParameters), AudioParameters);
|
|
return true;
|
|
}
|
|
} // namespace Audio
|