Functions

Collections of values/objects

Ordered collections of typed values which are fast for random access by index (i.e. More...

Functions

SLV2_API void slv2_plugins_free (SLV2World world, SLV2Plugins plugins)
SLV2_API unsigned slv2_plugins_size (SLV2Plugins plugins)
SLV2_API SLV2Plugin slv2_plugins_get_by_uri (SLV2Plugins plugins, SLV2Value uri)
SLV2_API SLV2Plugin slv2_plugins_get_at (SLV2Plugins plugins, unsigned index)
SLV2_API SLV2PluginClass slv2_plugin_classes_get_by_uri (SLV2PluginClasses classes, SLV2Value uri)
SLV2_API bool slv2_values_contains (SLV2Values values, SLV2Value value)
SLV2_API SLV2UI slv2_uis_get_by_uri (SLV2UIs list, SLV2Value uri)

Detailed Description

a fancy array).


Function Documentation

SLV2_API void slv2_plugins_free ( SLV2World  world,
SLV2Plugins  plugins 
)

Free a plugin collection.

Freeing a plugin collection does not destroy the plugins it contains (plugins are owned by the world). plugins is invalid after this call. Time = O(1)

SLV2_API unsigned slv2_plugins_size ( SLV2Plugins  plugins  ) 

Get the number of plugins in the collection.

Time = O(1)

SLV2_API SLV2Plugin slv2_plugins_get_by_uri ( SLV2Plugins  plugins,
SLV2Value  uri 
)

Get a plugin from the collection by URI.

Return value is shared (stored in plugins) and must not be freed or modified by the caller in any way.

Time = O(log2(n))

Returns:
NULL if plugin with url not found in plugins.
SLV2_API SLV2Plugin slv2_plugins_get_at ( SLV2Plugins  plugins,
unsigned  index 
)

Get a plugin from the plugins by index.

index has no significance other than as an index into this plugins. Any index not less than slv2_plugins_get_length(plugins) will return NULL, so all plugins in a plugins can be enumerated by repeated calls to this function starting with index = 0.

Time = O(1)

Returns:
NULL if index out of range.
SLV2_API SLV2PluginClass slv2_plugin_classes_get_by_uri ( SLV2PluginClasses  classes,
SLV2Value  uri 
)

Get a plugin class from the collection by URI.

Return value is shared (stored in classes) and must not be freed or modified by the caller in any way.

Time = O(log2(n))

Returns:
NULL if plugin with url not found in classes.
SLV2_API bool slv2_values_contains ( SLV2Values  values,
SLV2Value  value 
)

Return whether values contains value.

Time = O(n)

SLV2_API SLV2UI slv2_uis_get_by_uri ( SLV2UIs  list,
SLV2Value  uri 
)

Get a plugin from the list by URI.

Return value is shared (stored in list) and must not be freed or modified by the caller in any way.

Time = O(log2(n))

Returns:
NULL if plugin with url not found in list.