Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef LV2_H_INCLUDED
00025 #define LV2_H_INCLUDED
00026
00027 #include <stdint.h>
00028
00029 #ifdef __cplusplus
00030 extern "C" {
00031 #endif
00032
00033
00034
00035
00036
00109
00110
00111
00118 typedef void * LV2_Handle;
00119
00120
00121
00122
00123
00132 typedef struct _LV2_Feature {
00137 const char * URI;
00138
00147 void * data;
00148 } LV2_Feature;
00149
00150
00151
00152
00153
00158 typedef struct _LV2_Descriptor {
00159
00171 const char * URI;
00172
00196 LV2_Handle (*instantiate)(const struct _LV2_Descriptor * descriptor,
00197 double sample_rate,
00198 const char * bundle_path,
00199 const LV2_Feature *const * features);
00200
00236 void (*connect_port)(LV2_Handle instance,
00237 uint32_t port,
00238 void * data_location);
00239
00262 void (*activate)(LV2_Handle instance);
00263
00278 void (*run)(LV2_Handle instance,
00279 uint32_t sample_count);
00280
00296 void (*deactivate)(LV2_Handle instance);
00297
00307 void (*cleanup)(LV2_Handle instance);
00308
00333 const void* (*extension_data)(const char * uri);
00334
00335 } LV2_Descriptor;
00336
00337
00338
00339
00340
00366 const LV2_Descriptor * lv2_descriptor(uint32_t index);
00367
00368
00370 typedef const LV2_Descriptor *
00371 (*LV2_Descriptor_Function)(uint32_t index);
00372
00373
00374
00375
00376
00377
00378
00379
00380 #ifdef WIN32
00381 #define LV2_SYMBOL_EXPORT __declspec(dllexport)
00382 #else
00383 #define LV2_SYMBOL_EXPORT
00384 #endif
00385
00386
00387 #ifdef __cplusplus
00388 }
00389 #endif
00390
00391 #endif
00392