omni::core::OnModuleLoadFn

Defined in omni/core/ModuleExports.h

using omni::core::OnModuleLoadFn = Result(const InterfaceImplementation **out, uint32_t *outCount)

Called to load interface implementation registration information.

This function is called omni::core::ModuleGetExportsFn.

This function will never be called concurrently with any other function in the module.

The module author can assume that the module’s static initialization has occurred by the time this function is called.

The author should perform any implementation initialization in this function and return kResultSuccess. If initialization fails, an error message should be logged (via OMNI_LOG_ERROR) and an appropriate error code should be returned.

Due to potential race conditions, the module will not have access to the omni::core::ITypeFactory during this call but will have access to the logging and profiling systems. If omni::core::ITypeFactory access is needed during initialization, lazy initialization is suggested (i.e. perform initialization during the first call to createFn).

The memory pointed to by *out must remain valid until the next call to this function.