plugins/SpecDesc.{cpp,h}: added first draft for SpecDesc
[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 program is free software; you can redistribute it and/or
10     modify it under the terms of the GNU General Public License as
11     published by the Free Software Foundation; either version 2 of the
12     License, or (at your option) any later version.  See the file
13     COPYING included with this distribution for more information.
14
15 */
16
17 #include "Types.h"
18
19 const char *getAubioNameForOnsetType(OnsetType t)
20 {
21     // In the same order as the enum elements in the header
22     static const char *const names[] = {
23         "energy", "specdiff", "hfc", "complex", "phase", "kl", "mkl", "specflux"
24     };
25     return names[(int)t];
26 }
27
28 const char *getAubioNameForSpecDescType(SpecDescType t)
29 {
30     // In the same order as the enum elements in the header
31     static const char *const names[] = {
32         "specflux", "centroid", "spread", "skewness", "kurtosis", "slope", "decrease", "rolloff"
33     };
34     return names[(int)t];
35 }
36
37 const char *getAubioNameForPitchType(PitchType t)
38 {
39     // In the same order as the enum elements in the header
40     static const char *const names[] = {
41         "yin", "mcomb", "schmitt", "fcomb", "yinfft"
42     };
43     return names[(int)t];
44 }
45