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-2009 Christian Schoenebeck * |
* Copyright (C) 2005-2008 Christian Schoenebeck * |
7 |
* Copyright (C) 2009 Grigor Iliev * |
* Copyright (C) 2009-2010 Christian Schoenebeck and Grigor Iliev * |
8 |
* * |
* * |
9 |
* This program is free software; you can redistribute it and/or modify * |
* This program is free software; you can redistribute it and/or modify * |
10 |
* 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 * |
51 |
if (pLFO2) delete pLFO2; |
if (pLFO2) delete pLFO2; |
52 |
if (pLFO3) delete pLFO3; |
if (pLFO3) delete pLFO3; |
53 |
} |
} |
54 |
|
|
55 |
/** |
/** |
56 |
* Resets voice variables. Should only be called if rendering process is |
* Resets voice variables. Should only be called if rendering process is |
57 |
* suspended / not running. |
* suspended / not running. |
184 |
EGInfo egInfo = CalculateEG1ControllerInfluence(eg1controllervalue); |
EGInfo egInfo = CalculateEG1ControllerInfluence(eg1controllervalue); |
185 |
|
|
186 |
EG1.trigger ( |
EG1.trigger ( |
187 |
RgnInfo.EG1PreAttack, |
uint(RgnInfo.EG1PreAttack), |
188 |
RgnInfo.EG1Attack * egInfo.Attack, |
RgnInfo.EG1Attack * egInfo.Attack, |
189 |
RgnInfo.EG1Hold, |
RgnInfo.EG1Hold, |
190 |
RgnInfo.EG1Decay1 * egInfo.Decay * velrelease, |
RgnInfo.EG1Decay1 * egInfo.Decay * velrelease, |
191 |
RgnInfo.EG1Decay2 * egInfo.Decay * velrelease, |
RgnInfo.EG1Decay2 * egInfo.Decay * velrelease, |
192 |
RgnInfo.EG1InfiniteSustain, |
RgnInfo.EG1InfiniteSustain, |
193 |
RgnInfo.EG1Sustain, |
uint(RgnInfo.EG1Sustain), |
194 |
RgnInfo.EG1Release * egInfo.Release * velrelease, |
RgnInfo.EG1Release * egInfo.Release * velrelease, |
195 |
velocityAttenuation, |
velocityAttenuation, |
196 |
GetEngine()->SampleRate / CONFIG_DEFAULT_SUBFRAGMENT_SIZE |
GetEngine()->SampleRate / CONFIG_DEFAULT_SUBFRAGMENT_SIZE |
224 |
EGInfo egInfo = CalculateEG2ControllerInfluence(eg2controllervalue); |
EGInfo egInfo = CalculateEG2ControllerInfluence(eg2controllervalue); |
225 |
|
|
226 |
EG2.trigger ( |
EG2.trigger ( |
227 |
RgnInfo.EG2PreAttack, |
uint(RgnInfo.EG2PreAttack), |
228 |
RgnInfo.EG2Attack * egInfo.Attack, |
RgnInfo.EG2Attack * egInfo.Attack, |
229 |
false, |
false, |
230 |
RgnInfo.EG2Decay1 * egInfo.Decay * velrelease, |
RgnInfo.EG2Decay1 * egInfo.Decay * velrelease, |
231 |
RgnInfo.EG2Decay2 * egInfo.Decay * velrelease, |
RgnInfo.EG2Decay2 * egInfo.Decay * velrelease, |
232 |
RgnInfo.EG2InfiniteSustain, |
RgnInfo.EG2InfiniteSustain, |
233 |
RgnInfo.EG2Sustain, |
uint(RgnInfo.EG2Sustain), |
234 |
RgnInfo.EG2Release * egInfo.Release * velrelease, |
RgnInfo.EG2Release * egInfo.Release * velrelease, |
235 |
velocityAttenuation, |
velocityAttenuation, |
236 |
GetEngine()->SampleRate / CONFIG_DEFAULT_SUBFRAGMENT_SIZE |
GetEngine()->SampleRate / CONFIG_DEFAULT_SUBFRAGMENT_SIZE |
474 |
i = iSubFragmentEnd; |
i = iSubFragmentEnd; |
475 |
} |
} |
476 |
} |
} |
477 |
|
|
478 |
/** |
/** |
479 |
* Process given list of MIDI control change and pitch bend events for |
* Process given list of MIDI control change and pitch bend events for |
480 |
* the given time. |
* the given time. |