1 /***************************************************************************
2  *   Copyright (C) 2011 by Pere Ràfols Soler                               *
3  *   sapista2@gmail.com                                                    *
4  *                                                                         *
5  *   This program is free software; you can redistribute it and/or modify  *
6  *   it under the terms of the GNU General Public License as published by  *
7  *   the Free Software Foundation; either version 2 of the License, or     *
8  *   (at your option) any later version.                                   *
9  *                                                                         *
10  *   This program is distributed in the hope that it will be useful,       *
11  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
12  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
13  *   GNU General Public License for more details.                          *
14  *                                                                         *
15  *   You should have received a copy of the GNU General Public License     *
16  *   along with this program; if not, write to the                         *
17  *   Free Software Foundation, Inc.,                                       *
18  *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
19  ***************************************************************************/
20 
21 #ifndef EQ10Q_URIS_H
22 #define EQ10Q_URIS_H
23 
24 #define EQ_ATOM_URI "http://eq10q.sourceforge.net/atom"
25 #define EQ_SAMPLE_RATE_KEY EQ_ATOM_URI "#sampleratekey"
26 #define EQ_SAMPLE_RATE_RESPONSE EQ_ATOM_URI "#samplerate"
27 #define EQ_FFT_DATA_KEY EQ_ATOM_URI "#fftdatakey"
28 #define EQ_FFT_DATA_EVENT EQ_ATOM_URI "#fftdataevent"
29 #define EQ_FFT_ON EQ_ATOM_URI "#ffton"
30 #define EQ_FFT_OFF EQ_ATOM_URI "#fftoff"
31 #define EQ_SAMPLE_RATE_REQUEST  EQ_ATOM_URI "#sampleraterequest"
32 
33 typedef struct
34 {
35   LV2_URID atom_Object;
36   LV2_URID atom_Double;
37   LV2_URID atom_Sequence;
38   LV2_URID atom_Vector;
39   LV2_URID atom_URID;
40   LV2_URID atom_eventTransfer;
41   LV2_URID atom_sample_rate_key;
42   LV2_URID atom_sample_rate_response;
43   LV2_URID atom_fft_data_key;
44   LV2_URID atom_fft_data_event;
45   LV2_URID atom_fft_on;
46   LV2_URID atom_fft_off;
47   LV2_URID atom_sample_rate_request;
48 } Eq10qURIs;
49 
map_eq10q_uris(LV2_URID_Map * map,Eq10qURIs * uris)50 static inline void map_eq10q_uris(LV2_URID_Map* map, Eq10qURIs* uris)
51 {
52   uris->atom_Object        = map->map(map->handle, LV2_ATOM__Object);
53   uris->atom_Double        = map->map(map->handle, LV2_ATOM__Double);
54   uris->atom_Sequence      = map->map(map->handle, LV2_ATOM__Sequence);
55   uris->atom_Vector        = map->map(map->handle, LV2_ATOM__Vector);
56   uris->atom_URID          = map->map(map->handle, LV2_ATOM__URID);
57   uris->atom_eventTransfer = map->map(map->handle, LV2_ATOM__eventTransfer);
58   uris->atom_sample_rate_key =  map->map(map->handle, EQ_SAMPLE_RATE_KEY);
59   uris->atom_sample_rate_response   = map->map(map->handle, EQ_SAMPLE_RATE_RESPONSE);
60   uris->atom_fft_data_key      = map->map(map->handle, EQ_FFT_DATA_KEY);
61   uris->atom_fft_data_event      = map->map(map->handle, EQ_FFT_DATA_EVENT);
62   uris->atom_fft_on        = map->map(map->handle, EQ_FFT_ON);
63   uris->atom_fft_off       = map->map(map->handle, EQ_FFT_OFF);
64   uris->atom_sample_rate_request = map->map(map->handle, EQ_SAMPLE_RATE_REQUEST);
65 }
66 
67 #endif
68