Deterministic data-flow graph for grid generation and explicit grid-to-point composition. 更多...
#include <GridGraph.h>
Public 成员函数 | |
| Result< void > | addNode (std::string id, std::string operation) |
| Add a reflected operation under a stable, non-empty node id. | |
| Result< void > | connect (std::string_view fromId, std::string_view toId, int inputIndex=0) |
| Connect one node output to a typed input slot. | |
| Result< void > | setNodeGrid (std::string_view id, const Grid2D &grid) |
Assign an owning copy to a grid.input node. | |
| Result< void > | setNodeInt (std::string_view id, std::string key, int value) |
| Set one integer parameter declared by the node operation. | |
| Result< void > | setNodeFloat (std::string_view id, std::string key, float value) |
| Set one floating-point parameter declared by the node operation. | |
| Result< void > | setNodeString (std::string_view id, std::string key, std::string value) |
| Set one string parameter declared by the node operation. | |
| Result< void > | setNodePointSubgraph (std::string_view id, const PointGraph &graph, std::string inputNode, std::string outputNode) |
Bind an owning PointGraph copy to a point.subgraph bridge. | |
| Result< GridGraphValue > | execute (std::string_view outputId) |
| Validate and evaluate one output into an independent owning value. | |
| Result< void > | validate (std::string_view outputId) const |
| Validate topology, required inputs and cross-graph bindings without evaluating values. | |
| void | clearCache () |
| Remove all cached node values while retaining topology and parameters. | |
| std::uint64_t | revision () const noexcept |
| Monotonic authoring revision; successful mutations increment it. | |
| std::string | serializeDefinition () const |
| Serialize topology and scalar parameters using the versioned EVPCG grid schema. | |
| Result< void > | deserializeDefinition (std::string_view definition) |
| Atomically replace this graph from a versioned definition. | |
静态 Public 成员函数 | |
| static int | operationCount () |
| Return the number of reflected operations. | |
| static std::string | operationId (int index) |
| Return a reflected operation id, or empty for an invalid index. | |
| static Result< GridGraphValueType > | operationOutputType (std::string_view operation) |
| Return a reflected operation's output kind. | |
详细描述
Deterministic data-flow graph for grid generation and explicit grid-to-point composition.
Grid nodes own dense intermediate values rather than ECS entities. Mutations invalidate the affected node and its downstream caches. point.subgraph is the first typed cross-graph bridge: it consumes a PointSet and executes an independently owned PointGraph instance.
@thread Graph-owning thread only. @reentrant Not reentrant for one graph instance.
在文件 GridGraph.h 第 35 行定义.
成员函数说明
◆ addNode()
| Result< void > eve::procgen::GridGraph::addNode | ( | std::string | id, |
| std::string | operation | ||
| ) |
Add a reflected operation under a stable, non-empty node id.
在文件 GridGraph.cpp 第 163 行定义.
引用了 eve::Conflict, eve::Diagnostic::error(), eve::Result< T >::failure(), id, eve::InvalidArgument, node, eve::NotFound, operation , 以及 eve::Result< T >::success().
被这些函数引用 deserializeDefinition() , 以及 eve::procgen::exposeGridMeshGraphs().
◆ clearCache()
| void eve::procgen::GridGraph::clearCache | ( | ) |
Remove all cached node values while retaining topology and parameters.
在文件 GridGraph.cpp 第 513 行定义.
引用了 node.
被这些函数引用 eve::procgen::exposeGridMeshGraphs().
◆ connect()
| Result< void > eve::procgen::GridGraph::connect | ( | std::string_view | fromId, |
| std::string_view | toId, | ||
| int | inputIndex = 0 |
||
| ) |
Connect one node output to a typed input slot.
在文件 GridGraph.cpp 第 176 行定义.
引用了 eve::Diagnostic::error(), eve::Result< T >::failure(), from, eve::procgen::Grid, eve::InvalidArgument, eve::NotFound, operationOutputType(), eve::procgen::PointSet, eve::Result< T >::success(), target, to , 以及 eve::TypeMismatch.
被这些函数引用 deserializeDefinition() , 以及 eve::procgen::exposeGridMeshGraphs().
◆ deserializeDefinition()
| Result< void > eve::procgen::GridGraph::deserializeDefinition | ( | std::string_view | definition | ) |
Atomically replace this graph from a versioned definition.
在文件 GridGraph.cpp 第 580 行定义.
引用了 addNode(), eve::Conflict, connect(), ended, eve::Diagnostic::error(), eve::Result< T >::failure(), found, id, input, key, kind, line, eve::NotFound, operation, eve::ParseError, setNodeFloat(), setNodeInt(), setNodeString(), eve::Result< T >::success(), target , 以及 value.
被这些函数引用 eve::procgen::exposeGridMeshGraphs().
◆ execute()
| Result< GridGraphValue > eve::procgen::GridGraph::execute | ( | std::string_view | outputId | ) |
Validate and evaluate one output into an independent owning value.
- 返回
- Grid2D or PointSet according to the selected node's reflected output type. @cost Linear in visited cells for local grid operations; nested PointGraph cost is additive.
在文件 GridGraph.cpp 第 478 行定义.
引用了 eve::Result< T >::failure() , 以及 eve::Result< T >::success().
被这些函数引用 eve::procgen::exposeGridMeshGraphs().
◆ operationCount()
|
static |
◆ operationId()
|
static |
Return a reflected operation id, or empty for an invalid index.
在文件 GridGraph.cpp 第 535 行定义.
◆ operationOutputType()
|
static |
Return a reflected operation's output kind.
在文件 GridGraph.cpp 第 539 行定义.
引用了 eve::Diagnostic::error(), eve::Result< T >::failure(), eve::NotFound, operation , 以及 eve::Result< T >::success().
被这些函数引用 connect().
◆ revision()
|
inlinenoexcept |
Monotonic authoring revision; successful mutations increment it.
在文件 GridGraph.h 第 68 行定义.
被这些函数引用 eve::procgen::exposeGridMeshGraphs().
◆ serializeDefinition()
| std::string eve::procgen::GridGraph::serializeDefinition | ( | ) | const |
Serialize topology and scalar parameters using the versioned EVPCG grid schema.
在文件 GridGraph.cpp 第 547 行定义.
引用了 input, key, node , 以及 value.
被这些函数引用 eve::procgen::exposeGridMeshGraphs().
◆ setNodeFloat()
| Result< void > eve::procgen::GridGraph::setNodeFloat | ( | std::string_view | id, |
| std::string | key, | ||
| float | value | ||
| ) |
Set one floating-point parameter declared by the node operation.
在文件 GridGraph.cpp 第 226 行定义.
引用了 eve::Diagnostic::error(), eve::Result< T >::failure(), found, eve::InvalidArgument, key, eve::NotFound, eve::Result< T >::success() , 以及 value.
被这些函数引用 deserializeDefinition() , 以及 eve::procgen::exposeGridMeshGraphs().
◆ setNodeGrid()
Assign an owning copy to a grid.input node.
在文件 GridGraph.cpp 第 196 行定义.
引用了 eve::Diagnostic::error(), eve::Result< T >::failure(), found, eve::NotFound, eve::Result< T >::success() , 以及 eve::TypeMismatch.
被这些函数引用 eve::procgen::exposeGridMeshGraphs().
◆ setNodeInt()
| Result< void > eve::procgen::GridGraph::setNodeInt | ( | std::string_view | id, |
| std::string | key, | ||
| int | value | ||
| ) |
Set one integer parameter declared by the node operation.
在文件 GridGraph.cpp 第 208 行定义.
引用了 eve::Diagnostic::error(), eve::Result< T >::failure(), found, eve::InvalidArgument, key, eve::NotFound, eve::Result< T >::success() , 以及 value.
被这些函数引用 deserializeDefinition() , 以及 eve::procgen::exposeGridMeshGraphs().
◆ setNodePointSubgraph()
| Result< void > eve::procgen::GridGraph::setNodePointSubgraph | ( | std::string_view | id, |
| const PointGraph & | graph, | ||
| std::string | inputNode, | ||
| std::string | outputNode | ||
| ) |
Bind an owning PointGraph copy to a point.subgraph bridge.
- 参数
-
inputNode Nested inputnode receiving the upstream PointSet.outputNode Nested output node to evaluate.
在文件 GridGraph.cpp 第 252 行定义.
引用了 eve::Diagnostic::error(), eve::Result< T >::failure(), found, graph, eve::InvalidArgument, eve::NotFound, eve::Result< T >::success() , 以及 eve::TypeMismatch.
被这些函数引用 eve::procgen::exposeGridMeshGraphs().
◆ setNodeString()
| Result< void > eve::procgen::GridGraph::setNodeString | ( | std::string_view | id, |
| std::string | key, | ||
| std::string | value | ||
| ) |
Set one string parameter declared by the node operation.
在文件 GridGraph.cpp 第 239 行定义.
引用了 eve::Diagnostic::error(), eve::Result< T >::failure(), found, eve::InvalidArgument, key, eve::NotFound, eve::Result< T >::success() , 以及 value.
被这些函数引用 deserializeDefinition() , 以及 eve::procgen::exposeGridMeshGraphs().
◆ validate()
| Result< void > eve::procgen::GridGraph::validate | ( | std::string_view | outputId | ) | const |
Validate topology, required inputs and cross-graph bindings without evaluating values.
在文件 GridGraph.cpp 第 485 行定义.
引用了 eve::Conflict, eve::Diagnostic::error(), eve::Result< T >::failure(), found, id, index, input, eve::NotFound , 以及 eve::Result< T >::success().
被这些函数引用 eve::procgen::exposeGridMeshGraphs().
该类的文档由以下文件生成:
- src/modules/procgen/GridGraph.h
- src/modules/procgen/GridGraph.cpp