fillInterface

Defined in carb/PluginCoreUtils.h

void fillInterface(InterfaceType &iface)

A required function that a plugin author must provide to construct an interface.

This function is called by the framework when the plugin is loaded, after calling carbOnPluginRegisterEx2. The plugin will fail to link if this function is not provided for all of the interfaces specified in the use of the CARB_PLUGIN_IMPL macro.

// Example
void fillInterface(carb::tasking::IFiberEvents& iface)
{
    using namespace carb::fibereventtest;
    iface =
    {
        notifyFiberStart,
        notifyFiberStop,
    };
}

Note

This version of the function is required when using CARB_PLUGIN_IMPL. When using CARB_PLUGIN_IMPL_EX, fillInterface(carb::Version*, void*) is used instead.

Parameters

iface – This must be a reference to an interface struct exported by your plugin. The members of this struct must be set before returning. The underlying memory for iface is allocated and owned by the plugin and previously constructed with placement new. This type will be destructed by calling the destructor explicitly immediately before the plugin is unloaded.