Navigation
API > API/Plugins > API/Plugins/MetasoundFrontend
Builder used to support dynamically generating MetaSound documents at runtime. Builder contains caches that speed up common search and modification operations on a given document, which may result in slower performance on construction, but faster manipulation of its managed document. The builder's managed copy of a document is expected to not be modified by any external system to avoid cache becoming stale.
| Name | FMetaSoundFrontendDocumentBuilder |
| Type | struct |
| Header File | /Engine/Plugins/Runtime/Metasound/Source/MetasoundFrontend/Public/MetasoundFrontendDocumentBuilder.h |
| Include Path | #include "MetasoundFrontendDocumentBuilder.h" |
Syntax
USTRUCT ()
struct FMetaSoundFrontendDocumentBuilder
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FMetaSoundFrontendDocumentBuilder
(
TScriptInterface< IMetaSoundDocumentInterface > InDocumentInterface, |
Default ctor should typically never be used directly as builder interface (and optionally delegates) should be specified on construction (Default exists only to make UObject reflection happy). | MetasoundFrontendDocumentBuilder.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~FMetaSoundFrontendDocumentBuilder() |
MetasoundFrontendDocumentBuilder.h |
Structs
| Name | Remarks |
|---|---|
| FNodeConfigurationUpdateData | |
| IPropertyVersionTransform | Struct enabling property migration of data that must be applied prior to versioning logic. |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FFinalizeNodeFunctionRef | TFunctionRef< void(FMetasoundFrontendNode &, const Metasound::Frontend::FNodeRegistryKey &)> | MetasoundFrontendDocumentBuilder.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bInTemplateScope | bool | MetasoundFrontendDocumentBuilder.h | ||
| BuildPageID | FGuid | Page ID to apply build transaction to if no optional PageID is provided in explicit function call. | MetasoundFrontendDocumentBuilder.h |
|
| DocumentCache | TSharedPtr< Metasound::Frontend::IDocumentCache > | MetasoundFrontendDocumentBuilder.h | ||
| DocumentDelegates | TSharedPtr< Metasound::Frontend::FDocumentModifyDelegates > | MetasoundFrontendDocumentBuilder.h | ||
| DocumentInterface | TScriptInterface< IMetaSoundDocumentInterface > | MetasoundFrontendDocumentBuilder.h |
|
|
| HintPath | FTopLevelAssetPath | MetasoundFrontendDocumentBuilder.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AddAccessFlags
(
EMetasoundFrontendClassAccessFlags AccessFlags |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendClass * AddDependency
(
FMetasoundFrontendClass NewDependency |
Adds new dependency to MetaSound. Typically not necessary to call directly as dependencies are added automatically via registry when nodes are added, and can be removed when no longer referenced (see 'RemoveUnusedDependencies`). | MetasoundFrontendDocumentBuilder.h | |
void AddEdge
(
FMetasoundFrontendEdge&& InNewEdge, |
MetasoundFrontendDocumentBuilder.h | ||
| MetasoundFrontendDocumentBuilder.h | |||
bool AddEdgesFromMatchingInterfaceNodeInputsToGraphInputs
(
const FGuid& InNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
bool AddEdgesFromMatchingInterfaceNodeOutputsToGraphOutputs
(
const FGuid& InNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendNode * AddGraphInput
(
FMetasoundFrontendClassInput ClassInput, |
Adds Graph Input to document, which in turn adds a referencing input node to ALL pages. If valid PageID is provided, returns associated page's node pointer. If none provided, returns node pointer to node for the builder's currently set build page ID (see 'GetBuildPageID'). | MetasoundFrontendDocumentBuilder.h | |
const FMetasoundFrontendNode * AddGraphNode
(
const FMetasoundFrontendGraphClass& InClass, |
Adds node to document to the page associated with the given PageID. If no valid PageID is provided, adds and returns node pointer to node for the builder's currently set build page ID (see 'GetBuildPageID'). | MetasoundFrontendDocumentBuilder.h | |
const FMetasoundFrontendNode * AddGraphOutput
(
FMetasoundFrontendClassOutput ClassOutput, |
Adds Graph Output to document, which in turn adds a referencing output node to ALL pages. If valid PageID is provided, returns associated page's node pointer. If none provided, returns node pointer to node for the builder's currently set build page ID (see 'GetBuildPageID'). | MetasoundFrontendDocumentBuilder.h | |
const FMetasoundFrontendGraph & AddGraphPage
(
const FGuid& InPageID, |
Adds a graph page to the given builder's document. | MetasoundFrontendDocumentBuilder.h | |
const FMetasoundFrontendVariable * AddGraphVariable
(
FName VariableName, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendNode * AddGraphVariableAccessorNode
(
FName VariableName, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendNode * AddGraphVariableDeferredAccessorNode
(
FName VariableName, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendNode * AddGraphVariableMutatorNode
(
FName VariableName, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendNode * AddGraphVariableNode
(
FName VariableName, |
MetasoundFrontendDocumentBuilder.h | ||
bool AddInterface
(
FName InterfaceName, |
Internal AddInterface call for use in rebuild preset root graph If bAddUserModifiableInterfaceOnly is true, only user modifiable interfaces can be added (see FMetasoundFrontendInterfaceUClassOptions) Reference builder is used to copy node ids for added members so they aren't just regenerated with NewGuid. | MetasoundFrontendDocumentBuilder.h | |
bool AddInterface
(
FName InterfaceName |
Adds an interface and associated inputs and outputs. | MetasoundFrontendDocumentBuilder.h | |
bool AddNamedEdges
(
const TSet< Metasound::Frontend::FNamedEdge >& ConnectionsToMake, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendNode * AddNodeByClassName
(
const FMetasoundFrontendClassName& InClassName, |
Add node with specific major and minor version. The public version of AddNodeByClassName adds the highest minor version for a given major version. | MetasoundFrontendDocumentBuilder.h | |
const FMetasoundFrontendNode * AddNodeByClassName
(
const FMetasoundFrontendClassName& InClassName, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendNode * AddNodeByTemplate
(
const Metasound::Frontend::INodeTemplate& InTemplate, |
MetasoundFrontendDocumentBuilder.h | ||
void ApplyNodeInstanceReplacementData
(
Metasound::Frontend::NodeReplacement::FNodeInstanceReplacementData&& InInstanceData, |
Applying node instance replacement data for node update transforms/autoupdate. | MetasoundFrontendDocumentBuilder.h | |
void CacheRegistryMetadata() |
Caches transient dependency metadata & style (class & vertex) found in the registry that is not necessary for serialization or core graph generation. | MetasoundFrontendDocumentBuilder.h | |
bool CanAddEdge
(
const FMetasoundFrontendEdge& InEdge, |
Returns whether or not the given edge can be added, which requires that its input is not already connected and the edge is valid (see function 'IsValidEdge'). | MetasoundFrontendDocumentBuilder.h | |
| Returns whether the node is eligible for auto-updating. Eligibility reasons include minor version revision, node update transform found, or the interface has changed, but no higher major revision is available. Can return true if the interface has changed but with only cosmetic differences (ex. DisplayName only used in editor) but no runtime behavior has been modified. | MetasoundFrontendDocumentBuilder.h | ||
Metasound::Frontend::NodeReplacement::FNodeInstanceReplacementData CaptureNodeInstanceReplacementData
(
const FGuid& InNodeID, |
Capture node replacement data for the existing node (connections, defaults, configuration, etc.) | MetasoundFrontendDocumentBuilder.h | |
TObjectType & CastDocumentObjectChecked() |
MetasoundFrontendDocumentBuilder.h | ||
void ClearAccessFlags() |
MetasoundFrontendDocumentBuilder.h | ||
void ClearDocument
(
TSharedRef< Metasound::Frontend::FDocumentModifyDelegates > ModifyDelegates |
Clears document completely of all graph page data (nodes, edges, & member metadata), dependencies, interfaces, member metadata, preset state, etc. Leaves ClassMetadata intact. Reloads the builder state, so external delegates must be relinked if desired. NOTE: Template struct is not cleared and must be managed by separate API call (see SetTemplate'). | MetasoundFrontendDocumentBuilder.h | |
bool ClearMemberMetadata
(
const FGuid& InMemberID |
MetasoundFrontendDocumentBuilder.h | ||
bool ConfigureDocument() |
MetasoundFrontendDocumentBuilder.h | ||
bool ConformObjectToDocument() |
MetasoundFrontendDocumentBuilder.h | ||
bool ContainsDependencyOfType
(
EMetasoundFrontendClassType ClassType |
MetasoundFrontendDocumentBuilder.h | ||
bool ContainsEdge
(
const FMetasoundFrontendEdge& InEdge, |
MetasoundFrontendDocumentBuilder.h | ||
| MetasoundFrontendDocumentBuilder.h | |||
bool ConvertFromPreset() |
MetasoundFrontendDocumentBuilder.h | ||
bool ConvertToPreset
(
const FMetaSoundFrontendDocumentBuilder& InReferencedDocumentBuilder, |
MetasoundFrontendDocumentBuilder.h | ||
bool ConvertToPreset
(
const FMetasoundFrontendDocument& InReferencedDocument, |
MetasoundFrontendDocumentBuilder.h | ||
bool DiffAgainstRegistryInterface
(
const FGuid& InNodeID, |
Fills out the provided ClassInterfaceUpdate struct with the differences between the registry's version of the class interface and that of the node. Returns whether or not the interface was found in the registry. | MetasoundFrontendDocumentBuilder.h | |
const FMetasoundFrontendClassInput * DuplicateGraphInput
(
FName ExistingName, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendClassOutput * DuplicateGraphOutput
(
FName ExistingName, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendVariable * DuplicateGraphVariable
(
FName ExistingName, |
MetasoundFrontendDocumentBuilder.h | ||
TConstStructView< FMetasoundFrontendClassInterface > FindClassInterfaceOverride
(
const FGuid& InNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendGraph & FindConstBuildGraphChecked() |
Accessor for the currently set build graph. | MetasoundFrontendDocumentBuilder.h | |
const FMetasoundFrontendEdgeStyle * FindConstEdgeStyle
(
const FGuid& InNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
const TVertexMetadataType * FindConstVertexMetadata
(
const FGuid& InNodeID |
Convenience function for attempting to get the underlying mutable document template vertex metadata. If the provided template vertex type is not that which the current document is set to or no document template is set, returns null. | MetasoundFrontendDocumentBuilder.h | |
bool FindDeclaredInterfaces
(
TArray< const Metasound::Frontend::IInterfaceRegistryEntry* >& OutInterfaces |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendClass * FindDependency
(
const FMetasoundFrontendClassMetadata& InMetadata |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendClass * FindDependency
(
const FGuid& InClassID |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendClass * FindDependency
(
const Metasound::Frontend::FNodeRegistryKey& InRegistryKey |
MetasoundFrontendDocumentBuilder.h | ||
TArray< const FMetasoundFrontendEdge * > FindEdges
(
const FGuid& InNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
FMetasoundFrontendEdgeStyle * FindEdgeStyle
(
const FGuid& InNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
FMetaSoundFrontendGraphComment * FindGraphComment
(
const FGuid& InCommentID, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetaSoundFrontendGraphComment * FindGraphComment
(
const FGuid& InCommentID, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendClassInput * FindGraphInput
(
FName InputName |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendNode * FindGraphInputNode
(
FName InputName, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendClassOutput * FindGraphOutput
(
FName OutputName |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendNode * FindGraphOutputNode
(
FName OutputName, |
MetasoundFrontendDocumentBuilder.h | ||
int32 FindGraphPageIndex
(
const FGuid& InPageID |
Return the index of the given page in the document's PagedGraphs array. Returns INDEX_NONE in document where the given graph with the provided PageID is not found. | MetasoundFrontendDocumentBuilder.h | |
const FMetasoundFrontendVariable * FindGraphVariable
(
const FGuid& InVariableID, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendVariable * FindGraphVariable
(
FName InVariableName, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendVariable * FindGraphVariableByNodeID
(
const FGuid& InNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
bool FindInterfaceInputNodes
(
FName InterfaceName, |
MetasoundFrontendDocumentBuilder.h | ||
bool FindInterfaceOutputNodes
(
FName InterfaceName, |
MetasoundFrontendDocumentBuilder.h | ||
UMetaSoundFrontendMemberMetadata * FindMemberMetadata
(
const FGuid& InMemberID |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendNode * FindNode
(
const FGuid& InNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
const TArray< FMetasoundFrontendClassInputDefault > * FindNodeClassInputDefaults
(
const FGuid& InNodeID, |
Returns class defaults associated with the given node input (as defined in the associated node's dependency) | MetasoundFrontendDocumentBuilder.h | |
TInstancedStruct< FMetaSoundFrontendNodeConfiguration > FindNodeConfiguration
(
const FGuid& InNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
const TConstStructView< FMetaSoundFrontendNodeConfiguration > FindNodeConfiguration
(
const FGuid& InNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
| Return the node's index in the document's specified paged graph's node array. | MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendVertex * FindNodeInput
(
const FGuid& InNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendVertex * FindNodeInput
(
const FGuid& InNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendVertexLiteral * FindNodeInputDefault
(
const FGuid& InNodeID, |
Returns node input's vertex default if valid and assigned. | MetasoundFrontendDocumentBuilder.h | |
const FMetasoundFrontendVertexLiteral * FindNodeInputDefault
(
const FGuid& InNodeID, |
Returns node input's vertex default if valid and assigned. | MetasoundFrontendDocumentBuilder.h | |
TArray< const FMetasoundFrontendVertex * > FindNodeInputs
(
const FGuid& InNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
TArray< const FMetasoundFrontendVertex * > FindNodeInputsConnectedToNodeOutput
(
const FGuid& InOutputNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendVertex * FindNodeOutput
(
const FGuid& InNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendVertex * FindNodeOutput
(
const FGuid& InNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendVertex * FindNodeOutputConnectedToNodeInput
(
const FGuid& InInputNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
TArray< const FMetasoundFrontendVertex * > FindNodeOutputs
(
const FGuid& InNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
FMetasoundFrontendEdgeStyle & FindOrAddEdgeStyle
(
const FGuid& InNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
FMetaSoundFrontendGraphComment & FindOrAddGraphComment
(
const FGuid& InCommentID, |
MetasoundFrontendDocumentBuilder.h | ||
int32 FindPageIndex
(
const FGuid& InPageID |
MetasoundFrontendDocumentBuilder.h | ||
TArray< const FMetasoundFrontendVertex * > FindUserModifiableNodeInputs
(
const FGuid& InNodeID, |
Returns all inputs on a given node that are user modifiable. | MetasoundFrontendDocumentBuilder.h | |
TArray< const FMetasoundFrontendVertex * > FindUserModifiableNodeOutputs
(
const FGuid& InNodeID, |
Returns all outputs on a given node that are user modifiable. | MetasoundFrontendDocumentBuilder.h | |
TVertexMetadataType * FindVertexMetadata
(
const FGuid& InNodeID |
Convenience function for attempting to get the underlying mutable document template vertex metadata. If the provided template vertex type is not that which the current document is set to or no document template is set, returns null. | MetasoundFrontendDocumentBuilder.h | |
void FinishBuilding() |
MetasoundFrontendDocumentBuilder.h | ||
FMetasoundFrontendClassName GenerateNewClassName() |
Generates and returns new class name for the given builder's document. Should be used with extreme caution (i.e. on new assets, when migrating assets, or upon generation of transient MetaSounds), as using a persistent builder registered with the DocumentBuilderRegistry may result in stale asset records keyed off of an undefined class name. In addition, this can potentially leave existing node references in an abandoned state to this class causing asset validation errors. | MetasoundFrontendDocumentBuilder.h | |
| MetasoundFrontendDocumentBuilder.h | |||
| MetasoundFrontendDocumentBuilder.h | |||
| MetasoundFrontendDocumentBuilder.h | |||
EMetasoundFrontendClassAccessFlags GetAccessFlags() |
MetasoundFrontendDocumentBuilder.h | ||
const FTopLevelAssetPath GetBuilderClassPath() |
MetasoundFrontendDocumentBuilder.h | ||
const FGuid & GetBuildPageID() |
The graph ID used when requests are made to mutate specific paged graph topology (ex. adding or removing nodes or edges) | MetasoundFrontendDocumentBuilder.h | |
const FMetasoundFrontendDocument & GetConstDocumentChecked() |
MetasoundFrontendDocumentBuilder.h | ||
TConstStructView< FMetaSoundFrontendDocumentTemplate > GetConstDocumentConfiguration() |
MetasoundFrontendDocumentBuilder.h | ||
const TTemplateType * GetConstDocumentConfigurationAs() |
MetasoundFrontendDocumentBuilder.h | ||
const IMetaSoundDocumentInterface & GetConstDocumentInterfaceChecked() |
MetasoundFrontendDocumentBuilder.h | ||
TConstStructView< FMetaSoundFrontendDocumentTemplate > GetConstDocumentTemplate() |
Returns struct view of document template if set. | MetasoundFrontendDocumentBuilder.h | |
const TTemplateType * GetConstTemplateAs() |
Convenience template function for attempting to get the underlying const pointer of the set configuration. If the provided configuration type is not that which the current document is set to or no configuration is set, returns null. | MetasoundFrontendDocumentBuilder.h | |
const FString GetDebugName() |
MetasoundFrontendDocumentBuilder.h | ||
TStructView< FMetaSoundFrontendDocumentTemplate > GetDocumentConfiguration() |
Soft deprecated. To be deprecated in subsequent change. | MetasoundFrontendDocumentBuilder.h | |
Metasound::Frontend::FDocumentModifyDelegates & GetDocumentDelegates() |
MetasoundFrontendDocumentBuilder.h | ||
TStructView< FMetaSoundFrontendDocumentTemplate > GetDocumentTemplate() |
Returns mutable struct view of document template if set. Internal use only to avoid writing against struct members in invalid or dangerous, non-editor contexts (use 'SetTemplate' instead for most script or edit-time applications). | MetasoundFrontendDocumentBuilder.h | |
const FMetasoundFrontendLiteral * GetGraphInputDefault
(
FName InputName, |
Returns the default value set for the input with the given name on the given page. | MetasoundFrontendDocumentBuilder.h | |
const TSet< FName > * GetGraphInputsInheritingDefault() |
MetasoundFrontendDocumentBuilder.h | ||
TArray< const FMetasoundFrontendNode * > GetGraphInputTemplateNodes
(
FName InInputName, |
MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendLiteral * GetGraphVariableDefault
(
FName InputName, |
Returns the default value set for the variable with the given name on the given page. | MetasoundFrontendDocumentBuilder.h | |
const FTopLevelAssetPath & GetHintPath() |
Path for document object provided at construction time. Cached on builder as a useful means of debugging and enables weak reference removal from the builder registry should the object be mid-destruction. | MetasoundFrontendDocumentBuilder.h | |
const bool GetIsAdvancedDisplay
(
const FName MemberName, |
MetasoundFrontendDocumentBuilder.h | ||
bool GetIsGraphEditable
(
const FGuid* InPageID |
If PageID set, returns whether or not the given page is editable. If no page ID is set, returns whether graph with set build ID is editable. | MetasoundFrontendDocumentBuilder.h | |
FMetasoundAssetBase & GetMetasoundAsset() |
MetasoundFrontendDocumentBuilder.h | ||
EMetasoundFrontendVertexAccessType GetNodeInputAccessType
(
const FGuid& InNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
| Returns friendly name of the given node input vertex. Unlike a straight look-up of the vertex metadata value, this tries and determines the best display name based on the parent node's class, if no display name is given converts the base FName to FText, etc. | MetasoundFrontendDocumentBuilder.h | ||
EMetasoundFrontendVertexAccessType GetNodeOutputAccessType
(
const FGuid& InNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
| Returns friendly name of the given node output vertex. Unlike a straight look-up of the vertex metadata value, this tries and determines the best display name based on the parent node's class, if no display name is given converts the base FName to FText, etc. | MetasoundFrontendDocumentBuilder.h | ||
const FMetasoundFrontendNodeStyle * GetNodeStyle
(
const FGuid& InNodeID, |
Gets the editor-only style of a node with the given ID. | MetasoundFrontendDocumentBuilder.h | |
FText GetNodeTitle
(
const FGuid& InNodeID, |
Title used when displaying the given node. Returned text falls back in the following order: | MetasoundFrontendDocumentBuilder.h | |
FMetasoundAssetBase * GetReferencedPresetAsset() |
MetasoundFrontendDocumentBuilder.h | ||
int32 GetTransactionCount() |
MetasoundFrontendDocumentBuilder.h | ||
void InitDocument
(
const FMetasoundFrontendDocument* InDocumentTemplate, |
Initializes the builder's document, using the (optional) provided document template, (optional) class name, and (optionally) whether or not to reset the existing class version. | MetasoundFrontendDocumentBuilder.h | |
void InitGraphClassMetadata
(
bool bResetVersion, |
MetasoundFrontendDocumentBuilder.h | ||
void InitNodeLocations() |
MetasoundFrontendDocumentBuilder.h | ||
bool IsConfiguringDocument() |
Whether or not the builder is actively configuring or re-configuring its document. | MetasoundFrontendDocumentBuilder.h | |
bool IsDependencyReferenced
(
const FGuid& InClassID |
MetasoundFrontendDocumentBuilder.h | ||
const bool IsDocumentConfiguredBy() |
Determines if the builder is configured the given template type. | MetasoundFrontendDocumentBuilder.h | |
bool IsInterfaceDeclared
(
const FMetasoundFrontendVersion& InInterfaceVersion |
MetasoundFrontendDocumentBuilder.h | ||
bool IsInterfaceDeclared
(
FName InInterfaceName |
MetasoundFrontendDocumentBuilder.h | ||
| MetasoundFrontendDocumentBuilder.h | |||
| MetasoundFrontendDocumentBuilder.h | |||
| MetasoundFrontendDocumentBuilder.h | |||
| MetasoundFrontendDocumentBuilder.h | |||
bool IsPreset() |
MetasoundFrontendDocumentBuilder.h | ||
bool IsValid() |
Returns whether or not builder is attached to a DocumentInterface and is valid to build or act on a document. | MetasoundFrontendDocumentBuilder.h | |
Metasound::Frontend::EInvalidEdgeReason IsValidEdge
(
const FMetasoundFrontendEdge& InEdge, |
Returns whether or not the given edge is valid (i.e. represents an input and output that equate in data and access types) or malformed. Note that this does not return whether or not the given edge exists, but rather if it could be legally applied to the given edge vertices. | MetasoundFrontendDocumentBuilder.h | |
void IterateNodes
(
Metasound::Frontend::FConstClassAndNodeFunctionRef Func, |
Iterates all nodes for the given page (uses build page ID if not provided). | MetasoundFrontendDocumentBuilder.h | |
void IterateNodesByClassType
(
Metasound::Frontend::FConstClassAndNodeFunctionRef Func, |
Iterates nodes that are filtered by only subscribing to a class with the given type (asserts if provided invalid class type). | MetasoundFrontendDocumentBuilder.h | |
void IterateNodesByPredicate
(
Metasound::Frontend::FConstClassAndNodeAndPageIDFunctionRef Func, |
Iterates nodes, filtered by the given predicate. If bIterateAllPages is true, nodes on all pages will be considered and Page ID is ignored. | MetasoundFrontendDocumentBuilder.h | |
bool ModifyInterfaces
(
Metasound::Frontend::FModifyInterfaceOptions&& InOptions |
MetasoundFrontendDocumentBuilder.h | ||
| MetasoundFrontendDocumentBuilder.h | |||
void Reload
(
TSharedPtr< Metasound::Frontend::FDocumentModifyDelegates > Delegates, |
MetasoundFrontendDocumentBuilder.h | ||
void RemoveAccessFlags
(
EMetasoundFrontendClassAccessFlags AccessFlags |
MetasoundFrontendDocumentBuilder.h | ||
bool RemoveDependency
(
EMetasoundFrontendClassType ClassType, |
Removes all dependencies with the given Class Type, Name, & Version Number. Removes any nodes (and corresponding edges) remaining in any MetaSound paged graphs. | MetasoundFrontendDocumentBuilder.h | |
bool RemoveDependency
(
const FGuid& InClassID |
Removes all dependencies with the given ClassID. Removes any nodes (and corresponding edges) remaining in any MetaSound paged graphs. | MetasoundFrontendDocumentBuilder.h | |
bool RemoveEdge
(
const FMetasoundFrontendEdge& EdgeToRemove, |
MetasoundFrontendDocumentBuilder.h | ||
| Removes all edges connected to an input or output vertex associated with the node of the given ID. | MetasoundFrontendDocumentBuilder.h | ||
| MetasoundFrontendDocumentBuilder.h | |||
| MetasoundFrontendDocumentBuilder.h | |||
| MetasoundFrontendDocumentBuilder.h | |||
| MetasoundFrontendDocumentBuilder.h | |||
| MetasoundFrontendDocumentBuilder.h | |||
bool RemoveGraphInput
(
FName InputName, |
MetasoundFrontendDocumentBuilder.h | ||
bool RemoveGraphInputDefault
(
FName InputName, |
MetasoundFrontendDocumentBuilder.h | ||
bool RemoveGraphInputDefault
(
FName InputName, |
MetasoundFrontendDocumentBuilder.h | ||
bool RemoveGraphOutput
(
FName OutputName |
MetasoundFrontendDocumentBuilder.h | ||
bool RemoveGraphPage
(
const FGuid& InPageID |
MetasoundFrontendDocumentBuilder.h | ||
| MetasoundFrontendDocumentBuilder.h | |||
bool RemoveInterface
(
FName Name |
MetasoundFrontendDocumentBuilder.h | ||
bool RemoveNamedEdges
(
const TSet< Metasound::Frontend::FNamedEdge >& InNamedEdgesToRemove, |
MetasoundFrontendDocumentBuilder.h | ||
| Removes node and connected edges from document. Does not remove dependency. Use RemoveUnusedDependencies. | MetasoundFrontendDocumentBuilder.h | ||
| MetasoundFrontendDocumentBuilder.h | |||
| MetasoundFrontendDocumentBuilder.h | |||
bool RemoveUnusedDependencies() |
MetasoundFrontendDocumentBuilder.h | ||
bool ReplaceDependency
(
const Metasound::Frontend::FNodeClassRegistryKey& OldClass, |
Replaces existing dependency with a new one. Removes all nodes using this class, and readds nodes with new class, trying to maintain existing connections (based on name/data type) and data. Optionally report disconnected inputs and outputs. | MetasoundFrontendDocumentBuilder.h | |
bool ResetGraphInputDefault
(
FName InputName |
MetasoundFrontendDocumentBuilder.h | ||
void ResetGraphPages
(
bool bClearDefaultGraph |
Removes all graph pages except the default. If bClearDefaultPage is true, clears the default graph page implementation. | MetasoundFrontendDocumentBuilder.h | |
void SetAccessFlags
(
EMetasoundFrontendClassAccessFlags AccessFlags |
MetasoundFrontendDocumentBuilder.h | ||
void SetAuthor
(
const FString& InAuthor |
MetasoundFrontendDocumentBuilder.h | ||
bool SetBuildPageID
(
const FGuid& InBuildPageID, |
Sets the builder's targeted paged graph ID to the given ID if it exists. Returns true if the builder is already targeting the given ID or if it successfully found a page implementation with the given ID and was able to switch to it, false if not. Swapping the targeted build graph ID clears the local cache, so swapping frequently can induce cache thrashing. BroadcastDelegate should always be true unless dealing with the controller API (exposed as a mechanism for mutating via controllers while deprecating. Option will be removed in a future build). | MetasoundFrontendDocumentBuilder.h | |
| MetasoundFrontendDocumentBuilder.h | |||
void SetDescription
(
const FText& InDescription |
MetasoundFrontendDocumentBuilder.h | ||
void SetDisplayName
(
const FText& InDisplayName |
MetasoundFrontendDocumentBuilder.h | ||
void SetDocumentConfiguration
(
TInstancedStruct< FMetaSoundFrontendDocumentTemplate > InConfig |
MetasoundFrontendDocumentBuilder.h | ||
bool SetDocumentConfigurationProperties
(
TFunctionRef< void(TConfig&)> SetPropertyFunction |
MetasoundFrontendDocumentBuilder.h | ||
void SetDocumentConfigurationProperties
(
TFunctionRef< void(TStructView< FMetaSoundFrontendDocumentTemplate >)> SetPropertyFunction |
MetasoundFrontendDocumentBuilder.h | ||
bool SetGraphInputAccessType
(
FName InputName, |
Sets the given graph input's access type. | MetasoundFrontendDocumentBuilder.h | |
bool SetGraphInputAdvancedDisplay
(
const FName InputName, |
Sets the given input`s IsAdvancedDisplay state. AdvancedDisplay pins are hidden in the node by default. returns true if state was changed. | MetasoundFrontendDocumentBuilder.h | |
bool SetGraphInputDataType
(
FName InputName, |
Sets the given graph input's data type. | MetasoundFrontendDocumentBuilder.h | |
bool SetGraphInputDefault
(
FName InputName, |
Set the given graph input's default(s). | MetasoundFrontendDocumentBuilder.h | |
bool SetGraphInputDefaults
(
FName InputName, |
MetasoundFrontendDocumentBuilder.h | ||
| Sets the graph input's description. Returns true if found and set, false if not. | MetasoundFrontendDocumentBuilder.h | ||
| Sets the graph input's display name. Returns true if found and set, false if not. | MetasoundFrontendDocumentBuilder.h | ||
bool SetGraphInputInheritsDefault
(
FName InName, |
MetasoundFrontendDocumentBuilder.h | ||
| Sets a given graph input's name to a new name. Succeeds if the graph output exists and the new name is set (or is the same as the old name). | MetasoundFrontendDocumentBuilder.h | ||
bool SetGraphInputsInheritingDefault
(
TSet< FName >&& InNames |
MetasoundFrontendDocumentBuilder.h | ||
bool SetGraphInputSortOrderIndex
(
const FName InputName, |
Sets the graph input's sort order index. Returns true if found and set, false if not. | MetasoundFrontendDocumentBuilder.h | |
bool SetGraphOutputAccessType
(
FName OutputName, |
Sets the given graph output's access type. | MetasoundFrontendDocumentBuilder.h | |
bool SetGraphOutputAdvancedDisplay
(
const FName OutputName, |
Sets the given output`s IsAdvancedDisplay state. | MetasoundFrontendDocumentBuilder.h | |
bool SetGraphOutputDataType
(
FName OutputName, |
Sets the given graph output's data type. | MetasoundFrontendDocumentBuilder.h | |
| Sets the graph output's description. Returns true if found and set, false if not. | MetasoundFrontendDocumentBuilder.h | ||
| Sets the graph input's display name. Returns true if found and set, false if not. | MetasoundFrontendDocumentBuilder.h | ||
| Sets a given graph output's name to a new name. Succeeds if the graph output exists and the new name is set (or is the same as the old name). | MetasoundFrontendDocumentBuilder.h | ||
bool SetGraphOutputSortOrderIndex
(
const FName OutputName, |
Sets the graph output's sort order index. Returns true if found and set, false if not. | MetasoundFrontendDocumentBuilder.h | |
bool SetGraphVariableDefault
(
FName VariableName, |
Sets the given graph variable's default. | MetasoundFrontendDocumentBuilder.h | |
| Sets the given graph variable's description. | MetasoundFrontendDocumentBuilder.h | ||
| Sets the given graph variable's display name. | MetasoundFrontendDocumentBuilder.h | ||
| Sets the given graph variable's description. | MetasoundFrontendDocumentBuilder.h | ||
void SetInputStyle
(
FMetasoundFrontendInterfaceStyle&& Style |
MetasoundFrontendDocumentBuilder.h | ||
void SetIsDeprecated
(
const bool bInIsDeprecated |
MetasoundFrontendDocumentBuilder.h | ||
void SetIsGraphEditable
(
bool bIsEditable, |
If page ID is provided, updates the graph's editable flag to the given value. If no page ID is provided, sets all paged graph fields to the given value. | MetasoundFrontendDocumentBuilder.h | |
| MetasoundFrontendDocumentBuilder.h | |||
void SetMemberMetadata
(
UMetaSoundFrontendMemberMetadata& NewMetadata |
MetasoundFrontendDocumentBuilder.h | ||
bool SetNodeComment
(
const FGuid& InNodeID, |
Sets the editor-only comment to the provided value. | MetasoundFrontendDocumentBuilder.h | |
bool SetNodeCommentVisible
(
const FGuid& InNodeID, |
Sets the editor-only comment visibility. | MetasoundFrontendDocumentBuilder.h | |
bool SetNodeConfiguration
(
const FGuid& InNodeID, |
Returns true if the node configuration is set | MetasoundFrontendDocumentBuilder.h | |
bool SetNodeInputDefault
(
const FGuid& InNodeID, |
MetasoundFrontendDocumentBuilder.h | ||
bool SetNodeLocation
(
const FGuid& InNodeID, |
Sets the editor-only node location of a node with the given ID to the provided location. | MetasoundFrontendDocumentBuilder.h | |
| Sets the editor-only Unconnected Pins Hidden for a node with the given ID. | MetasoundFrontendDocumentBuilder.h | ||
void SetOutputStyle
(
FMetasoundFrontendInterfaceStyle&& Style |
MetasoundFrontendDocumentBuilder.h | ||
void SetTemplate
(
TInstancedStruct< FMetaSoundFrontendDocumentTemplate > InConfig |
Sets the entire internal configuration with that provided. | MetasoundFrontendDocumentBuilder.h | |
void SetTemplateProperties
(
TFunctionRef< void(TStructView< FMetaSoundFrontendDocumentTemplate >)> SetPropertyFunction |
Update the given document template inline using the internal struct view passed to a given function. | MetasoundFrontendDocumentBuilder.h | |
bool SetTemplateProperties
(
TFunctionRef< void(TConfig&)> SetPropertyFunction |
If struct type of function coincides with that of the given builder's MetaSound configuration, sets the given document template properties inline using the internal struct view passed to a given function. Returns true if set function successfully executed, false if not. | MetasoundFrontendDocumentBuilder.h | |
void SetVersionNumber
(
const FMetasoundFrontendVersionNumber& InDocumentVersionNumber |
Sets the document's version number. Should only be called by document versioning. | MetasoundFrontendDocumentBuilder.h | |
| Internal function to remove graph input default for cook. Same as RemoveGraphInputDefault but removing the default page input default is allowed. | MetasoundFrontendDocumentBuilder.h | ||
bool SwapGraphInput
(
const FMetasoundFrontendClassVertex& InExistingInputVertex, |
MetasoundFrontendDocumentBuilder.h | ||
bool SwapGraphOutput
(
const FMetasoundFrontendClassVertex& InExistingOutputVertex, |
MetasoundFrontendDocumentBuilder.h | ||
bool SynchronizeDependencyMetadata
(
TArray< const FMetasoundFrontendClass* >* InOutModifiedClasses |
Synchronizes all dependency Metadata in document with that found in the registry. | MetasoundFrontendDocumentBuilder.h | |
bool TransformTemplateNodes () |
Transforms template nodes within the given builder's document, which can include swapping associated edges and/or replacing nodes with other, registry-defined concrete node class instances. | MetasoundFrontendDocumentBuilder.h | |
bool UpdateDependencyRegistryData
(
const TMap< Metasound::Frontend::FNodeRegistryKey, Metasound::Frontend::FNodeRegistryKey >& OldToNe... |
MetasoundFrontendDocumentBuilder.h | ||
| Returns true if node is found. | MetasoundFrontendDocumentBuilder.h |
Public Virtual
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static TOptional< Metasound::FAnyDataReference > CreateDataReference
(
const Metasound::FOperatorSettings& InOperatorSettings, |
MetasoundFrontendDocumentBuilder.h | ||
static bool FindDeclaredInterfaces
(
const FMetasoundFrontendDocument& InDocument, |
MetasoundFrontendDocumentBuilder.h | ||
static void InitGraphClassMetadata
(
FMetasoundFrontendClassMetadata& InOutMetadata, |
Initializes GraphClass Metadata, optionally resetting the version back to 1.0 and/or creating a unique class name if a name is not provided. | MetasoundFrontendDocumentBuilder.h |