26#include "../TaskSystem/TaskGraphTemplate.h"
96 std::vector<ValidationMessage>&
messages);
102 std::vector<ValidationMessage>&
messages);
108 std::vector<ValidationMessage>&
messages);
114 const std::string&
msg,
115 const std::string& hint =
"");
ComponentTypeID GetComponentTypeID_Static()
Static-only validator for TaskGraphTemplate instances.
static void AddMessage(std::vector< ValidationMessage > &messages, int nodeId, NVSeverity severity, const std::string &msg, const std::string &hint="")
static void CheckUnconnectedNodes(const TaskGraphTemplate *graph, std::vector< ValidationMessage > &messages)
Flags non-EntryPoint/ExitPoint nodes with no outgoing exec connections.
static std::vector< ValidationMessage > ValidateNode(const TaskNodeDefinition *node)
Validates a single node definition.
static void CheckInfiniteLoops(const TaskGraphTemplate *graph, std::vector< ValidationMessage > &messages)
Flags cycles detected via DFS over ExecPinConnections.
static void CheckMissingSubGraphPaths(const TaskGraphTemplate *graph, std::vector< ValidationMessage > &messages)
Flags SubGraph nodes that have an empty SubGraphPath.
static std::vector< ValidationMessage > ValidateGraph(const TaskGraphTemplate *graph)
Validates every node in the graph and returns all findings.
Immutable, shareable task graph asset.
< Provides AssetID and INVALID_ASSET_ID
NVSeverity
Indicates how serious a NodeValidator finding is.
@ Info
Informational; no action required.
Full description of a single node in the task graph.
A single finding produced by NodeValidator.
int nodeId
Offending node ID; -1 for graph-level messages.
std::string hint
Optional suggestion to fix the issue.