plugin.h | plugin.h | |||
---|---|---|---|---|
skipping to change at line 187 | skipping to change at line 187 | |||
* Return value must be freed by caller with slv2_values_free. | * Return value must be freed by caller with slv2_values_free. | |||
* | * | |||
* Time = Query | * Time = Query | |||
*/ | */ | |||
SLV2Values | SLV2Values | |||
slv2_plugin_get_value_for_subject(SLV2Plugin p, | slv2_plugin_get_value_for_subject(SLV2Plugin p, | |||
SLV2Value subject, | SLV2Value subject, | |||
SLV2URIType predicate_type, | SLV2URIType predicate_type, | |||
const char* predicate); | const char* predicate); | |||
/** Return whether a feature is supported by a plugin. | ||||
* | ||||
* This will return true if the feature is an optional or required feature | ||||
* of the plugin. | ||||
* | ||||
* Time = Query | ||||
*/ | ||||
bool | ||||
slv2_plugin_has_feature(SLV2Plugin p, | ||||
const char* feature); | ||||
/** Get the LV2 Features supported (required or optionally) by a plugin. | /** Get the LV2 Features supported (required or optionally) by a plugin. | |||
* | * | |||
* A feature is "supported" by a plugin if it is required OR optional. | * A feature is "supported" by a plugin if it is required OR optional. | |||
* | * | |||
* Since required features have special rules the host must obey, this func tion | * Since required features have special rules the host must obey, this func tion | |||
* probably shouldn't be used by normal hosts. Using slv2_plugin_get_optio nal_features | * probably shouldn't be used by normal hosts. Using slv2_plugin_get_optio nal_features | |||
* and slv2_plugin_get_required_features separately is best in most cases. | * and slv2_plugin_get_required_features separately is best in most cases. | |||
* | * | |||
* Returned value must be freed by caller with slv2_values_free. | * Returned value must be freed by caller with slv2_values_free. | |||
* | * | |||
skipping to change at line 238 | skipping to change at line 249 | |||
SLV2Values | SLV2Values | |||
slv2_plugin_get_optional_features(SLV2Plugin p); | slv2_plugin_get_optional_features(SLV2Plugin p); | |||
/** Get the number of ports on this plugin. | /** Get the number of ports on this plugin. | |||
* | * | |||
* Time = O(1) | * Time = O(1) | |||
*/ | */ | |||
uint32_t | uint32_t | |||
slv2_plugin_get_num_ports(SLV2Plugin p); | slv2_plugin_get_num_ports(SLV2Plugin p); | |||
/** Get the "template" (port signature) of this plugin. | ||||
* | ||||
* The template is intended to be all the basic information a host might | ||||
* want to know about a plugin's inputs and outputs (e.g. to determine if t | ||||
he | ||||
* plugin is appropriate for a given situation). Using this function is mu | ||||
ch, | ||||
* much faster than using the individual functions repeatedly to get the sa | ||||
me | ||||
* information (since each call results in a single query). | ||||
* | ||||
* Time = Query | ||||
*/ | ||||
SLV2Template | ||||
slv2_plugin_get_template(SLV2Plugin p); | ||||
/** Get the number of ports on this plugin of a given direction and/or type | ||||
. | ||||
* | ||||
* Use SLV2_PORT_DATA_TYPE_ANY and SLV2_PORT_DIRECTION_ANY for a wildcard. | ||||
* | ||||
* Time = O(1) | ||||
*/ | ||||
uint32_t | ||||
slv2_plugin_get_num_ports_of_type(SLV2Plugin p, | ||||
SLV2PortDirection dir, | ||||
SLV2PortDataType type); | ||||
/** Return whether or not the plugin introduces (and reports) latency. | /** Return whether or not the plugin introduces (and reports) latency. | |||
* | * | |||
* The index of the latency port can be found with slv2_plugin_get_latency_ port | * The index of the latency port can be found with slv2_plugin_get_latency_ port | |||
* ONLY if this function returns true. | * ONLY if this function returns true. | |||
* | * | |||
* Time = Query | * Time = Query | |||
*/ | */ | |||
bool | bool | |||
slv2_plugin_has_latency(SLV2Plugin p); | slv2_plugin_has_latency(SLV2Plugin p); | |||
skipping to change at line 325 | skipping to change at line 360 | |||
* | * | |||
* Returned value must be freed by caller using slv2_uis_free. | * Returned value must be freed by caller using slv2_uis_free. | |||
* | * | |||
* \param plugin The plugin to get the UIs for. | * \param plugin The plugin to get the UIs for. | |||
* | * | |||
* Time = Query | * Time = Query | |||
*/ | */ | |||
SLV2UIs | SLV2UIs | |||
slv2_plugin_get_uis(SLV2Plugin plugin); | slv2_plugin_get_uis(SLV2Plugin plugin); | |||
/** Get the full name of the plugin's author. | ||||
* | ||||
* Returns NULL if author name is not present. | ||||
* Returned value must be freed by caller. | ||||
* | ||||
* Time = Query | ||||
*/ | ||||
char* | ||||
slv2_plugin_get_author_name(SLV2Plugin plugin); | ||||
/** Get the email address of the plugin's author. | ||||
* | ||||
* Returns NULL if author email address is not present. | ||||
* Returned value must be freed by caller. | ||||
* | ||||
* Time = Query | ||||
*/ | ||||
char* | ||||
slv2_plugin_get_author_email(SLV2Plugin plugin); | ||||
/** Get the email address of the plugin's author. | ||||
* | ||||
* Returns NULL if author homepage is not present. | ||||
* Returned value must be freed by caller. | ||||
* | ||||
* Time = Query | ||||
*/ | ||||
char* | ||||
slv2_plugin_get_author_homepage(SLV2Plugin plugin); | ||||
/** @} */ | /** @} */ | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif | #endif | |||
#endif /* __SLV2_PLUGIN_H__ */ | #endif /* __SLV2_PLUGIN_H__ */ | |||
End of changes. 3 change blocks. | ||||
0 lines changed or deleted | 69 lines changed or added | |||
pluginclasses.h | pluginclasses.h | |||
---|---|---|---|---|
skipping to change at line 22 | skipping to change at line 22 | |||
* for more details. | * for more details. | |||
* | * | |||
* You should have received a copy of the GNU General Public License along | * You should have received a copy of the GNU General Public License along | |||
* with this program; if not, write to the Free Software Foundation, Inc., | * with this program; if not, write to the Free Software Foundation, Inc., | |||
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | |||
*/ | */ | |||
#ifndef __SLV2_PLUGIN_CLASSES_H__ | #ifndef __SLV2_PLUGIN_CLASSES_H__ | |||
#define __SLV2_PLUGIN_CLASSES_H__ | #define __SLV2_PLUGIN_CLASSES_H__ | |||
#include <slv2/pluginclass.h> | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
#include <slv2/pluginclass.h> | ||||
/** \addtogroup slv2_collections | /** \addtogroup slv2_collections | |||
* @{ | * @{ | |||
*/ | */ | |||
/** Get the number of plugins in the list. | /** Get the number of plugins in the list. | |||
*/ | */ | |||
unsigned | unsigned | |||
slv2_plugin_classes_size(SLV2PluginClasses list); | slv2_plugin_classes_size(SLV2PluginClasses list); | |||
/** Get a plugin class from the list by URI. | /** Get a plugin class from the list by URI. | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
plugins.h | plugins.h | |||
---|---|---|---|---|
skipping to change at line 22 | skipping to change at line 22 | |||
* for more details. | * for more details. | |||
* | * | |||
* You should have received a copy of the GNU General Public License along | * You should have received a copy of the GNU General Public License along | |||
* with this program; if not, write to the Free Software Foundation, Inc., | * with this program; if not, write to the Free Software Foundation, Inc., | |||
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | |||
*/ | */ | |||
#ifndef __SLV2_PLUGINS_H__ | #ifndef __SLV2_PLUGINS_H__ | |||
#define __SLV2_PLUGINS_H__ | #define __SLV2_PLUGINS_H__ | |||
#include <slv2/types.h> | ||||
#include <slv2/plugin.h> | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
#include <slv2/types.h> | ||||
#include <slv2/plugin.h> | ||||
/** \addtogroup slv2_collections | /** \addtogroup slv2_collections | |||
* @{ | * @{ | |||
*/ | */ | |||
/** Free a plugin list. | /** Free a plugin list. | |||
* | * | |||
* Freeing a plugin list does not destroy the plugins it contains (plugins | * Freeing a plugin list does not destroy the plugins it contains (plugins | |||
* are owned by the world). \a list is invalid after this call. | * are owned by the world). \a list is invalid after this call. | |||
*/ | */ | |||
void | void | |||
End of changes. 2 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added | |||
pluginuiinstance.h | pluginuiinstance.h | |||
---|---|---|---|---|
/* SLV2 | /* SLV2 | |||
* Copyright (C) 2007 Dave Robillard <http://drobilla.net> | * Copyright (C) 2007 Dave Robillard <http://drobilla.net> | |||
* Author: Lars Luthman | ||||
* | * | |||
* This library is free software; you can redistribute it and/or modify it | * This library is free software; you can redistribute it and/or modify it | |||
* under the terms of the GNU General Public License as published by the Fr ee | * under the terms of the GNU General Public License as published by the Fr ee | |||
* Software Foundation; either version 2 of the License, or (at your option ) | * Software Foundation; either version 2 of the License, or (at your option ) | |||
* any later version. | * any later version. | |||
* | * | |||
* This library is distributed in the hope that it will be useful, but WITH OUT | * This library is distributed in the hope that it will be useful, but WITH OUT | |||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |||
* for more details. | * for more details. | |||
End of changes. 1 change blocks. | ||||
1 lines changed or deleted | 0 lines changed or added | |||
pluginuis.h | pluginuis.h | |||
---|---|---|---|---|
skipping to change at line 22 | skipping to change at line 22 | |||
* for more details. | * for more details. | |||
* | * | |||
* You should have received a copy of the GNU General Public License along | * You should have received a copy of the GNU General Public License along | |||
* with this program; if not, write to the Free Software Foundation, Inc., | * with this program; if not, write to the Free Software Foundation, Inc., | |||
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | |||
*/ | */ | |||
#ifndef __SLV2_PLUGIN_UIS_H__ | #ifndef __SLV2_PLUGIN_UIS_H__ | |||
#define __SLV2_PLUGIN_UIS_H__ | #define __SLV2_PLUGIN_UIS_H__ | |||
#include <slv2/types.h> | ||||
#include <slv2/plugin.h> | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
#include <slv2/types.h> | ||||
#include <slv2/plugin.h> | ||||
/** \addtogroup slv2_collections | /** \addtogroup slv2_collections | |||
* | * | |||
* @{ | * @{ | |||
*/ | */ | |||
/** Free a plugin list. | /** Free a plugin list. | |||
* | * | |||
* Freeing a plugin list does not destroy the plugins it contains (plugins | * Freeing a plugin list does not destroy the plugins it contains (plugins | |||
* are owned by the world). \a list is invalid after this call. | * are owned by the world). \a list is invalid after this call. | |||
*/ | */ | |||
End of changes. 2 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added | |||
port.h | port.h | |||
---|---|---|---|---|
skipping to change at line 52 | skipping to change at line 52 | |||
const char* property); | const char* property); | |||
/** Return the LV2 port properties of a port. | /** Return the LV2 port properties of a port. | |||
* | * | |||
* Time = Query | * Time = Query | |||
*/ | */ | |||
SLV2Values | SLV2Values | |||
slv2_port_get_properties(SLV2Plugin plugin, | slv2_port_get_properties(SLV2Plugin plugin, | |||
SLV2Port port); | SLV2Port port); | |||
#if 0 | ||||
/** Return whether a port has a certain property. | /** Return whether a port has a certain property. | |||
* | * | |||
* Time = Query | * Time = Query | |||
*/ | */ | |||
bool | bool | |||
slv2_port_has_property(SLV2Plugin p, | slv2_port_has_property(SLV2Plugin p, | |||
SLV2Port port, | SLV2Port port, | |||
SLV2Value hint) | const char* property_uri); | |||
#endif | ||||
/** Get the symbol of a port given the index. | /** Get the symbol of a port given the index. | |||
* | * | |||
* The 'symbol' is a short string, a valid C identifier. | * The 'symbol' is a short string, a valid C identifier. | |||
* Returned string must be free()'d by caller. | * Returned string must be free()'d by caller. | |||
* | * | |||
* \return NULL when index is out of range | * \return NULL when index is out of range | |||
* | * | |||
* Time = Query | * Time = Query | |||
*/ | */ | |||
End of changes. 2 change blocks. | ||||
5 lines changed or deleted | 3 lines changed or added | |||
slv2.h | slv2.h | |||
---|---|---|---|---|
skipping to change at line 26 | skipping to change at line 26 | |||
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | |||
*/ | */ | |||
#ifndef __SLV2_H__ | #ifndef __SLV2_H__ | |||
#define __SLV2_H__ | #define __SLV2_H__ | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
#include <slv2/types.h> | ||||
#include <slv2/world.h> | ||||
#include <slv2/pluginclass.h> | ||||
#include <slv2/plugin.h> | #include <slv2/plugin.h> | |||
#include <slv2/pluginclass.h> | ||||
#include <slv2/plugininstance.h> | ||||
#include <slv2/plugins.h> | ||||
#include <slv2/pluginui.h> | #include <slv2/pluginui.h> | |||
#include <slv2/pluginuiinstance.h> | ||||
#include <slv2/pluginuis.h> | #include <slv2/pluginuis.h> | |||
#include <slv2/port.h> | #include <slv2/port.h> | |||
#include <slv2/plugins.h> | #include <slv2/portsignature.h> | |||
#include <slv2/pluginuiinstance.h> | #include <slv2/template.h> | |||
#include <slv2/plugininstance.h> | #include <slv2/types.h> | |||
#include <slv2/util.h> | ||||
#include <slv2/value.h> | #include <slv2/value.h> | |||
#include <slv2/values.h> | #include <slv2/values.h> | |||
#include <slv2/util.h> | #include <slv2/world.h> | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif | #endif | |||
#endif /* __SLV2_H__ */ | #endif /* __SLV2_H__ */ | |||
End of changes. 5 change blocks. | ||||
7 lines changed or deleted | 9 lines changed or added | |||
types.h | types.h | |||
---|---|---|---|---|
skipping to change at line 22 | skipping to change at line 22 | |||
* for more details. | * for more details. | |||
* | * | |||
* You should have received a copy of the GNU General Public License along | * You should have received a copy of the GNU General Public License along | |||
* with this program; if not, write to the Free Software Foundation, Inc., | * with this program; if not, write to the Free Software Foundation, Inc., | |||
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | |||
*/ | */ | |||
#ifndef __SLV2_TYPES_H__ | #ifndef __SLV2_TYPES_H__ | |||
#define __SLV2_TYPES_H__ | #define __SLV2_TYPES_H__ | |||
#include <stdbool.h> | ||||
#include <stdint.h> | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
#include <stdbool.h> | ||||
#include <stdint.h> | ||||
/** (Data) Type of a port | /** (Data) Type of a port | |||
* | * | |||
* SLV2_UNKNOWN_PORT_TYPE means the Port is not of any type SLV2 understand s | * SLV2_UNKNOWN_PORT_TYPE means the Port is not of any type SLV2 understand s | |||
* (currently Control, Audio, MIDI, and OSC). | * (currently Control, Audio, MIDI, and OSC). | |||
* | * | |||
* Further class information can be using slv2_port_get_value(p, "rdf:type" ) | * Further class information can be using slv2_port_get_value(p, "rdf:type" ) | |||
* or a custom query. | * or a custom query. | |||
*/ | */ | |||
typedef enum _SLV2PortDataType { | typedef enum _SLV2PortDataType { | |||
SLV2_PORT_DATA_TYPE_UNKNOWN, | SLV2_PORT_DATA_TYPE_UNKNOWN, | |||
skipping to change at line 72 | skipping to change at line 72 | |||
* QName: lv2:Plugin | * QName: lv2:Plugin | |||
*/ | */ | |||
typedef enum _SLV2URIType { | typedef enum _SLV2URIType { | |||
SLV2_URI, | SLV2_URI, | |||
SLV2_QNAME | SLV2_QNAME | |||
} SLV2URIType; | } SLV2URIType; | |||
/** A port on a plugin. Opaque, but valid to compare to NULL. */ | /** A port on a plugin. Opaque, but valid to compare to NULL. */ | |||
typedef struct _SLV2Port* SLV2Port; | typedef struct _SLV2Port* SLV2Port; | |||
/** The port (I/O) signature of a plugin. Opaque, but valid to compare to | ||||
NULL. */ | ||||
typedef struct _SLV2PortSignature* SLV2PortSignature; | ||||
/** A plugin. Opaque, but valid to compare to NULL. */ | /** A plugin. Opaque, but valid to compare to NULL. */ | |||
typedef struct _SLV2Plugin* SLV2Plugin; | typedef struct _SLV2Plugin* SLV2Plugin; | |||
/** A collection of plugins. Opaque, but valid to compare to NULL. */ | /** A collection of plugins. Opaque, but valid to compare to NULL. */ | |||
typedef void* SLV2Plugins; | typedef void* SLV2Plugins; | |||
/** The world. Opaque, but valid to compare to NULL. */ | /** The world. Opaque, but valid to compare to NULL. */ | |||
typedef struct _SLV2World* SLV2World; | typedef struct _SLV2World* SLV2World; | |||
/** A plugin class. Opaque, but valid to compare to NULL. */ | /** A plugin class. Opaque, but valid to compare to NULL. */ | |||
typedef struct _SLV2PluginClass* SLV2PluginClass; | typedef struct _SLV2PluginClass* SLV2PluginClass; | |||
/** A collection of plugin classes. Opaque, but valid to compare to NULL. */ | /** A collection of plugin classes. Opaque, but valid to compare to NULL. */ | |||
typedef void* SLV2PluginClasses; | typedef void* SLV2PluginClasses; | |||
/** A typed value */ | /** A typed value */ | |||
typedef struct _SLV2Value* SLV2Value; | typedef struct _SLV2Value* SLV2Value; | |||
/** A plugin template (collection of port signatures). */ | ||||
typedef void* SLV2Template; | ||||
/** A collection of typed values. */ | /** A collection of typed values. */ | |||
typedef void* SLV2Values; | typedef void* SLV2Values; | |||
/** A plugin UI */ | /** A plugin UI */ | |||
typedef struct _SLV2UI* SLV2UI; | typedef struct _SLV2UI* SLV2UI; | |||
/** A collection of plugin UIs. */ | /** A collection of plugin UIs. */ | |||
typedef void* SLV2UIs; | typedef void* SLV2UIs; | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
End of changes. 4 change blocks. | ||||
3 lines changed or deleted | 10 lines changed or added | |||
util.h | util.h | |||
---|---|---|---|---|
skipping to change at line 22 | skipping to change at line 22 | |||
* for more details. | * for more details. | |||
* | * | |||
* You should have received a copy of the GNU General Public License along | * You should have received a copy of the GNU General Public License along | |||
* with this program; if not, write to the Free Software Foundation, Inc., | * with this program; if not, write to the Free Software Foundation, Inc., | |||
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | |||
*/ | */ | |||
#ifndef __SLV2_UTIL_H__ | #ifndef __SLV2_UTIL_H__ | |||
#define __SLV2_UTIL_H__ | #define __SLV2_UTIL_H__ | |||
#include <stdarg.h> | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
#include <stdarg.h> | ||||
/** \defgroup slv2_util Utility functions | /** \defgroup slv2_util Utility functions | |||
* | * | |||
* @{ | * @{ | |||
*/ | */ | |||
/** Convert a full URI (eg file://foo/bar/baz.ttl) to a local path (e.g. /f oo/bar/baz.ttl). | /** Convert a full URI (eg file://foo/bar/baz.ttl) to a local path (e.g. /f oo/bar/baz.ttl). | |||
* | * | |||
* Return value is shared and must not be deleted by caller. | * Return value is shared and must not be deleted by caller. | |||
* \return \a uri converted to a path, or NULL on failure (URI is not local ). | * \return \a uri converted to a path, or NULL on failure (URI is not local ). | |||
*/ | */ | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
values.h | values.h | |||
---|---|---|---|---|
skipping to change at line 22 | skipping to change at line 22 | |||
* for more details. | * for more details. | |||
* | * | |||
* You should have received a copy of the GNU General Public License along | * You should have received a copy of the GNU General Public License along | |||
* with this program; if not, write to the Free Software Foundation, Inc., | * with this program; if not, write to the Free Software Foundation, Inc., | |||
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | |||
*/ | */ | |||
#ifndef __SLV2_VALUES_H__ | #ifndef __SLV2_VALUES_H__ | |||
#define __SLV2_VALUES_H__ | #define __SLV2_VALUES_H__ | |||
#include <stdbool.h> | ||||
#include <slv2/value.h> | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
#include <stdbool.h> | ||||
#include <slv2/value.h> | ||||
/** \defgroup slv2_collections Collections of values/objects | /** \defgroup slv2_collections Collections of values/objects | |||
* | * | |||
* Ordered collections of typed values which are fast for random | * Ordered collections of typed values which are fast for random | |||
* access by index (i.e. a fancy array). | * access by index (i.e. a fancy array). | |||
* | * | |||
* @{ | * @{ | |||
*/ | */ | |||
/** Allocate a new, empty SLV2Values | /** Allocate a new, empty SLV2Values | |||
*/ | */ | |||
SLV2Values | SLV2Values | |||
slv2_values_new(); | slv2_values_new(); | |||
/** Free an SLV2Values. | ||||
*/ | ||||
void | ||||
slv2_values_free(SLV2Values); | ||||
/** Get the number of elements in a string list. | /** Get the number of elements in a string list. | |||
*/ | */ | |||
unsigned | unsigned | |||
slv2_values_size(SLV2Values list); | slv2_values_size(SLV2Values list); | |||
/** Get a string from a string list at the given index. | /** Get a string from a string list at the given index. | |||
* | * | |||
* @return the element at \a index, or NULL if index is out of range. | * @return the element at \a index, or NULL if index is out of range. | |||
* | * | |||
* Time = O(1) | * Time = O(1) | |||
*/ | */ | |||
SLV2Value | SLV2Value | |||
slv2_values_get_at(SLV2Values list, unsigned index); | slv2_values_get_at(SLV2Values list, unsigned index); | |||
/** Return whether \a list contains \a string. | /** Return whether \a list contains \a value. | |||
* | * | |||
* Time = O(n) | * Time = O(n) | |||
*/ | */ | |||
bool | bool | |||
slv2_values_contains(SLV2Values list, SLV2Value value); | slv2_values_contains(SLV2Values list, SLV2Value value); | |||
/** Free a string list. | ||||
*/ | ||||
void | ||||
slv2_values_free(SLV2Values); | ||||
/** @} */ | /** @} */ | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif | #endif | |||
#endif /* __SLV2_VALUES_H__ */ | #endif /* __SLV2_VALUES_H__ */ | |||
End of changes. 5 change blocks. | ||||
9 lines changed or deleted | 9 lines changed or added | |||
world.h | world.h | |||
---|---|---|---|---|
skipping to change at line 22 | skipping to change at line 22 | |||
* for more details. | * for more details. | |||
* | * | |||
* You should have received a copy of the GNU General Public License along | * You should have received a copy of the GNU General Public License along | |||
* with this program; if not, write to the Free Software Foundation, Inc., | * with this program; if not, write to the Free Software Foundation, Inc., | |||
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | |||
*/ | */ | |||
#ifndef __SLV2_WORLD_H__ | #ifndef __SLV2_WORLD_H__ | |||
#define __SLV2_WORLD_H__ | #define __SLV2_WORLD_H__ | |||
#include <slv2/plugins.h> | ||||
#include <slv2/pluginclasses.h> | ||||
#include <librdf.h> | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
#include <slv2/plugins.h> | ||||
#include <slv2/pluginclasses.h> | ||||
#include <librdf.h> | ||||
/** \defgroup slv2_world Global library state | /** \defgroup slv2_world Global library state | |||
* | * | |||
* The "world" represents all library state, and the data found in bundles' | * The "world" represents all library state, and the data found in bundles' | |||
* manifest.ttl (ie it is an in-memory index of all things LV2 found). | * manifest.ttl (ie it is an in-memory index of all things LV2 found). | |||
* Plugins (and plugin extensions) and the LV2 specification (and LV2 | * Plugins (and plugin extensions) and the LV2 specification (and LV2 | |||
* extensions) itself can be queried from the world for use. | * extensions) itself can be queried from the world for use. | |||
* | * | |||
* Normal hosts which just want to easily load plugins by URI are strongly | * Normal hosts which just want to easily load plugins by URI are strongly | |||
* recommended to simply call \ref slv2_world_load_all to find all installe d | * recommended to simply call \ref slv2_world_load_all to find all installe d | |||
* data in the recommended way. | * data in the recommended way. | |||
End of changes. 2 change blocks. | ||||
4 lines changed or deleted | 4 lines changed or added | |||