Instruments.h
Go to the documentation of this file.
1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
2 
3 /*
4  Silvet
5 
6  A Vamp plugin for note transcription.
7  Centre for Digital Music, 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 #include <vector>
17 #include <string>
18 
19 #ifndef SILVET_INSTRUMENTS_H
20 #define SILVET_INSTRUMENTS_H
21 
33 {
34 public:
39 
42 
43  int maxPolyphony; // realistic practical limit, not a theoretical one
47 
48  std::string name;
49 
50  struct Templates {
53  // templateNoteCount * templateSize
54  std::vector<std::vector<float> > data;
55  };
56 
57  std::vector<Templates> templates;
58 
59  static std::vector<InstrumentPack> listInstrumentPacks();
60 
61 private:
62  InstrumentPack(int lowest, int highest, std::string n,
63  std::vector<Templates> tt);
64 
65  friend class LiveAdapter;
66 };
67 
68 #endif
int highestNote
Definition: Instruments.h:41
Definition: Instruments.h:32
float pitchSparsity
Definition: Instruments.h:44
float sourceSparsity
Definition: Instruments.h:45
static std::vector< InstrumentPack > listInstrumentPacks()
Definition: Instruments.cpp:132
int highestNote
Definition: Instruments.h:52
Definition: LiveInstruments.h:25
int templateMaxShift
Definition: Instruments.h:37
int lowestNote
Definition: Instruments.h:40
std::vector< Templates > templates
Definition: Instruments.h:57
int lowestNote
Definition: Instruments.h:51
int maxPolyphony
Definition: Instruments.h:43
int templateNoteCount
Definition: Instruments.h:35
Definition: Instruments.h:50
std::vector< std::vector< float > > data
Definition: Instruments.h:54
std::string name
Definition: Instruments.h:48
float levelThreshold
Definition: Instruments.h:46
int templateHeight
Definition: Instruments.h:36
int templateSize
Definition: Instruments.h:38