9.3. Plugin Factories

When its entry-point function is called, a module “registers” zero-to-many plugin factories with the application. A Plugin Factory is a C++ class that performs two tasks - it provides metadata that describes a plugin type, and it is used to create instances of that plugin type. Each plugin factory must implement the k3d::iplugin_factory interface, which is used to retrieve plugin metadata (unique identifier, human-readable name, human-readable description, etc), and either the k3d::iapplication_plugin_factory or k3d::idocument_plugin_factory interfaces, which are used to instantiate plugins.

Following is a list of plugin metadata provided via k3d::iplugin_factory: