.travis.yml: fix environment
[vamp-aubio-plugins.git] / plugins / Types.cpp
1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*-  vi:set ts=8 sts=4 sw=4: */
2
3 /*
4     Vamp feature extraction plugins using Paul Brossier's Aubio library.
5
6     Centre for Digital Music, Queen Mary, University of London.
7     This file copyright 2012 Queen Mary, University of London.
8     
9     This file is part of vamp-aubio-plugins.
10
11     vamp-aubio is free software: you can redistribute it and/or modify
12     it under the terms of the GNU General Public License as published by
13     the Free Software Foundation, either version 3 of the License, or
14     (at your option) any later version.
15
16     vamp-aubio is distributed in the hope that it will be useful,
17     but WITHOUT ANY WARRANTY; without even the implied warranty of
18     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19     GNU General Public License for more details.
20
21     You should have received a copy of the GNU General Public License
22     along with aubio.  If not, see <http://www.gnu.org/licenses/>.
23
24 */
25
26 #include "Types.h"
27
28 const char *getAubioNameForOnsetType(OnsetType t)
29 {
30     // In the same order as the enum elements in the header
31     static const char *const names[] = {
32         "energy", "specdiff", "hfc", "complex", "phase", "kl", "mkl", "specflux"
33     };
34     return names[(int)t];
35 }
36
37 const char *getAubioNameForSpecDescType(SpecDescType t)
38 {
39     // In the same order as the enum elements in the header
40     static const char *const names[] = {
41         "specflux", "centroid", "spread", "skewness", "kurtosis", "slope", "decrease", "rolloff"
42     };
43     return names[(int)t];
44 }
45
46 const char *getAubioNameForPitchType(PitchType t)
47 {
48     // In the same order as the enum elements in the header
49     static const char *const names[] = {
50         "yin", "mcomb", "schmitt", "fcomb", "yinfft"
51     };
52     return names[(int)t];
53 }
54