summaryrefslogtreecommitdiffstats
path: root/src/slv2_internal.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/slv2_internal.h')
-rw-r--r--src/slv2_internal.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/slv2_internal.h b/src/slv2_internal.h
index a9683c3..180f07d 100644
--- a/src/slv2_internal.h
+++ b/src/slv2_internal.h
@@ -30,6 +30,7 @@ extern "C" {
#include <slv2/pluginclasses.h>
+
/** Reference to a port on some plugin.
*/
struct _Port {
@@ -119,6 +120,26 @@ slv2_world_load_path(SLV2World world,
const char* search_path);
+typedef enum _ValueType {
+ SLV2_VALUE_URI,
+ SLV2_VALUE_STRING,
+ SLV2_VALUE_INT,
+ SLV2_VALUE_FLOAT
+} SLV2ValueType;
+
+struct _Value {
+ SLV2ValueType type;
+ char* str_val; ///< always present
+ union {
+ int int_val;
+ float float_val;
+ } val;
+};
+
+SLV2Value slv2_value_new(SLV2ValueType type, const char* val);
+void slv2_value_free(SLV2Value val);
+
+
#ifdef __cplusplus
}
#endif