LMMS
Loading...
Searching...
No Matches
lv2_options.h
Go to the documentation of this file.
1/*
2 Copyright 2012 David Robillard <http://drobilla.net>
3
4 Permission to use, copy, modify, and/or distribute this software for any
5 purpose with or without fee is hereby granted, provided that the above
6 copyright notice and this permission notice appear in all copies.
7
8 THIS SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9 WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11 ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13 ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14 OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15*/
16
17#ifndef LV2_OPTIONS_H
18#define LV2_OPTIONS_H
19
20#include <stdint.h>
21
22#include "lv2_urid.h"
23#include "lv2/lv2plug.in/ns/lv2core/lv2.h"
24
25#define LV2_OPTIONS_URI "http://lv2plug.in/ns/ext/options"
26#define LV2_OPTIONS_PREFIX LV2_OPTIONS_URI "#"
27
28#define LV2_OPTIONS__Option LV2_OPTIONS_PREFIX "Option"
29#define LV2_OPTIONS__interface LV2_OPTIONS_PREFIX "interface"
30#define LV2_OPTIONS__options LV2_OPTIONS_PREFIX "options"
31#define LV2_OPTIONS__requiredOption LV2_OPTIONS_PREFIX "requiredOption"
32#define LV2_OPTIONS__supportedOption LV2_OPTIONS_PREFIX "supportedOption"
33
34#ifdef __cplusplus
35extern "C" {
36#endif
37
66
79typedef struct _LV2_Options_Option {
85 const void* value;
87
96
100typedef struct _LV2_Options_Interface {
113 uint32_t (*get)(LV2_Handle instance,
114 LV2_Options_Option* options);
115
124 uint32_t (*set)(LV2_Handle instance,
125 const LV2_Options_Option* options);
127
128#ifdef __cplusplus
129} /* extern "C" */
130#endif
131
132#endif /* LV2_OPTIONS_H */
void * LV2_Handle
Definition lv2.h:133
LV2_Options_Context
Definition options.h:50
LV2_Options_Status
Definition options.h:98
@ LV2_OPTIONS_INSTANCE
Definition options.h:55
@ LV2_OPTIONS_PORT
Definition options.h:73
@ LV2_OPTIONS_BLANK
Definition options.h:67
@ LV2_OPTIONS_RESOURCE
Definition options.h:61
@ LV2_OPTIONS_ERR_UNKNOWN
Definition options.h:100
@ LV2_OPTIONS_ERR_BAD_SUBJECT
Definition options.h:101
@ LV2_OPTIONS_SUCCESS
Definition options.h:99
@ LV2_OPTIONS_ERR_BAD_VALUE
Definition options.h:103
@ LV2_OPTIONS_ERR_BAD_KEY
Definition options.h:102
uint32_t LV2_URID
Definition urid.h:58
LV2_Options_Context
Definition lv2_options.h:41
struct _LV2_Options_Option LV2_Options_Option
unsigned int uint32_t
Definition mid.cpp:100
Definition options.h:109
uint32_t(* get)(LV2_Handle instance, LV2_Options_Option *options)
Definition options.h:122
uint32_t(* set)(LV2_Handle instance, const LV2_Options_Option *options)
Definition options.h:133
Definition options.h:88
LV2_Options_Context context
Definition options.h:89
uint32_t size
Definition options.h:92
LV2_URID type
Definition options.h:93
const void * value
Definition options.h:94
uint32_t subject
Definition options.h:90
LV2_URID key
Definition options.h:91
Definition options.h:115
Definition options.h:94