You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
- Adding IAudioInstanceTransmitter interface to Audio extensions - Adding IAudioInstanceTransmitter to FActiveSound - Renaming functions with "Archetype" to "MetasoundArchetype" to avoid conflict with UOBject archetype. - Adding transmittable info to data type registration - Adding default input pin to receive node. - Adding FMetasoundInstanceTransmitter for communicating to single metasound source instance. #rb Aaron.McLeran, Rob.Gay #jira UEAU-618 [CL 15162371 by phil popp in ue5-main branch]
54 lines
1.6 KiB
C++
54 lines
1.6 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#include "MetasoundInstanceTransmitter.h"
|
|
|
|
namespace Metasound
|
|
{
|
|
FMetasoundInstanceTransmitter::FMetasoundInstanceTransmitter(const FMetasoundInstanceTransmitter::FInitParams& InInitParams)
|
|
: SendInfos(InInitParams.Infos)
|
|
, OperatorSettings(InInitParams.OperatorSettings)
|
|
, InstanceID(InInitParams.InstanceID)
|
|
{
|
|
}
|
|
|
|
uint64 FMetasoundInstanceTransmitter::GetInstanceID() const
|
|
{
|
|
return InstanceID;
|
|
}
|
|
|
|
bool FMetasoundInstanceTransmitter::SetFloatParameter(const FName& InParameterName, float InValue)
|
|
{
|
|
return SendValue<float>(InParameterName, InValue);
|
|
}
|
|
|
|
bool FMetasoundInstanceTransmitter::SetIntParameter(const FName& InParameterName, int32 InValue)
|
|
{
|
|
return SendValue<int32>(InParameterName, InValue);
|
|
}
|
|
|
|
bool FMetasoundInstanceTransmitter::SetBoolParameter(const FName& InParameterName, bool InValue)
|
|
{
|
|
return SendValue<bool>(InParameterName, InValue);
|
|
}
|
|
|
|
TUniquePtr<IAudioInstanceTransmitter> FMetasoundInstanceTransmitter::Clone() const
|
|
{
|
|
return MakeUnique<FMetasoundInstanceTransmitter>(FMetasoundInstanceTransmitter::FInitParams(OperatorSettings, InstanceID, SendInfos));
|
|
}
|
|
|
|
const FMetasoundInstanceTransmitter::FSendInfo* FMetasoundInstanceTransmitter::FindSendInfo(const FName& InParameterName) const
|
|
{
|
|
return SendInfos.FindByPredicate([&](const FSendInfo& Info) { return Info.ParameterName == InParameterName; });
|
|
}
|
|
|
|
ISender* FMetasoundInstanceTransmitter::FindSender(const FName& InParameterName)
|
|
{
|
|
TUniquePtr<ISender>* SenderPtrPtr = InputSends.Find(InParameterName);
|
|
if (SenderPtrPtr)
|
|
{
|
|
return SenderPtrPtr->Get();
|
|
}
|
|
return nullptr;
|
|
}
|
|
}
|