omni::graph::exec::unstable::IGlobalPass
Defined in omni/graph/exec/unstable/IGlobalPass.h
-
class IGlobalPass : public omni::core::Generated<omni::graph::exec::unstable::IGlobalPass_abi>
Base class for global passes.
See Pass Concepts for an in-depth guide on how this object is used during graph construction.
The purpose of a global pass is to perform global transformations on the graph.
This transformation category should be considered as a last resort given its global impact on the topology which prevents threading at the pass pipeline level.
Register a global pass with OMNI_GRAPH_EXEC_REGISTER_GLOBAL_PASS().
See Passes for more pass related functionality.
- Thread Safety
Only a single global pass is active in a graph definition at a time.
Public Functions
-
inline void run(omni::core::ObjectParam<omni::graph::exec::unstable::IGraphBuilder> builder) noexcept
Called from a pass pipeline to apply global graph transformations.
The given
builder
supplies the graph definition to transform.builder
must not benullptr
.- Thread Safety
See thread safety information in interface description.
Protected Functions
-
virtual void run_abi(IGraphBuilder *builder) noexcept = 0
Called from a pass pipeline to apply global graph transformations.
The given
builder
supplies the graph definition to transform.builder
must not benullptr
.- Thread Safety
See thread safety information in interface description.