1 /* GStreamer
2  * Copyright (C) 1999 Erik Walthinsen <omega@cse.ogi.edu>
3  *               2001 Steve Baker <stevebaker_org@yahoo.co.uk>
4  *               2003 Andy Wingo <wingo at pobox.com>
5  *               2016 Thibault Saunier <thibault.saunier@collabora.com>
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Library General Public
9  * License as published by the Free Software Foundation; either
10  * version 2 of the License, or (at your option) any later version.
11  *
12  * This library is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15  * Library General Public License for more details.
16  *
17  * You should have received a copy of the GNU Library General Public
18  * License along with this library; if not, write to the
19  * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
20  * Boston, MA 02110-1301, USA.
21  */
22 
23 #ifndef __GST_LV2_H__
24 #define __GST_LV2_H__
25 
26 #include <lilv/lilv.h>
27 #include <gst/gst.h>
28 
29 #include "gstlv2utils.h"
30 
31 extern LilvWorld *world;
32 extern LilvNode *atom_class;
33 extern LilvNode *audio_class;
34 extern LilvNode *control_class;
35 extern LilvNode *cv_class;
36 extern LilvNode *event_class;
37 extern LilvNode *input_class;
38 extern LilvNode *output_class;
39 extern LilvNode *preset_class;
40 extern LilvNode *state_iface;
41 extern LilvNode *state_uri;
42 
43 extern LilvNode *integer_prop;
44 extern LilvNode *toggled_prop;
45 extern LilvNode *designation_pred;
46 extern LilvNode *in_place_broken_pred;
47 extern LilvNode *optional_pred;
48 extern LilvNode *group_pred;
49 extern LilvNode *supports_event_pred;
50 extern LilvNode *label_pred;
51 
52 extern LilvNode *center_role;
53 extern LilvNode *left_role;
54 extern LilvNode *right_role;
55 extern LilvNode *rear_center_role;
56 extern LilvNode *rear_left_role;
57 extern LilvNode *rear_right_role;
58 extern LilvNode *lfe_role;
59 extern LilvNode *center_left_role;
60 extern LilvNode *center_right_role;
61 extern LilvNode *side_left_role;
62 extern LilvNode *side_right_role;
63 
64 extern GstStructure *lv2_meta_all;
65 
66 void gst_lv2_filter_register_element (GstPlugin *plugin,
67                                       GstStructure * lv2_meta);
68 void gst_lv2_source_register_element (GstPlugin *plugin,
69                                       GstStructure * lv2_meta);
70 #endif /* __GST_LV2_H__ */
71