omni::ext::IExtensionManagerHooks

Defined in omni/ext/IExtensions.h

class IExtensionManagerHooks

Extension manager subclass with all the hooks that can be installed into it.

See also

ExtensionManager::getHooks()

Public Functions

inline IHookHolderPtr createExtensionStateChangeHook(IExtensionStateChangeHook *hook, ExtensionStateChangeType type, const char *extFullName = "", const char *extDictPath = "", Order order = kDefaultOrder, const char *hookName = nullptr)

Installs a hook for extension state change.

The hook will be called for the states specified by ExtensionStateChangeType.

You can filter for extensions with specific config/dict to only be called for those. That allows to implement new configuration parameters handled by your hook.

Parameters
  • hook – The instance that will be called. The ExtensionManager will retain this object until the returned IHookHolderPtr expires

  • type – Extension state change moment to hook into (see ExtensionStateChangeType)

  • extFullName – Extension name to look for. Hook is only called for extensions with matching name. Can be empty.

  • extDictPath – Extension dictionary path to look for. Hook is only called if it is present.

  • order – Hook call order (if there are multiple).

  • hookName – Hook name for debugging and logging. Optional (may be nullptr)

Returns

a IHookHolder object. When it expires hook will be released and no longer active.

virtual IHookHolder *createExtensionStateChangeHookPtr(IExtensionStateChangeHook *hook, ExtensionStateChangeType type, const char *extFullName = "", const char *extDictPath = "", Order order = kDefaultOrder, const char *hookName = nullptr) = 0

Installs a hook for extension state change.

The hook will be called for the states specified by ExtensionStateChangeType.

You can filter for extensions with specific config/dict to only be called for those. That allows to implement new configuration parameters handled by your hook.

Parameters
  • hook – The instance that will be called. The ExtensionManager will retain this object until the returned IHookHolderPtr expires

  • type – Extension state change moment to hook into (see ExtensionStateChangeType)

  • extFullName – Extension name to look for. Hook is only called for extensions with matching name. Can be empty.

  • extDictPath – Extension dictionary path to look for. Hook is only called if it is present.

  • order – Hook call order (if there are multiple).

  • hookName – Hook name for debugging and logging. Optional (may be nullptr)

Returns

a IHookHolder object. When it expires hook will be released and no longer active.