3 |
* LinuxSampler - modular, streaming capable sampler * |
* LinuxSampler - modular, streaming capable sampler * |
4 |
* * |
* * |
5 |
* Copyright (C) 2003, 2004 by Benno Senoner and Christian Schoenebeck * |
* Copyright (C) 2003, 2004 by Benno Senoner and Christian Schoenebeck * |
6 |
|
* Copyright (C) 2005 Christian Schoenebeck * |
7 |
* * |
* * |
8 |
* This program is free software; you can redistribute it and/or modify * |
* This program is free software; you can redistribute it and/or modify * |
9 |
* it under the terms of the GNU General Public License as published by * |
* it under the terms of the GNU General Public License as published by * |
158 |
|
|
159 |
protected: |
protected: |
160 |
std::map<String,DeviceCreationParameter*> Parameters; ///< All device parameters. |
std::map<String,DeviceCreationParameter*> Parameters; ///< All device parameters. |
161 |
std::map<int,MidiInputPort*> Ports; ///< All MIDI ports. |
std::map<int,MidiInputPort*> Ports; ///< All MIDI ports. |
162 |
|
void* pSampler; ///< Sampler instance. FIXME: should actually be of type Sampler* |
163 |
|
|
164 |
/** |
/** |
165 |
* Constructor |
* Constructor |
166 |
|
* |
167 |
|
* FIXME: the pointer argument \a pSapmler should actually be of type Sampler*. |
168 |
|
* Unfortunately the bidirectional relationship between this |
169 |
|
* header and Sampler.h would clash on header file inclusion, |
170 |
|
* so that's why I had to make it of type void* here. This is |
171 |
|
* an annoying constraint of C++. |
172 |
*/ |
*/ |
173 |
MidiInputDevice(std::map<String,DeviceCreationParameter*> DriverParameters); |
MidiInputDevice(std::map<String,DeviceCreationParameter*> DriverParameters, void* pSampler); |
174 |
|
|
175 |
/** |
/** |
176 |
* Destructor |
* Destructor |
190 |
friend class ParameterActive; |
friend class ParameterActive; |
191 |
friend class ParameterPorts; |
friend class ParameterPorts; |
192 |
friend class Sampler; // allow Sampler class to destroy midi devices |
friend class Sampler; // allow Sampler class to destroy midi devices |
193 |
|
friend class MidiInputPort; // allow MidiInputPort to access pSampler |
194 |
}; |
}; |
195 |
} |
} |
196 |
|
|