Mercurial > hg > svapp
diff audioio/AudioGenerator.h @ 11:8dc0ae8fccdd
* Add LED button
* Add note model playback (currently assuming that value == MIDI pitch)
* Reorganise PlayParameters and move repository from ViewManager to new
PlayParameterRepository class
author | Chris Cannam |
---|---|
date | Wed, 15 Feb 2006 17:58:35 +0000 |
parents | b6dc944128da |
children | 89bb89894ad6 |
line wrap: on
line diff
--- a/audioio/AudioGenerator.h Thu Feb 09 18:01:52 2006 +0000 +++ b/audioio/AudioGenerator.h Wed Feb 15 17:58:35 2006 +0000 @@ -12,6 +12,7 @@ class Model; class ViewManager; +class NoteModel; class DenseTimeValueModel; class SparseOneDimensionalModel; class RealTimePluginInstance; @@ -86,16 +87,17 @@ }; }; - typedef std::map<SparseOneDimensionalModel *, - RealTimePluginInstance *> PluginMap; + typedef std::map<Model *, RealTimePluginInstance *> PluginMap; typedef std::set<NoteOff, NoteOff::Comparator> NoteOffSet; - typedef std::map<SparseOneDimensionalModel *, NoteOffSet> NoteOffMap; + typedef std::map<Model *, NoteOffSet> NoteOffMap; QMutex m_mutex; PluginMap m_synthMap; NoteOffMap m_noteOffs; + virtual RealTimePluginInstance *loadPlugin(QString id, QString program); + virtual size_t mixDenseTimeValueModel (DenseTimeValueModel *model, size_t startFrame, size_t frameCount, float **buffer, float gain, float pan, size_t fadeIn, size_t fadeOut); @@ -104,6 +106,10 @@ (SparseOneDimensionalModel *model, size_t startFrame, size_t frameCount, float **buffer, float gain, float pan, size_t fadeIn, size_t fadeOut); + virtual size_t mixNoteModel + (NoteModel *model, size_t startFrame, size_t frameCount, + float **buffer, float gain, float pan, size_t fadeIn, size_t fadeOut); + static const size_t m_pluginBlockSize; };