Pass Registration#
Macros to register a plugin’s passes.
Pass registration macros should be called at global scope (not within a function/method).
In order to avoid accidentally registering a pass twice, it is recommended to call registration macros from a *.cpp* file rather than a *.h* file.
Registration macros only add the pass to a list of passes to register. This is useful if you have passes defined in several **.cpp** files in your module. It is up to the module developer to call registerModulePasses() and deregisterModulePasses() to perform the actual registration.
See Passes for more pass related functionality.
Classes#
- omni::graph::exec::unstable::IPassFactory
Factory interface for creating omni::graph::exec::unstable::IPass objects.
- omni::graph::exec::unstable::IPassRegistry
Registry (database) of known omni::graph::exec::unstable::IPass objects.
- omni::graph::exec::unstable::IPassTypeRegistry
omni::graph::exec::unstable::IPassFactory registry for a particular omni::graph::exec::unstable::PassType .
Macros#
- OMNI_GRAPH_EXEC_REGISTER_GLOBAL_PASS
Adds an omni::graph::exec::unstable::IGlobalPass to a list to be registered as type omni::graph::exec::unstable::PassType::eGlobal at the module's (i.e.g DLL) startup.
- OMNI_GRAPH_EXEC_REGISTER_PARTITION_PASS
Adds an omni::graph::exec::unstable::IPartitionPass to a list to be registered as type omni::graph::exec::unstable::PassType::ePartitioning at the module's (i.e.g DLL) startup.
- OMNI_GRAPH_EXEC_REGISTER_PASS
Adds an omni::graph::exec::unstable::IPass to a list to be registered at the module's (i.e.g DLL) startup.
- OMNI_GRAPH_EXEC_REGISTER_POPULATE_PASS
Adds an omni::graph::exec::unstable::IPopulatePass to a list to be registered as type omni::graph::exec::unstable::PassType::ePopulate at the module's (i.e.g DLL) startup.
Enumerations#
- omni::graph::exec::unstable::PassType
Grouping type for different passes.
Functions#
- void omni::graph::exec::unstable::deregisterModulePasses() noexcept
Deregisters the module's omni::graph::exec::unstable::IPass factories with IPassRegistry .
- IPassRegistry * omni::graph::exec::unstable::getPassRegistry() noexcept
Returns the singleton pass registry.
- void omni::graph::exec::unstable::registerModulePasses() noexcept
Registers the module's omni::graph::exec::unstable::IPass factories with omni::graph::exec::unstable::IPassRegistry .