docs.unity3d.com
    目次を表示する/隠す

    Class GraphBuilder

    Inheritance
    Object
    GraphBuilder
    Namespace: Unity.VisualScripting.Interpreter
    Syntax
    public class GraphBuilder

    Constructors

    GraphBuilder(FlowGraphContext, TranslationOptions)

    Declaration
    public GraphBuilder(FlowGraphContext mContext, TranslationOptions options = TranslationOptions.CodegenApiNodes)
    Parameters
    Type Name Description
    FlowGraphContext mContext
    TranslationOptions options

    Fields

    NodeTable

    Declaration
    public readonly Dictionary<NodeId, (INode node, PortMapper mapper)> NodeTable
    Field Value
    Type Description
    Dictionary<NodeId, (T1, T2)<INode, PortMapper>>

    Properties

    Options

    Declaration
    public TranslationOptions Options { get; }
    Property Value
    Type Description
    TranslationOptions

    UnitsToCodegen

    Declaration
    public IEnumerable<IUnit> UnitsToCodegen { get; }
    Property Value
    Type Description
    IEnumerable<IUnit>

    Methods

    AddNodeFromModel(IUnit, INode, PortMapper)

    Declaration
    public void AddNodeFromModel(IUnit nodeModel, INode node, PortMapper portToOffsetMapping)
    Parameters
    Type Name Description
    IUnit nodeModel
    INode node
    PortMapper portToOffsetMapping

    AddReflectedMember(Member)

    Declaration
    public uint AddReflectedMember(Member member)
    Parameters
    Type Name Description
    Member member
    Returns
    Type Description
    UInt32

    AddUnitToCodegen(IUnit)

    Declaration
    public void AddUnitToCodegen(IUnit unit)
    Parameters
    Type Name Description
    IUnit unit

    AddVariableUnit(UnifiedVariableUnit, BindingId)

    Declaration
    public void AddVariableUnit(UnifiedVariableUnit unifiedVariableUnit, BindingId bindingId)
    Parameters
    Type Name Description
    UnifiedVariableUnit unifiedVariableUnit
    BindingId bindingId

    AllocateDataIndex()

    Declaration
    public uint AllocateDataIndex()
    Returns
    Type Description
    UInt32

    AssignPortIndex(INode, FieldInfo, out PortDirection, out PortType, out String)

    Declaration
    public void AssignPortIndex(INode node, FieldInfo fieldInfo, out PortDirection direction, out PortType type, out string name)
    Parameters
    Type Name Description
    INode node
    FieldInfo fieldInfo
    PortDirection direction
    PortType type
    String name

    AssignPortIndex<TPort>(ref TPort)

    Declaration
    public void AssignPortIndex<TPort>(ref TPort port)
        where TPort : IPort
    Parameters
    Type Name Description
    TPort port
    Type Parameters
    Name Description
    TPort

    AutoAssignPortIndicesAndMapPorts(INode, PortMapper, Dictionary<IUnitPort, FieldInfo>)

    Assigns all ports of the node and add them all to the mapper. Any port present in the dictionary will be mapped to the unit port there. The dictionary can contain only some ports.

    Declaration
    [MustUseReturnValue]
    public INode AutoAssignPortIndicesAndMapPorts(INode inode, PortMapper mapping, Dictionary<IUnitPort, FieldInfo> portModelToRuntimeField = null)
    Parameters
    Type Name Description
    INode inode
    PortMapper mapping
    Dictionary<IUnitPort, FieldInfo> portModelToRuntimeField
    Returns
    Type Description
    INode

    AutoAssignPortIndicesAndMapPorts(IUnit, INode)

    Declaration
    public PortMapper AutoAssignPortIndicesAndMapPorts(IUnit unit, INode node)
    Parameters
    Type Name Description
    IUnit unit
    INode node
    Returns
    Type Description
    PortMapper

    BindVariableToDataIndex(BindingId, Nullable<UInt32>)

    Declaration
    public GraphBuilder.VariableHandle BindVariableToDataIndex(BindingId variableId, uint? dataIndex = null)
    Parameters
    Type Name Description
    BindingId variableId
    Nullable<UInt32> dataIndex
    Returns
    Type Description
    GraphBuilder.VariableHandle

    Build()

    Builds the runtime graph from everything added to the builder. It guarantees node ids and port ids will be sequential, even if nodes/ports have been removed.

    Declaration
    public GraphBuilder.BoltCompilationResult Build()
    Returns
    Type Description
    GraphBuilder.BoltCompilationResult

    CreateDebugData()

    Declaration
    public RuntimeGraphDebugData CreateDebugData()
    Returns
    Type Description
    RuntimeGraphDebugData

    CreateEdge(OutputDataPort, IUnitPort)

    Declaration
    public void CreateEdge(OutputDataPort outputPort, IUnitPort inputPortModel)
    Parameters
    Type Name Description
    OutputDataPort outputPort
    IUnitPort inputPortModel

    CreateEdge(IUnitPort, IUnitPort)

    Declaration
    public void CreateEdge(IUnitPort outputPortModel, IUnitPort inputPortModel)
    Parameters
    Type Name Description
    IUnitPort outputPortModel
    IUnitPort inputPortModel

    DeclareVariable(VariableType, ValueType, BindingId, String, Nullable<Value>)

    Declaration
    public GraphBuilder.VariableHandle DeclareVariable(VariableType type, ValueType valueType, BindingId bindingId, string name = null, Value? initValue = null)
    Parameters
    Type Name Description
    VariableType type
    ValueType valueType
    BindingId bindingId
    String name
    Nullable<Value> initValue
    Returns
    Type Description
    GraphBuilder.VariableHandle

    GetNextNodeId()

    Declaration
    public NodeId GetNextNodeId()
    Returns
    Type Description
    NodeId

    GetTranslatedGraphAsset(SubgraphUnit)

    Declaration
    public ScriptGraphAssetIndex GetTranslatedGraphAsset(SubgraphUnit superUnit)
    Parameters
    Type Name Description
    SubgraphUnit superUnit
    Returns
    Type Description
    ScriptGraphAssetIndex

    GetVariableDataIndex(UnifiedVariableUnit)

    Declaration
    public GraphBuilder.VariableHandle GetVariableDataIndex(UnifiedVariableUnit variableModelDeclarationModel)
    Parameters
    Type Name Description
    UnifiedVariableUnit variableModelDeclarationModel
    Returns
    Type Description
    GraphBuilder.VariableHandle

    RemoveNode(NodeId, INode)

    Declaration
    public void RemoveNode(NodeId oldNodeId, INode oldNode)
    Parameters
    Type Name Description
    NodeId oldNodeId
    INode oldNode

    Extension Methods

    XAnalyserProvider.Analyser(Object, IGraphContext)
    XAnalyserProvider.Analyser<TAnalyser>(Object, IGraphContext)
    XAnalyserProvider.Analysis(Object, IGraphContext)
    XAnalyserProvider.Analysis<TAnalysis>(Object, IGraphContext)
    XAnalyserProvider.Analyser(Object, GraphReference)
    XAnalyserProvider.Analyser<TAnalyser>(Object, GraphReference)
    XAnalyserProvider.Analysis(Object, GraphReference)
    XAnalyserProvider.Analysis<TAnalysis>(Object, GraphReference)
    XDescriptorProvider.Describe(Object)
    XDescriptorProvider.HasDescriptor(Object)
    XDescriptorProvider.Descriptor(Object)
    XDescriptorProvider.Descriptor<TDescriptor>(Object)
    XDescriptorProvider.Description(Object)
    XDescriptorProvider.Description<TDescription>(Object)
    Cloning.Clone(Object, ICloner, Boolean)
    Cloning.Clone<T>(T, ICloner, Boolean)
    Cloning.CloneViaFakeSerialization(Object)
    Cloning.CloneViaFakeSerialization<T>(T)
    ConversionUtility.IsConvertibleTo(Object, Type, Boolean)
    ConversionUtility.IsConvertibleTo<T>(Object, Boolean)
    ConversionUtility.ConvertTo(Object, Type)
    ConversionUtility.ConvertTo<T>(Object)
    TypeUtility.ToShortString(Object, Int32)
    Serialization.CloneViaSerialization<T>(T, Boolean)
    Serialization.CloneViaSerializationInto<TSource, TDestination>(TSource, ref TDestination, Boolean)
    Serialization.Serialize(Object, Boolean)
    LinqUtility.Yield<T>(T)
    UnityObjectUtility.IsUnityNull(Object)
    UnityObjectUtility.ToSafeString(Object)
    トップに戻る
    Copyright © 2023 Unity Technologies — 商標と利用規約
    • 法律関連
    • プライバシーポリシー
    • クッキー
    • 私の個人情報を販売または共有しない
    • Your Privacy Choices (Cookie Settings)