6#include "Containers/Array.h"
22#include "ISoundfieldEndpoint.generated.h"
#define PURE_VIRTUAL(func,...)
Definition CoreMiscDefines.h:103
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
UE::FPlatformRecursiveMutex FCriticalSection
Definition CriticalSection.h:53
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define UCLASS(...)
Definition ObjectMacros.h:776
Definition Engine.Build.cs:7
Definition NameTypes.h:617
Definition ThreadSafeCounter.h:14
virtual void RegisterModularFeature(const FName Type, class IModularFeature *ModularFeature)=0
static CORE_API IModularFeatures & Get()
Definition ModularFeatures.cpp:9
virtual void UnregisterModularFeature(const FName Type, class IModularFeature *ModularFeature)=0
Definition ISoundfieldFormat.h:104
Definition ISoundfieldEndpoint.h:168
virtual AUDIOEXTENSIONS_API FName GetSoundfieldFormatName() override
Definition ISoundfieldEndpoint.cpp:173
virtual ~ISoundfieldEndpointFactory()
Definition ISoundfieldEndpoint.h:171
virtual TUniquePtr< ISoundfieldEndpoint > CreateNewEndpointInstance(const FAudioPluginInitializationParams &InitInfo, const ISoundfieldEndpointSettingsProxy &InitialSettings)=0
virtual UClass * GetCustomEndpointSettingsClass() const
Definition ISoundfieldEndpoint.h:240
static void RegisterEndpointType(ISoundfieldEndpointFactory *InFactory)
Definition ISoundfieldEndpoint.h:189
virtual FName GetEndpointTypeName()=0
bool IsEndpointFormat() override
Definition ISoundfieldEndpoint.h:250
static void UnregisterEndpointType(ISoundfieldEndpointFactory *InFactory)
Definition ISoundfieldEndpoint.h:198
virtual USoundfieldEndpointSettingsBase * GetDefaultEndpointSettings()=0
static AUDIOEXTENSIONS_API TArray< FName > GetAllSoundfieldEndpointTypes()
Definition ISoundfieldEndpoint.cpp:139
AUDIOEXTENSIONS_API TUniquePtr< ISoundfieldDecoderStream > CreateDecoderStream(const FAudioPluginInitializationParams &InitInfo, const ISoundfieldEncodingSettingsProxy &InitialSettings) override
Definition ISoundfieldEndpoint.cpp:166
static AUDIOEXTENSIONS_API FName DefaultSoundfieldEndpointName()
Definition ISoundfieldEndpoint.cpp:160
static FName GetModularFeatureName()
Definition ISoundfieldEndpoint.h:179
static AUDIOEXTENSIONS_API ISoundfieldEndpointFactory * Get(const FName &InName)
Definition ISoundfieldEndpoint.cpp:117
virtual AUDIOEXTENSIONS_API bool CanTranscodeToSoundfieldFormat(FName DestinationFormat, const ISoundfieldEncodingSettingsProxy &DestinationEncodingSettings) override
Definition ISoundfieldEndpoint.cpp:178
Definition ISoundfieldEndpoint.h:41
virtual ~ISoundfieldEndpointSettingsProxy()
Definition ISoundfieldEndpoint.h:43
Definition ISoundfieldEndpoint.h:64
virtual ~ISoundfieldEndpoint()
Definition ISoundfieldEndpoint.h:71
virtual void OnAudioCallback(TUniquePtr< ISoundfieldAudioPacket > &&InPacket, const ISoundfieldEndpointSettingsProxy *InSettings)
Definition ISoundfieldEndpoint.h:117
virtual float GetDesiredCallbackPeriodicity() const
Definition ISoundfieldEndpoint.h:109
virtual bool EndpointRequiresCallback() const
Definition ISoundfieldEndpoint.h:104
Definition ISoundfieldFormat.h:254
Definition AssetRegistryState.h:50
Definition UniquePtr.h:107
Definition ISoundfieldEndpoint.h:52
virtual TUniquePtr< ISoundfieldEndpointSettingsProxy > GetProxy() const PURE_VIRTUAL(USoundfieldEndpointSettingsBase
Definition ISoundfieldEndpoint.h:56
Definition IAudioExtensionPlugin.h:127