public record class NodeGraphAssetA whole graph, as a file holds it.
No guide page documents this yet — the page shows what the code says about itself.
Remarks
A separate shape from NodeGraphModel, on purpose. The model is a thing with invariants — an input takes one edge, a cycle cannot be made — and enforcing those while loading half a file is not possible. The document has no invariants at all: it is what was written down, including whatever a hand edit or a bad merge left. Turning one into the other is where the checking happens, and where a file that has gone wrong produces a diagnostic rather than a half-built model.
This assembly does not choose a file format. These are [DataContract] records described by the reflection generator, so a caller writes them as YAML with Vixen.Core.Yaml or bakes them with the binary serializer, and neither parser is linked by anything that only wants to compile a graph. The same arrangement the compositor asset uses, for the same reason.
Fields and properties (7)
public int VersionThe file shape's version.
public string NameWhat the graph is called.
public GraphNodeAsset[] NodesIts nodes.
public GraphEdgeAsset[] EdgesIts edges.
public GraphGroupAsset[] GroupsIts group boxes.
public GraphCommentAsset[] CommentsIts sticky notes.
public GraphPortAsset[] InterfaceThe ports it has when another graph contains it as a node.
Used by (12)
- CommandTestsVixen.Editor.NodeGraph.Tests
- CompositorDocumentVixen.Editor.AssetEditors
- NodeGraphClipboardVixen.Editor.NodeGraph
- NodeGraphDocumentVixen.Editor.NodeGraph
- NodeGraphModelTestsVixen.Editor.NodeGraph.Tests
- NodeGraphViewVixen.Editor.NodeGraph
- PasteCommandVixen.Editor.NodeGraph
- ShaderGraphDocumentVixen.Editor.AssetEditors
- SubGraphTestsVixen.Editor.NodeGraph.Tests
- TypeRegistrationVixen.Editor.NodeGraph
- VfxDocumentVixen.Editor.AssetEditors
- VfxImporterVixen.Editor.Assets