Navigation
API > API/Plugins > API/Plugins/NiagaraEditor
These two structures represent a way to abstract the implementation details of the graph structure that is being used for the different pieces of code related to compiling Niagara systems. The GraphBridge handles the standard editor objects for graphs & nodes (UNiagaraGraph and UNiagaraNode respectively) with the remaining types following from that. The DigestBridge represents the digested graphs and nodes that we use to be able to compile Niagara systems async where the graphs & nodes are FNiagaraCompilationGraphFNiagaraCompilationNode respectively.
The bridge class is used as a template argument for the following classes (and supplementary functions/classes): -FNiagaraParameterMapHistory -FNiagaraParameterMapHistoryBuilder -FNiagaraHlslTranslator
This allows us to have the logic for these classes unified between the different graph representations without having to write two versions of the code.
| Name | FNiagaraCompilationGraphBridge |
| Type | struct |
| Header File | /Engine/Plugins/FX/Niagara/Source/NiagaraEditor/Public/NiagaraCompilationBridge.h |
| Include Path | #include "NiagaraCompilationBridge.h" |
Syntax
struct FNiagaraCompilationGraphBridge
Classes
| Name | Remarks |
|---|---|
| FBuilderExtraData | Used as a base class for the FNiagaraParameterMapHistoryBuilder to store additional data that is specific to the graph representation |
Structs
| Name | Remarks |
|---|---|
| FAvailableParameterCollections | |
| FParameterCollectionStore | Additional data for extending the ParameterMapHistoryBuilder |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FCompilationCopy | FNiagaraCompileRequestDuplicateData | NiagaraCompilationBridge.h | |
| FConstantResolver | FCompileConstantResolver | NiagaraCompilationBridge.h | |
| FConvertConnection | FNiagaraConvertConnection | NiagaraCompilationBridge.h | |
| FConvertNode | UNiagaraNodeConvert | NiagaraCompilationBridge.h | |
| FCustomHlslNode | UNiagaraNodeCustomHlsl | NiagaraCompilationBridge.h | |
| FEmitterNode | UNiagaraNodeEmitter | NiagaraCompilationBridge.h | |
| FFunctionCallNode | UNiagaraNodeFunctionCall | NiagaraCompilationBridge.h | |
| FGraph | UNiagaraGraph | Base types | NiagaraCompilationBridge.h |
| FGraphFunctionAliasContext | FNiagaraGraphFunctionAliasContext | NiagaraCompilationBridge.h | |
| FGraphTraversalHandle | FGraphTraversalHandle | NiagaraCompilationBridge.h | |
| FIfNode | UNiagaraNodeIf | NiagaraCompilationBridge.h | |
| FInputNode | UNiagaraNodeInput | NiagaraCompilationBridge.h | |
| FInputPin | UEdGraphPin | NiagaraCompilationBridge.h | |
| FModuleScopedPin | TModuleScopedPin< FPin > | NiagaraCompilationBridge.h | |
| FNode | UNiagaraNode | NiagaraCompilationBridge.h | |
| FOpNode | UNiagaraNodeOp | NiagaraCompilationBridge.h | |
| FOutputNode | UNiagaraNodeOutput | NiagaraCompilationBridge.h | |
| FOutputPin | UEdGraphPin | NiagaraCompilationBridge.h | |
| FParameterCollection | UNiagaraParameterCollection * | NiagaraCompilationBridge.h | |
| FParamMapForNode | UNiagaraNodeParameterMapFor | NiagaraCompilationBridge.h | |
| FParamMapGetNode | UNiagaraNodeParameterMapGet | NiagaraCompilationBridge.h | |
| FParamMapHistory | TNiagaraParameterMapHistory< FNiagaraCompilationGraphBridge > | NiagaraCompilationBridge.h | |
| FParamMapHistoryBuilder | TNiagaraParameterMapHistoryBuilder< FNiagaraCompilationGraphBridge > | NiagaraCompilationBridge.h | |
| FParamMapSetNode | UNiagaraNodeParameterMapSet | NiagaraCompilationBridge.h | |
| FPin | UEdGraphPin | NiagaraCompilationBridge.h | |
| FPrecompileData | FNiagaraCompileRequestData | NiagaraCompilationBridge.h | |
| FSelectNode | UNiagaraNodeSelect | NiagaraCompilationBridge.h | |
| FStaticSwitchNode | UNiagaraNodeStaticSwitch | NiagaraCompilationBridge.h |
Functions
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
| NiagaraCompilationBridge.h | |||
static const FCustomHlslNode * AsCustomHlslNode
(
const FNode* Node |
NiagaraCompilationBridge.h | ||
static const FFunctionCallNode * AsFunctionCallNode
(
const FNode* Node |
Various cast functions | NiagaraCompilationBridge.h | |
static const FInputNode * AsInputNode
(
const FNode* Node |
NiagaraCompilationBridge.h | ||
static const FOutputNode * AsOutputNode
(
const FNode* Node |
NiagaraCompilationBridge.h | ||
static const FParamMapGetNode * AsParamMapGetNode
(
const FNode* Node |
NiagaraCompilationBridge.h | ||
static const FParamMapSetNode * AsParamMapSetNode
(
const FNode* Node |
NiagaraCompilationBridge.h | ||
static void BuildTraversal
(
const FGraph* Graph, |
NiagaraCompilationBridge.h | ||
static bool CanCreateConnection
(
const FOutputPin* OutputPin, |
NiagaraCompilationBridge.h | ||
static void CustomHlslReferencesTokens
(
const FCustomHlslNode* CustomNode, |
NiagaraCompilationBridge.h | ||
static bool CustomHlslReferencesTokens
(
const FCustomHlslNode* CustomNode, |
NiagaraCompilationBridge.h | ||
static const FOutputNode * FindOutputNode
(
const FGraph* Graph, |
NiagaraCompilationBridge.h | ||
static void FindOutputNodes
(
const FGraph* Graph, |
NiagaraCompilationBridge.h | ||
static void FindOutputNodes
(
const FGraph* Graph, |
NiagaraCompilationBridge.h | ||
static UNiagaraDataInterface * GetCollectionDataInterface
(
FParameterCollection Collection, |
NiagaraCompilationBridge.h | ||
static FString GetCollectionFullName
(
FParameterCollection Collection |
NiagaraCompilationBridge.h | ||
static TObjectPtr< UObject > GetCollectionUObject
(
FParameterCollection Collection, |
NiagaraCompilationBridge.h | ||
static const TArray< FConvertConnection > & GetConvertConnections
(
const FConvertNode* ConvertNode |
NiagaraCompilationBridge.h | ||
static void GetCustomHlslIncludePaths
(
const FCustomHlslNode* CustomNode, |
NiagaraCompilationBridge.h | ||
static FString GetCustomHlslString
(
const FCustomHlslNode* CustomNode |
NiagaraCompilationBridge.h | ||
static ENiagaraScriptUsage GetCustomHlslUsage
(
const FCustomHlslNode* CustomNode |
NiagaraCompilationBridge.h | ||
static bool GetCustomNodeUsesImpureFunctions
(
const FCustomHlslNode* CustomNode |
NiagaraCompilationBridge.h | ||
static const FInputPin * GetDefaultPin
(
const FParamMapGetNode* GetNode, |
NiagaraCompilationBridge.h | ||
static const FGraph * GetEmitterGraph
(
const FEmitterNode* EmitterNode |
NiagaraCompilationBridge.h | ||
static FString GetEmitterHandleIdString
(
const FEmitterNode* EmitterNode |
NiagaraCompilationBridge.h | ||
static FNiagaraEmitterID GetEmitterID
(
const FEmitterNode* EmitterNode |
NiagaraCompilationBridge.h | ||
static FString GetEmitterName
(
const FEmitterNode* EmitterNode |
NiagaraCompilationBridge.h | ||
static FString GetEmitterPathName
(
const FEmitterNode* EmitterNode |
NiagaraCompilationBridge.h | ||
static FString GetEmitterUniqueName
(
const FEmitterNode* EmitterNode |
NiagaraCompilationBridge.h | ||
static ENiagaraScriptUsage GetEmitterUsage
(
const FEmitterNode* EmitterNode |
NiagaraCompilationBridge.h | ||
static FString GetFunctionFullName
(
const FFunctionCallNode* FunctionCall |
NiagaraCompilationBridge.h | ||
static FString GetFunctionName
(
const FFunctionCallNode* FunctionCall |
NiagaraCompilationBridge.h | ||
static const FGraph * GetFunctionNodeGraph
(
const FFunctionCallNode* FunctionCall |
NiagaraCompilationBridge.h | ||
static FString GetFunctionScriptName
(
const FFunctionCallNode* FunctionCall |
NiagaraCompilationBridge.h | ||
static ENiagaraScriptUsage GetFunctionUsage
(
const FFunctionCallNode* FunctionCall |
NiagaraCompilationBridge.h | ||
static const FGraph * GetGraph
(
const FCompilationCopy* CompilationCopy |
NiagaraCompilationBridge.h | ||
static TOptional< ENiagaraDefaultMode > GetGraphDefaultMode
(
const FGraph* Graph, |
NiagaraCompilationBridge.h | ||
static TArray< const FInputNode * > GetGraphInputNodes
(
const FGraph* Graph, |
NiagaraCompilationBridge.h | ||
static TArray< FNiagaraVariable > GetGraphOutputNodeVariables
(
const FGraph* Graph, |
NiagaraCompilationBridge.h | ||
static bool GetGraphReferencesStaticVariables
(
const FGraph* Graph, |
NiagaraCompilationBridge.h | ||
static const FInputPin * GetInputPin
(
const FNode* Node, |
NiagaraCompilationBridge.h | ||
static TArray< const FInputPin * > GetInputPins
(
const FNode* Node |
Retrieves all input pins (excluding any add pins that may be present) | NiagaraCompilationBridge.h | |
static FNiagaraVariable GetInputVariable
(
const FInputNode* InputNode |
NiagaraCompilationBridge.h | ||
static const FOutputPin * GetLinkedOutputPin
(
const FInputPin* InputPin |
NiagaraCompilationBridge.h | ||
static FNode * GetMutableOwningNode
(
const FPin* Pin |
NiagaraCompilationBridge.h | ||
static const FEmitterNode * GetNodeAsEmitter
(
const FNode* Node |
NiagaraCompilationBridge.h | ||
static FString GetNodeClassName
(
const FNode* Node |
NiagaraCompilationBridge.h | ||
static FString GetNodeName
(
const FNode* Node |
NiagaraCompilationBridge.h | ||
static FString GetNodeTitle
(
const FNode* Node |
NiagaraCompilationBridge.h | ||
static ENiagaraScriptUsage GetOutputNodeScriptType
(
const FOutputNode* OutputNode |
NiagaraCompilationBridge.h | ||
static FGuid GetOutputNodeScriptTypeId
(
const FOutputNode* OutputNode |
NiagaraCompilationBridge.h | ||
| NiagaraCompilationBridge.h | |||
static ENiagaraScriptUsage GetOutputNodeUsage
(
const FOutputNode* OutputNode |
NiagaraCompilationBridge.h | ||
static FGuid GetOutputNodeUsageId
(
const FOutputNode* OutputNode |
NiagaraCompilationBridge.h | ||
static TArray< const FOutputPin * > GetOutputPins
(
const FNode* Node |
Retrieves all output pins (excluding both orphaned pins and add pins) | NiagaraCompilationBridge.h | |
static const TArray< FNiagaraVariable > & GetOutputVariables
(
const FOutputNode* OutputNode |
NiagaraCompilationBridge.h | ||
static const FGraph * GetOwningGraph
(
const FNode* Node |
NiagaraCompilationBridge.h | ||
static const FNode * GetOwningNode
(
const FPin* Pin |
NiagaraCompilationBridge.h | ||
static const FInputPin * GetPinAsInput
(
const FPin* Pin |
NiagaraCompilationBridge.h | ||
static FText GetPinDisplayName
(
const FPin* Pin |
NiagaraCompilationBridge.h | ||
static FText GetPinFriendlyName
(
const FPin* Pin |
NiagaraCompilationBridge.h | ||
static int32 GetPinIndexById
(
TConstArrayView< const FPin* > Pins, |
NiagaraCompilationBridge.h | ||
static TArray< const FPin * > GetPins
(
const FNode* Node |
Gets all pins assoicated with the node | NiagaraCompilationBridge.h | |
static FNiagaraTypeDefinition GetPinType
(
const FPin* Pin, |
NiagaraCompilationBridge.h | ||
static FNiagaraVariable GetPinVariable
(
const FPin* Pin, |
NiagaraCompilationBridge.h | ||
static const FOutputPin * GetSelectOutputPin
(
const FSelectNode* SelectNode, |
NiagaraCompilationBridge.h | ||
static TOptional< ENiagaraDefaultMode > GraphGetDefaultMode
(
const FGraph* Graph, |
NiagaraCompilationBridge.h | ||
static TArray< FNiagaraVariableBase > GraphGetStaticSwitchInputs
(
const FGraph* Graph |
NiagaraCompilationBridge.h | ||
static bool GraphHasParametersOfType
(
const FGraph* Graph, |
NiagaraCompilationBridge.h | ||
static bool IsCollectionValid
(
FParameterCollection Collection |
NiagaraCompilationBridge.h | ||
static bool IsGraphEmpty
(
const FGraph* Graph |
NiagaraCompilationBridge.h | ||
static FParameterCollection IsParameterCollectionParameter
(
const FParamMapHistory& ParamMapHistory, |
NiagaraCompilationBridge.h | ||
static bool IsParameterMapGet
(
const FNode* Node |
NiagaraCompilationBridge.h | ||
static bool IsParameterMapPin
(
const FPin* Pin |
NiagaraCompilationBridge.h | ||
static bool IsStaticPin
(
const FPin* Pin |
NiagaraCompilationBridge.h | ||
static bool NodeIsEnabled
(
const FNode* Node |
NiagaraCompilationBridge.h |