/[svn]/linuxsampler/trunk/src/engines/common/SignalUnit.h
ViewVC logotype

Diff of /linuxsampler/trunk/src/engines/common/SignalUnit.h

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

revision 2217 by iliev, Tue Jul 26 15:51:30 2011 UTC revision 2219 by iliev, Thu Jul 28 12:35:49 2011 UTC
# Line 83  namespace LinuxSampler { Line 83  namespace LinuxSampler {
83                  Parameter(const Parameter& Prm) { Copy(Prm); }                  Parameter(const Parameter& Prm) { Copy(Prm); }
84                  void operator=(const Parameter& Prm) { Copy(Prm); }                  void operator=(const Parameter& Prm) { Copy(Prm); }
85                            
86                  virtual void Copy(const Parameter& Prm) {                  void Copy(const Parameter& Prm) {
87                      if (this == &Prm) return;                      if (this == &Prm) return;
88    
89                      pUnit = Prm.pUnit;                      pUnit = Prm.pUnit;
# Line 121  namespace LinuxSampler { Line 121  namespace LinuxSampler {
121              SignalUnit(const SignalUnit& Unit): pRack(Unit.pRack) { Copy(Unit); }              SignalUnit(const SignalUnit& Unit): pRack(Unit.pRack) { Copy(Unit); }
122              void operator=(const SignalUnit& Unit) { Copy(Unit); }              void operator=(const SignalUnit& Unit) { Copy(Unit); }
123                            
124              virtual void Copy(const SignalUnit& Unit) {              void Copy(const SignalUnit& Unit) {
125                  if (this == &Unit) return;                  if (this == &Unit) return;
126    
127                  bActive = Unit.bActive;                  bActive = Unit.bActive;
# Line 251  namespace LinuxSampler { Line 251  namespace LinuxSampler {
251               */               */
252              virtual float GetResonance() = 0;              virtual float GetResonance() = 0;
253                            
254                /** Should return value in the range [-100, 100] (L <-> R) */
255                virtual float GetPan() = 0;
256                
257              virtual float CalculateFilterCutoff(float cutoff) {              virtual float CalculateFilterCutoff(float cutoff) {
258                  cutoff *= GetFilterCutoff();                  cutoff *= GetFilterCutoff();
259                  return cutoff > 13500 ? 13500 : cutoff;                  return cutoff > 13500 ? 13500 : cutoff;
# Line 263  namespace LinuxSampler { Line 266  namespace LinuxSampler {
266              virtual float CalculateResonance(float res) {              virtual float CalculateResonance(float res) {
267                  return GetResonance() * res;                  return GetResonance() * res;
268              }              }
269                
270                /** Should return value in the range [0, 127] (L <-> R) */
271                virtual uint8_t CaluclatePan(uint8_t pan) {
272                    int p = pan + GetPan() * 0.63;
273                    if (p < 0) return 0;
274                    if (p > 127) return 127;
275                    return p;
276                }
277      };      };
278            
279      /**      /**
# Line 279  namespace LinuxSampler { Line 290  namespace LinuxSampler {
290                  Ctrl = Controller;                  Ctrl = Controller;
291              }              }
292                            
293              CCSignalUnit(const CCSignalUnit& Unit): SignalUnit(Unit) { Copy(Unit); }              CCSignalUnit(const CCSignalUnit& Unit): SignalUnit(Unit.pRack) { Copy(Unit); }
294              void operator=(const CCSignalUnit& Unit) { SignalUnit::Copy(Unit); Copy(Unit); }              void operator=(const CCSignalUnit& Unit) { Copy(Unit); }
295                            
296              virtual void Copy(const CCSignalUnit& Unit) {              void Copy(const CCSignalUnit& Unit) {
297                  Ctrl = Unit.Ctrl;                  Ctrl = Unit.Ctrl;
298                    SignalUnit::Copy(Unit);
299              }              }
300                            
301              virtual void Increment() { }              virtual void Increment() { }

Legend:
Removed from v.2217  
changed lines
  Added in v.2219

  ViewVC Help
Powered by ViewVC