Navigation
API > API/Plugins > API/Plugins/MetasoundEngine
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- UMetaSoundBuilderBase
- UMetaSoundPatchBuilder
- UMetaSoundSourceBuilder
References
| Module | MetasoundEngine |
| Header | /Engine/Plugins/Runtime/Metasound/Source/MetasoundEngine/Public/MetasoundBuilderBase.h |
| Include | #include "MetasoundBuilderBase.h" |
Syntax
UCLASS (Abstract, BlueprintType, Transient, Meta=(DisplayName="MetaSound Builder Base"))
class UMetaSoundBuilderBase : public UObject
Remarks
Base implementation of MetaSound builder
Variables
| Type | Name | Description | |
|---|---|---|---|
| path keys kept | aligned | ||
| bool | bIsAttached | ||
| FNameFMetasoundFrontendLiteralEMetaSoundBuilderResult bool | bIsConstructorInput | ||
| FNameFMetasoundFrontendLiteralEMetaSoundBuilderResult bool | bIsConstructorOutput | ||
| FMetaSoundFrontendDocumentBuilder | Builder | ||
| FMetasoundFrontendClassName | ClassName | ||
| const FMetaSoundBuilderOptions &Options | const | ||
| const FMetaSoundBuilderNodeInputHandle &InputHandle | const | ||
| FName | DataType | ||
| EMetaSoundBuilderResultFName | DataType | ||
| FNameFMetasoundFrontendLiteral | DefaultValue | ||
| FName | InputName | ||
| EMetaSoundBuilderResultint32 | MajorVersion | ||
| int32 | MajorVersion | ||
| FName | OutputName | ||
| EMetaSoundBuilderResult & | OutResult | ||
| int32EMetaSoundBuilderResult & | OutResult | ||
| FNameEMetaSoundBuilderResult & | OutResult | ||
| FNameFMetasoundFrontendLiteralEMetaSoundBuilderResult & | OutResult |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | AddGraphPage
(
FName PageName, |
Adds a graph page to the given builder's document. | |
| void | AddInterface
(
FName InterfaceName, |
Adds an interface registered with the given name to the graph, adding associated input and output nodes. | |
| void | AddTransactionListener
(
TSharedRef< Metasound::Frontend::IDocumentBuilderTransactionListener > BuilderListener |
Adds transaction listener which allows objects to respond to when certain graph operations are applied from anywhere (adding or removing nodes, edges, pages, etc.) Currently there is no guarantee all transactions will be represented until the Controller API is fully deprecated! (ex. if a node or edge is added or removed via a controller API call, the transaction will be missed). | |
| TScriptInterface< IMetaSoundDocumentInterface > | Build
(
constFMetaSoundBuilderOptions& Options |
||
| void | BuildAndOverwriteMetaSound
(
UPARAM(DisplayName="Existing MetaSound") TScriptInterface< IMetaSoundDocumentInterface > ExistingMet..., |
Copies a transient MetaSound with the provided builder options, copying the underlying MetaSound managed by this builder and registering it with the MetaSound Node Registry as a unique name. | |
| void | BuildAndOverwriteMetaSoundInternal
(
TScriptInterface< IMetaSoundDocumentInterface > ExistingMetaSound, |
||
| UClassType & | BuildInternal
(
UObject* Parent, |
Runs build, conforming the document and corresponding object data on a MetaSound UObject to that managed by this builder. | |
| bool | ClearMemberMetadata
(
constFGuid& InMemberID |
||
| bool | |||
| void | ConnectNodeInputToGraphInput
(
FName GraphInputName, |
Connects a given node input to the graph input with the given name. | |
| void | ConnectNodeOutputToGraphOutput
(
FName GraphOutputName, |
Connects a given node output to the graph output with the given name. | |
| void | ConnectNodes
(
constFMetaSoundBuilderNodeOutputHandle& NodeOutputHandle, |
Connects node output to a node input. | |
| void | ConnectNodesByInterfaceBindings
(
constFMetaSoundNodeHandle& FromNodeHandle, |
Connects two nodes using defined MetaSound Interface Bindings registered with the MetaSound Interface registry. | |
| void | ConvertFromPreset
(
EMetaSoundBuilderResult& OutResult |
Converts this preset to a fully accessible MetaSound; sets result to succeeded if it was converted successfully and failed if it was not. | |
| void | ConvertToPreset
(
constTScriptInterface< IMetaSoundDocumentInterface >& ReferencedNodeClass, |
Convert this builder to a MetaSound source preset with the given referenced source builder. | |
| void | |||
| UMetaSoundBuilderDocument * | |||
| void | DisconnectNodeInput
(
constFMetaSoundBuilderNodeInputHandle& NodeInputHandle, |
Removes connection to a given node input. Returns success if connection was removed, failed if not. | |
| void | DisconnectNodeOutput
(
constFMetaSoundBuilderNodeOutputHandle& NodeOutputHandle, |
Removes all connections from a given node output. Returns success if all connections were removed, failed if not. | |
| void | DisconnectNodes
(
constFMetaSoundBuilderNodeOutputHandle& NodeOutputHandle, |
Disconnects node output to a node input. Returns success if connection was removed, failed if not. | |
| void | DisconnectNodesByInterfaceBindings
(
constFMetaSoundNodeHandle& FromNodeHandle, |
Disconnects two nodes using defined MetaSound Interface Bindings registered with the MetaSound Interface registry. | |
| constFMetaSoundFrontendGraphComment * | FindGraphComment
(
constFGuid& InCommentID |
||
| FMetaSoundFrontendGraphComment * | FindGraphComment
(
constFGuid& InCommentID |
||
| UMetaSoundFrontendMemberMetadata * | FindMemberMetadata
(
constFGuid& InMemberID |
||
| FMetaSoundFrontendGraphComment & | FindOrAddGraphComment
(
constFGuid& InCommentID |
||
| constUClass & | Returns the base class registered with the MetaSound UObject registry. | ||
| FMetaSoundFrontendDocumentBuilder & | GetBuilder () |
||
| Metasound::Frontend::FDocumentModifyDelegates & | |||
| constUClass & | |||
| constFMetaSoundFrontendDocumentBuilder & | |||
| int32 | |||
| void | GetNodeInputData
(
constFMetaSoundBuilderNodeInputHandle& InputHandle, |
Returns node input's data if valid (including things like name and datatype). | |
| void | GetNodeOutputData
(
constFMetaSoundBuilderNodeOutputHandle& OutputHandle, |
Returns node output's data if valid (including things like name and datatype). | |
| void | InitDelegates
(
Metasound::Frontend::FDocumentModifyDelegates& OutDocumentDelegates |
||
| void | |||
| void | Initialize () |
Resets FrontendBuilder instance, creating a transient MetaSound document that is managed by this UObject Builder. | |
| void | Initializes and ensures all nodes have a position (required prior to exporting to an asset if expected to be viewed in the editor). | ||
| void | InjectInputTemplateNodes
(
bool bForceNodeCreation, |
Injects template nodes between builder's document inputs not connected to existing template inputs, copying locational data from the represented input metadata. | |
| void | InvalidateCache
(
bool bPrimeCache |
||
| void | OnAssetReferenceAdded
(
TScriptInterface< IMetaSoundDocumentInterface > DocInterface |
||
| void | OnRemovingAssetReference
(
TScriptInterface< IMetaSoundDocumentInterface > DocInterface |
||
| void | RegisterGraphIfOutstandingTransactions
(
UObject& InMetaSound |
Only registers provided MetaSound's graph class and referenced graphs recursively if it has yet to be registered or if it has an attached builder reporting outstanding transactions that have yet to be registered. | |
| path keys kept and priming managed internally void | ReloadCache
(
bool bPrimeCache |
||
| bool | RemoveGraphComment
(
constFGuid& InCommentID |
||
| void | RemoveGraphInput
(
FName Name, |
Removes graph input if it exists; sets result to succeeded if it was removed and failed if it was not. | |
| void | RemoveGraphOutput
(
FName Name, |
Removes graph output if it exists; sets result to succeeded if it was removed and failed if it was not. | |
| void | RemoveGraphPage
(
FName Name, |
Removes a graph page with the given name, setting result to failed if the name was not found or was invalid. | |
| void | RemoveInterface
(
FName InterfaceName, |
Removes the interface with the given name from the builder's MetaSound. | |
| void | RemoveNode
(
constFMetaSoundNodeHandle& NodeHandle, |
Removes node and any associated connections from the builder's MetaSound. | |
| void | RemoveNodeInputDefault
(
constFMetaSoundBuilderNodeInputHandle& InputHandle, |
Removes node input literal default if set, reverting the value to be whatever the node class defaults the value to. | |
| void | RemoveTransactionListener
(
FDelegateHandle BuilderListenerDelegateHandle |
Explicitly remove transaction listener from builder (see corresponding 'AddTransactionListener' function). | |
| void | Removes dependencies in document that are no longer referenced by nodes. | ||
| void | RenameRootGraphClass
(
constFMetasoundFrontendClassName& InName |
||
| void | ResetGraphPages
(
bool bClearDefaultPage |
Removes all graph pages except the default. If bClearDefaultPage is true, clears the default graph page implementation. | |
| void | Sets the author of the MetaSound. | ||
| void | SetGraphInputAccessType
(
FName InputName, |
Disconnects the given graph input's respective template nodes and sets the graph input's AccessType should it not match the current AccessType. | |
| void | SetGraphInputDataType
(
FName InputName, |
Disconnects the given graph input's respective template nodes and sets the graph input's DataType should it not match the current DataType. | |
| void | SetGraphInputDefault
(
FName InputName, |
Sets the input node's default value, overriding the default provided by the referenced graph if the graph is a preset. | |
| void | SetGraphInputName
(
FName InputName, |
Sets the given graph input's name to the new name. | |
| void | SetGraphOutputAccessType
(
FName OutputName, |
Disconnects the given graph output's respective template nodes and sets the graph output's AccessType should it not match the current AccessType. | |
| void | SetGraphOutputDataType
(
FName OutputName, |
Disconnects the given graph output's respective template nodes and sets the graph output's DataType should it not match the current DataType. | |
| void | SetGraphOutputName
(
FName OutputName, |
Sets the given graph output's name to the new name. | |
| void | SetMemberMetadata
(
UMetaSoundFrontendMemberMetadata& NewMetadata |
||
| void | SetNodeComment
(
constFMetaSoundNodeHandle& InNodeHandle, |
||
| void | SetNodeCommentVisible
(
constFMetaSoundNodeHandle& InNodeHandle, |
||
| void | SetNodeInputDefault
(
constFMetaSoundBuilderNodeInputHandle& NodeInputHandle, |
Sets the node's input default value (used if no connection to the given node input is present) | |
| void | SetNodeLocation
(
constFMetaSoundNodeHandle& InNodeHandle, |
||
| void | SetNodeLocation
(
constFMetaSoundNodeHandle& InNodeHandle, |
||
UPARAM
(
DisplayName |
|||
UPARAM
(
DisplayName |
Returns node input's literal value if set on graph, otherwise fails and returns default literal. | ||
UPARAM
(
DisplayName |
Returns input's parent node if the input is valid, otherwise returns invalid node handle. | ||
UPARAM
(
DisplayName |
Returns output's parent node if the input is valid, otherwise returns invalid node handle. | ||
UPARAM
(
DisplayName |
Returns output's parent node if the input is valid, otherwise returns invalid node handle. | ||
UPARAM
(
DisplayName |
Returns the MetaSound asset's graph class name (used by the MetaSound Node Class Registry) | ||
UPARAM
(
DisplayName |
Returns node input's class literal value if set, otherwise fails and returns default literal. | ||
UPARAM
(
DisplayName |
Returns if a given node input has connections. | ||
UPARAM
(
DisplayName |
Returns whether the given node output is a constructor pin. | ||
UPARAM
(
DisplayName |
Return the asset referenced by this preset builder. Returns nullptr if the builder is not a preset. | ||
UPARAM
(
DisplayName |
Returns if a given interface is declared. | ||
UPARAM
(
DisplayName |
Returns if a given node output and node input are connected. | ||
UPARAM
(
DisplayName |
|||
UPARAM
(
DisplayName |
Returns if a given node output is connected. | ||
UPARAM
(
DisplayName |
Returns whether this is a preset. | ||
UPARAM
(
DisplayName |
Returns whether the given node input is a constructor pin. | ||
UPARAM
(
DisplayName |
Returns node outputs by the given DataType (ex. "Audio", "Trigger", "String", "Bool", "Float", "Int32", etc.). | ||
UPARAM
(
DisplayName |
Returns graph input node by the given name if it exists, or an invalid handle if not found. | ||
UPARAM
(
DisplayName |
Returns node output by the given name. | ||
UPARAM
(
DisplayName |
|||
UPARAM
(
DisplayName |
Adds a graph input node with the given name, DataType, and sets the graph input to default value. | ||
UPARAM
(
DisplayName |
Adds a graph output node with the given name, DataType, and sets output node's input to default value. | ||
UPARAM
(
DisplayName |
Adds a node to the graph using the provided MetaSound asset as its defining NodeClass. | ||
UPARAM
(
DisplayName |
Adds node referencing the highest native class version of the given class name to the document. | ||
UPARAM
(
DisplayName |
|||
UPARAM
(
DisplayName |
Returns all node outputs. | ||
UPARAM
(
DisplayName |
Connects a given node's outputs to all graph outputs for shared interfaces implemented on both the node's referenced class and the builder's MetaSound graph. Returns inputs of connected output nodes. | ||
UPARAM
(
DisplayName |
Returns whether node exists. | ||
UPARAM
(
DisplayName |
Returns whether node input exists. | ||
UPARAM
(
DisplayName |
Returns whether node output exists. | ||
UPARAM
(
DisplayName |
Returns graph output node by the given name if it exists, or an invalid handle if not found. | ||
UPARAM
(
DisplayName |
Returns node input by the given name if it exists, or an invalid handle if not found. | ||
UPARAM
(
DisplayName |
Returns all node inputs. | ||
UPARAM
(
DisplayName |
Returns node inputs by the given DataType (ex. "Audio", "Trigger", "String", "Bool", "Float", "Int32", etc.). | ||
UPARAM
(
DisplayName |
Connects a given node's inputs to all graph inputs for shared interfaces implemented on both the node's referenced class and the builder's MetaSound graph. Returns outputs of connected input nodes. | ||
UPARAM
(
DisplayName |
Builds a transient MetaSound with the provided builder options, copying the underlying MetaSound managed by this builder and registering it with the MetaSound Node Registry as a unique class. | ||
| void | UpdateDependencyClassNames
(
constTMap< FMetasoundFrontendClassName, FMetasoundFrontendClassName >& OldToNewReferencedClassNames |
Overridden from UObject
| Type | Name | Description | |
|---|---|---|---|
| void | BeginDestroy () |
Called before destroying the object. |