ISMGraphGeneration¶
Module: SMAssetTools
Public Classes¶
| Name | |
|---|---|
| struct | FCreateStateNodeArgs |
| struct | FCreateStateStackArgs |
| struct | FCreateTransitionEdgeArgs |
| struct | FCreateTransitionStackArgs |
| struct | FSetNodePropertyArgs |
Public Types¶
| Name | |
|---|---|
| enum | EArrayChangeType |
Public Functions¶
| Name | |
|---|---|
| virtual | ~ISMGraphGeneration() |
| virtual USMGraphNode_StateNodeBase * | CreateStateNode(USMBlueprint * InBlueprint, const FCreateStateNodeArgs & InStateArgs) =0 |
| template \<typename T > T * |
CreateStateNode(USMBlueprint * InBlueprint, const FCreateStateNodeArgs & InStateArgs) |
| virtual USMGraphNode_TransitionEdge * | CreateTransitionEdge(USMBlueprint * InBlueprint, const FCreateTransitionEdgeArgs & InTransitionArgs) =0 |
| template \<typename T > T * |
CreateTransitionEdge(USMBlueprint * InBlueprint, const FCreateTransitionEdgeArgs & InTransitionArgs) |
| virtual USMStateInstance * | CreateStateStackInstance(USMGraphNode_StateNode * InStateNode, const FCreateStateStackArgs & InStateStackArgs) =0 |
| virtual USMTransitionInstance * | CreateTransitionStackInstance(USMGraphNode_TransitionEdge * InTransitionEdge, const FCreateTransitionStackArgs & InTransitionStackArgs) =0 |
| virtual bool | SetNodePropertyValue(USMGraphNode_Base * InGraphNode, const FSetNodePropertyArgs & InPropertyArgs) =0 |
| virtual bool | RemoveNode(USMGraphNode_Base * InGraphNode) =0 |
| virtual bool | SetInitialState(USMGraphNode_StateNodeBase * InStateNode) =0 |
Public Types Documentation¶
enum EArrayChangeType¶
| Enumerator | Value | Description |
|---|---|---|
| SetElement | Set the value of the provided index, resizing the array to match if necessary. | |
| RemoveElement | Remove the element from the array at the provided index. | |
| Clear | Clear all elements from the array. | |
| AddElement | Append a default-constructed element to the end of the array. | |
| InsertElement | Insert a default-constructed element at PropertyIndex, shifting subsequent elements up. | |
| DuplicateElement | Duplicate the element at PropertyIndex; pin literals and wired property graphs are preserved. | |
| MoveElement | Reorder the element at PropertyIndex to TargetIndex, preserving element guids and wired graphs. |
Handle array processing.
Public Functions Documentation¶
function ~ISMGraphGeneration¶
function CreateStateNode¶
virtual USMGraphNode_StateNodeBase * CreateStateNode(
USMBlueprint * InBlueprint,
const FCreateStateNodeArgs & InStateArgs
) =0
Create a new state graph node in a blueprint.
Parameters:
InBlueprint- The blueprint to place the node.
InStateArgs- Arguments to use when creating the state.
Return: The newly created state node if successful.
function CreateStateNode¶
template <typename T >
inline T * CreateStateNode(
USMBlueprint * InBlueprint,
const FCreateStateNodeArgs & InStateArgs
)
function CreateTransitionEdge¶
virtual USMGraphNode_TransitionEdge * CreateTransitionEdge(
USMBlueprint * InBlueprint,
const FCreateTransitionEdgeArgs & InTransitionArgs
) =0
Create a new transition between two states.
Parameters:
InBlueprint- The blueprint to place the edge.
InTransitionArgs- Arguments to use to create the transition.
Return: The newly created transition edge if successful.
function CreateTransitionEdge¶
template <typename T >
inline T * CreateTransitionEdge(
USMBlueprint * InBlueprint,
const FCreateTransitionEdgeArgs & InTransitionArgs
)
function CreateStateStackInstance¶
virtual USMStateInstance * CreateStateStackInstance(
USMGraphNode_StateNode * InStateNode,
const FCreateStateStackArgs & InStateStackArgs
) =0
Create and add a state instance to a state stack.
Parameters:
InStateNode- The state node which should contain the state stack.
InStateStackArgs- The arguments to use when adding the state instance to the stack.
Return: The created state stack instance.
function CreateTransitionStackInstance¶
virtual USMTransitionInstance * CreateTransitionStackInstance(
USMGraphNode_TransitionEdge * InTransitionEdge,
const FCreateTransitionStackArgs & InTransitionStackArgs
) =0
Create and add a transition instance to a transition stack.
Parameters:
InTransitionEdge- The transition edge which should contain the transition stack.
InTransitionStackArgs- The arguments to use when adding the transition instance to the stack.
Return: The created transition stack instance.
function SetNodePropertyValue¶
virtual bool SetNodePropertyValue(
USMGraphNode_Base * InGraphNode,
const FSetNodePropertyArgs & InPropertyArgs
) =0
Set the value of a property on a graph node. This can be a state or transition. The property can be public, non-public, or a custom graph property (Such as a TextGraph).
Parameters:
InGraphNode- The graph node containing the property to modify.
InPropertyArgs- The property arguments.
Return: True if the value was set successfully.
function RemoveNode¶
Remove a graph node from its owning blueprint, breaking all connected pins.
Parameters:
InGraphNode- The graph node to remove.
Return: True if the node was removed successfully.
function SetInitialState¶
Rewire the entry node of a state graph to target a different state. Breaks any existing entry connection before creating the new one.
Parameters:
InStateNode- The state node to wire as the initial state. Must live in a USMGraph.
Return: True if the entry wiring was updated successfully.