/[svn]/linuxsampler/trunk/src/engines/sfz/SfzSignalUnitRack.h
ViewVC logotype

Diff of /linuxsampler/trunk/src/engines/sfz/SfzSignalUnitRack.h

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

revision 2244 by iliev, Thu Aug 18 11:32:33 2011 UTC revision 2297 by iliev, Fri Dec 9 15:04:55 2011 UTC
# Line 66  namespace LinuxSampler { namespace sfz { Line 66  namespace LinuxSampler { namespace sfz {
66              virtual void Trigger();              virtual void Trigger();
67                            
68              void SetCCs(::sfz::Array<int>& pCC);              void SetCCs(::sfz::Array<int>& pCC);
69                void SetCCs(::sfz::Array<float>& pCC);
70              void SetCCs(ArrayList< ::sfz::CC>& cc);              void SetCCs(ArrayList< ::sfz::CC>& cc);
71                            
72              virtual void AddSmoothCC(uint8_t Controller, float Influence, short int Curve, float Smooth);              virtual void AddSmoothCC(uint8_t Controller, float Influence, short int Curve, float Smooth, float Step);
73                            
74              inline int GetCurveCount();              int GetCurveCount();
75              inline ::sfz::Curve* GetCurve(int idx);              ::sfz::Curve* GetCurve(int idx);
76                            
77              double GetSampleRate();              double GetSampleRate();
78      };      };
# Line 95  namespace LinuxSampler { namespace sfz { Line 96  namespace LinuxSampler { namespace sfz {
96              SmoothCCUnit(SfzSignalUnitRack* rack, Listener* l = NULL): CurveCCUnit(rack, l), pSmoothers(NULL) { }              SmoothCCUnit(SfzSignalUnitRack* rack, Listener* l = NULL): CurveCCUnit(rack, l), pSmoothers(NULL) { }
97              virtual ~SmoothCCUnit();              virtual ~SmoothCCUnit();
98                            
99              virtual void AddSmoothCC(uint8_t Controller, float Influence, short int Curve, float Smooth);              virtual void AddSmoothCC(uint8_t Controller, float Influence, short int Curve, float Smooth, float Step);
100              virtual void RemoveAllCCs() { CurveCCUnit::RemoveAllCCs(); pSmoothers->clear(); }              virtual void RemoveAllCCs() { CurveCCUnit::RemoveAllCCs(); pSmoothers->clear(); }
101              virtual void InitCCList(Pool<CC>* pCCPool, Pool<Smoother>* pSmootherPool);              virtual void InitCCList(Pool<CC>* pCCPool, Pool<Smoother>* pSmootherPool);
102                            
# Line 272  namespace LinuxSampler { namespace sfz { Line 273  namespace LinuxSampler { namespace sfz {
273                  SfzSignalUnit::Copy(Unit);                  SfzSignalUnit::Copy(Unit);
274              }              }
275                            
             virtual bool  Active() { return pLfoInfo->freq > 0; }  
276              virtual void  Trigger();              virtual void  Trigger();
277              virtual void  Increment();              virtual void  Increment();
278              virtual float GetLevel() { return Level; }              virtual float GetLevel() { return Level; }
# Line 316  namespace LinuxSampler { namespace sfz { Line 316  namespace LinuxSampler { namespace sfz {
316              LFOv2Unit(SfzSignalUnitRack* rack);              LFOv2Unit(SfzSignalUnitRack* rack);
317                            
318              virtual void Trigger();              virtual void Trigger();
319                virtual bool  Active() { return true; }
320      };      };
321            
322      class AmpLFOUnit: public LFOv1Unit {      class AmpLFOUnit: public LFOv1Unit {
# Line 355  namespace LinuxSampler { namespace sfz { Line 356  namespace LinuxSampler { namespace sfz {
356    
357              virtual void Trigger();              virtual void Trigger();
358    
359              /** The endpoint should be active until the volume EG is active. */              /**
360                 * The endpoint should be active until the volume EG is active.
361                 * This method determines the end of the voice playback.
362                 */
363              virtual bool Active();              virtual bool Active();
364                            
365              virtual float GetVolume();              virtual float GetVolume();
# Line 371  namespace LinuxSampler { namespace sfz { Line 375  namespace LinuxSampler { namespace sfz {
375              }              }
376                            
377              virtual float CalculateFilterCutoff(float cutoff);              virtual float CalculateFilterCutoff(float cutoff);
378                
379                float  GetInfluence(::sfz::Array< ::sfz::optional<float> >& cc);
380                float  GetInfluence(::sfz::Array< ::sfz::optional<int> >& cc);
381      };      };
382            
383            
# Line 385  namespace LinuxSampler { namespace sfz { Line 392  namespace LinuxSampler { namespace sfz {
392              PitchLFOUnit suPitchLFO;              PitchLFOUnit suPitchLFO;
393              FilLFOUnit   suFilLFO;              FilLFOUnit   suFilLFO;
394                            
395                CCUnit suEq1GainOnCC;
396                CCUnit suEq2GainOnCC;
397                CCUnit suEq3GainOnCC;
398                
399                CCUnit suEq1FreqOnCC;
400                CCUnit suEq2FreqOnCC;
401                CCUnit suEq3FreqOnCC;
402                
403                CCUnit suEq1BwOnCC;
404                CCUnit suEq2BwOnCC;
405                CCUnit suEq3BwOnCC;
406                
407              // SFZ v2              // SFZ v2
408                            
409              SmoothCCUnit suVolOnCC;              SmoothCCUnit suVolOnCC;
410                SmoothCCUnit suPitchOnCC;
411                SmoothCCUnit suCutoffOnCC;
412                SmoothCCUnit suResOnCC;
413                            
414              FixedArray<EGv2Unit*> EGs;              FixedArray<EGv2Unit*> EGs;
415                            
# Line 445  namespace LinuxSampler { namespace sfz { Line 467  namespace LinuxSampler { namespace sfz {
467              /** Invoked when the voice gone inactive. */              /** Invoked when the voice gone inactive. */
468              void Reset();              void Reset();
469                            
470                virtual void UpdateEqSettings(EqSupport* pEqSupport);
471                
472              friend class EndpointUnit;              friend class EndpointUnit;
473      };      };
474  }} // namespace LinuxSampler::sfz  }} // namespace LinuxSampler::sfz

Legend:
Removed from v.2244  
changed lines
  Added in v.2297

  ViewVC Help
Powered by ViewVC