载入中...
搜索中...
未找到
eve::procgen::GridGraph类 参考

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 
)

◆ deserializeDefinition()

Result< void > eve::procgen::GridGraph::deserializeDefinition ( std::string_view  definition)

◆ 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()

int eve::procgen::GridGraph::operationCount ( )
static

Return the number of reflected operations.

在文件 GridGraph.cpp 第 533 行定义.

引用了 size.

◆ operationId()

std::string eve::procgen::GridGraph::operationId ( int  index)
static

Return a reflected operation id, or empty for an invalid index.

在文件 GridGraph.cpp 第 535 行定义.

引用了 index , 以及 size.

◆ operationOutputType()

Result< GridGraphValueType > eve::procgen::GridGraph::operationOutputType ( std::string_view  operation)
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()

std::uint64_t eve::procgen::GridGraph::revision ( ) const
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()

Result< void > eve::procgen::GridGraph::setNodeGrid ( std::string_view  id,
const Grid2D &  grid 
)

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.

参数
inputNodeNested input node receiving the upstream PointSet.
outputNodeNested 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().


该类的文档由以下文件生成: