/[svn]/linuxsampler/trunk/src/engines/gig/Voice.h
ViewVC logotype

Diff of /linuxsampler/trunk/src/engines/gig/Voice.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 830 by persson, Sun Jan 15 18:23:11 2006 UTC revision 831 by persson, Sat Jan 28 16:55:30 2006 UTC
# Line 193  namespace LinuxSampler { namespace gig { Line 193  namespace LinuxSampler { namespace gig {
193              float getVolume();              float getVolume();
194    
195              inline float CrossfadeAttenuation(uint8_t& CrossfadeControllerValue) {              inline float CrossfadeAttenuation(uint8_t& CrossfadeControllerValue) {
196                  float att = (!pDimRgn->Crossfade.out_end) ? CrossfadeControllerValue / 127.0f /* 0,0,0,0 means no crossfade defined */                  uint8_t c = std::max(CrossfadeControllerValue, pDimRgn->AttenuationControllerThreshold);
197                            : (CrossfadeControllerValue < pDimRgn->Crossfade.in_end) ?                  float att = (!pDimRgn->Crossfade.out_end) ? c / 127.0f /* 0,0,0,0 means no crossfade defined */
198                                  ((CrossfadeControllerValue <= pDimRgn->Crossfade.in_start) ? 0.0f                            : (c < pDimRgn->Crossfade.in_end) ?
199                                  : float(CrossfadeControllerValue - pDimRgn->Crossfade.in_start) / float(pDimRgn->Crossfade.in_end - pDimRgn->Crossfade.in_start))                                  ((c <= pDimRgn->Crossfade.in_start) ? 0.0f
200                            : (CrossfadeControllerValue <= pDimRgn->Crossfade.out_start) ? 1.0f                                  : float(c - pDimRgn->Crossfade.in_start) / float(pDimRgn->Crossfade.in_end - pDimRgn->Crossfade.in_start))
201                            : (CrossfadeControllerValue < pDimRgn->Crossfade.out_end) ? float(pDimRgn->Crossfade.out_end - CrossfadeControllerValue) / float(pDimRgn->Crossfade.out_end - pDimRgn->Crossfade.out_start)                            : (c <= pDimRgn->Crossfade.out_start) ? 1.0f
202                              : (c < pDimRgn->Crossfade.out_end) ? float(pDimRgn->Crossfade.out_end - c) / float(pDimRgn->Crossfade.out_end - pDimRgn->Crossfade.out_start)
203                            : 0.0f;                            : 0.0f;
204                  return pDimRgn->InvertAttenuationController ? 1 - att : att;                  return pDimRgn->InvertAttenuationController ? 1 - att : att;
205              }              }

Legend:
Removed from v.830  
changed lines
  Added in v.831

  ViewVC Help
Powered by ViewVC