Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- Prototype for plugin accessor function.
- Plugins are discovered by hosts using RDF data (not by loading libraries).
- See http://lv2plug.in for details on the discovery process, though most
- hosts should use an existing library to implement this functionality.
- This is the simple plugin discovery API, suitable for most statically
- defined plugins. Advanced plugins that need access to their bundle during
- discovery can use lv2_lib_descriptor() instead. Plugin libraries MUST
- include a function called "lv2_descriptor" or "lv2_lib_descriptor" with
- C-style linkage, but SHOULD provide "lv2_descriptor" wherever possible.
- When it is time to load a plugin (designated by its URI), the host loads the
- plugin's library, gets the lv2_descriptor() function from it, and uses this
- function to find the LV2_Descriptor for the desired plugin. Plugins are
- accessed by index using values from 0 upwards. This function MUST return
- NULL for out of range indices, so the host can enumerate plugins by
- increasing @p index until NULL is returned.
- Note that @p index has no meaning, hosts MUST NOT depend on it remaining
- consistent between loads of the plugin library.
- */
- LV2_SYMBOL_EXPORT
- const LV2_Descriptor * lv2_descriptor(uint32_t index);
- /**
- Prototype for library accessor function.
- This is the more advanced discovery API, which allows plugin libraries to
- access their bundles during discovery, which makes it possible for plugins to
- be dynamically defined by files in their bundle. This API also has an
- explicit cleanup function, removing any need for non-portable shared library
- destructors. Simple plugins that do not require these features may use
- lv2_descriptor() instead.
- This is the entry point for a plugin library. Hosts load this symbol from
- the library and call this function to obtain a library descriptor which can
- be used to access all the contained plugins. The returned object must not
- be destroyed (using LV2_Lib_Descriptor::cleanup()) until all plugins loaded
- from that library have been destroyed.
- */
- const LV2_Lib_Descriptor *
- lv2_lib_descriptor(const char * bundle_path,
- const LV2_Feature *const * features);
Advertisement
Add Comment
Please, Sign In to add comment