EffectRegistry#

Available in header <OpenMfx/Sdk/Cpp/Host/EffectRegistry>.

class OpenMfx::EffectRegistry#

The effect registry takes care of loading each .ofx file only once even if the same one is used by multiple objects.

Make sure to set a pointer to the host using setHost() prior to loading any effect library.

Public Functions

EffectRegistry()#
~EffectRegistry()#
void setHost(Host *host)#

Set the host before getting any registry.

EffectLibrary *getLibrary(const char *ofx_filepath)#

Access the global plugin registry pool. There is one registry per ofx file, and this pool ensures that the same registry is not loaded twice. For each call to get_registry, a call to release_registry must be issued eventually You must have called setHost() first

void releaseLibrary(const EffectLibrary *registry)#
void incrementLibraryReference(const EffectLibrary *library)#

Increment the reference counter of a registry. One must call releaseLibrary() as many time as this was called (additional to the call that must be issued for getLibrary).

OfxMeshEffectHandle getEffectDescriptor(const EffectLibrary *library, int effectIndex)#

The handle remains valid until releaseLibrary() is called

Public Static Functions

EffectRegistry &GetInstance()#

Returns the singleton instance. Use this rather than allocating your own pool