Updating Dev-Release-5.5 from Main at CL #36144969

#okforversepublic

[CL 36146571 by Ryan Hummer in Dev-5.5 branch]
This commit is contained in:
Ryan Hummer
2024-09-10 10:26:02 -04:00
3986 changed files with 111796 additions and 33925 deletions
@@ -6,6 +6,7 @@
#include "MetasoundAssetBase.h"
#include "MetasoundAssetManager.h"
#include "MetasoundBuilderBase.h"
#include "MetasoundDocumentInterface.h"
#include "Subsystems/EngineSubsystem.h"
#include "UObject/Object.h"
@@ -125,6 +126,22 @@ public:
UE_DEPRECATED(5.5, "Moved to internal implementation, use IMetaSoundAssetManager::GetChecked() and analogous call")
virtual void WaitUntilAsyncLoadReferencedAssetsComplete(FMetasoundAssetBase& InAssetBase) { }
#if WITH_EDITOR
UFUNCTION(BlueprintCallable, Category = "MetaSounds|Utilities")
UPARAM(DisplayName = "Reassigned") bool ReassignClassName(TScriptInterface<IMetaSoundDocumentInterface> DocInterface);
// Replaces dependencies in a MetaSound with the given class name and version with another MetaSound with the given
// class name and version. Can be asset or code-defined. It is up to the caller to validate the two classes have
// matching interfaces (Swapping with classes of unmatched interfaces can leave MetaSound in non-executable state).
UFUNCTION(BlueprintCallable, Category = "MetaSounds|Utilities", meta = (AdvancedDisplay = "3"))
UPARAM(DisplayName = "References Replaced") bool ReplaceReferencesInDirectory(
const TArray<FMetaSoundAssetDirectory>& InDirectories,
const FMetasoundFrontendClassName& OldClassName,
const FMetasoundFrontendClassName& NewClassName,
const FMetasoundFrontendVersionNumber OldVersion = FMetasoundFrontendVersionNumber(),
const FMetasoundFrontendVersionNumber NewVersion = FMetasoundFrontendVersionNumber());
#endif // WITH_EDITOR
UFUNCTION(BlueprintCallable, Category = "MetaSounds|Registration")
void RegisterAssetClassesInDirectories(const TArray<FMetaSoundAssetDirectory>& Directories);
@@ -115,7 +115,7 @@ enum class EMetaSoundBuilderResult : uint8
};
/** Base implementation of MetaSound builder */
UCLASS(Abstract)
UCLASS(Abstract, BlueprintType, Transient)
class METASOUNDENGINE_API UMetaSoundBuilderBase : public UObject
{
GENERATED_BODY()
@@ -279,8 +279,9 @@ public:
UFUNCTION(BlueprintCallable, Category = "Audio|MetaSound|Builder", meta = (ExpandEnumAsExecs = "OutResult"))
UPARAM(DisplayName = "Node ClassVersion") FMetasoundFrontendVersion FindNodeClassVersion(const FMetaSoundNodeHandle& NodeHandle, EMetaSoundBuilderResult& OutResult);
// Returns the document's root graph class name
FMetasoundFrontendClassName GetRootGraphClassName() const;
// Returns the MetaSound asset's graph class name (used by the MetaSound Node Class Registry)
UFUNCTION(BlueprintCallable, Category = "Audio|MetaSound|Builder|Advanced", meta = (DisplayName = "Get MetaSound Class Name"))
UPARAM(DisplayName = "Class Name") FMetasoundFrontendClassName GetRootGraphClassName() const;
// Returns node input's data if valid (including things like name and datatype).
UFUNCTION(BlueprintCallable, Category = "Audio|MetaSound|Builder", meta = (ExpandEnumAsExecs = "OutResult"))
@@ -288,15 +289,15 @@ public:
// Returns node input's literal value if set on graph, otherwise fails and returns default literal.
UFUNCTION(BlueprintCallable, Category = "Audio|MetaSound|Builder", meta = (ExpandEnumAsExecs = "OutResult"))
FMetasoundFrontendLiteral GetNodeInputDefault(const FMetaSoundBuilderNodeInputHandle& InputHandle, EMetaSoundBuilderResult& OutResult);
UPARAM(DisplayName = "Default") FMetasoundFrontendLiteral GetNodeInputDefault(const FMetaSoundBuilderNodeInputHandle& InputHandle, EMetaSoundBuilderResult& OutResult);
// Returns node input's class literal value if set, otherwise fails and returns default literal.
UFUNCTION(BlueprintCallable, Category = "Audio|MetaSound|Builder", meta = (ExpandEnumAsExecs = "OutResult"))
FMetasoundFrontendLiteral GetNodeInputClassDefault(const FMetaSoundBuilderNodeInputHandle& InputHandle, EMetaSoundBuilderResult& OutResult);
UPARAM(DisplayName = "Default") FMetasoundFrontendLiteral GetNodeInputClassDefault(const FMetaSoundBuilderNodeInputHandle& InputHandle, EMetaSoundBuilderResult& OutResult);
// Returns whether the given node input is a constructor pin
UFUNCTION(BlueprintCallable, Category = "Audio|MetaSound|Builder")
bool GetNodeInputIsConstructorPin(const FMetaSoundBuilderNodeInputHandle& InputHandle) const;
UPARAM(DisplayName = "Is Constructor Pin") bool GetNodeInputIsConstructorPin(const FMetaSoundBuilderNodeInputHandle& InputHandle) const;
// Returns node output's data if valid (including things like name and datatype).
UFUNCTION(BlueprintCallable, Category = "Audio|MetaSound|Builder", meta = (ExpandEnumAsExecs = "OutResult"))
@@ -304,15 +305,15 @@ public:
// Returns whether the given node output is a constructor pin
UFUNCTION(BlueprintCallable, Category = "Audio|MetaSound|Builder")
bool GetNodeOutputIsConstructorPin(const FMetaSoundBuilderNodeOutputHandle& OutputHandle) const;
UPARAM(DisplayName = "Is Constructor Pin") bool GetNodeOutputIsConstructorPin(const FMetaSoundBuilderNodeOutputHandle& OutputHandle) const;
// Return the asset referenced by this preset builder. Returns nullptr if the builder is not a preset.
UFUNCTION(BlueprintCallable, Category = "Audio|MetaSound|Builder")
UObject* GetReferencedPresetAsset() const;
UPARAM(DisplayName = "Referenced Preset") UObject* GetReferencedPresetAsset() const;
// Returns if a given interface is declared.
UFUNCTION(BlueprintCallable, Category = "Audio|MetaSound|Builder")
UPARAM(DisplayName = "IsDeclared") bool InterfaceIsDeclared(FName InterfaceName) const;
UPARAM(DisplayName = "Is Declared") bool InterfaceIsDeclared(FName InterfaceName) const;
// Returns if a given node output and node input are connected.
UFUNCTION(BlueprintCallable, Category = "Audio|MetaSound|Builder")
@@ -328,7 +329,7 @@ public:
// Returns whether this is a preset.
UFUNCTION(BlueprintCallable, Category = "Audio|MetaSound|Builder")
bool IsPreset() const;
UPARAM(DisplayName = "Is Preset") bool IsPreset() const;
// Converts this preset to a fully accessible MetaSound; sets result to succeeded if it was converted successfully and failed if it was not.
UFUNCTION(BlueprintCallable, Category = "Audio|MetaSound|Builder", meta = (ExpandEnumAsExecs = "OutResult"))