~ubuntu-branches/ubuntu/feisty/muse/feisty

« back to all changes in this revision

Viewing changes to synti/stklib/FormSwep.h

  • Committer: Bazaar Package Importer
  • Author(s): Daniel Kobras
  • Date: 2002-04-23 17:28:23 UTC
  • Revision ID: james.westby@ubuntu.com-20020423172823-w8yplzr81a759xa3
Tags: upstream-0.5.2
ImportĀ upstreamĀ versionĀ 0.5.2

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*******************************************/
 
2
/*  Sweepable Formant (2-pole)             */
 
3
/*  Filter Class, by Perry R. Cook, 1995-96*/ 
 
4
/*  See books on filters to understand     */
 
5
/*  more about how this works.  Nothing    */
 
6
/*  out of the ordinary in this version.   */
 
7
/*******************************************/
 
8
 
 
9
#if !defined(__FormSwep_h)
 
10
#define __FormSwep_h
 
11
 
 
12
#include "Filter.h"
 
13
 
 
14
class FormSwep : public Filter
 
15
{
 
16
 protected:  
 
17
  MY_FLOAT poleCoeffs[2];
 
18
  MY_FLOAT freq;
 
19
  MY_FLOAT reson;
 
20
  int dirty;
 
21
  MY_FLOAT targetFreq;
 
22
  MY_FLOAT targetReson;
 
23
  MY_FLOAT targetGain;
 
24
  MY_FLOAT currentFreq;
 
25
  MY_FLOAT currentReson;
 
26
  MY_FLOAT currentGain;
 
27
  MY_FLOAT deltaFreq;
 
28
  MY_FLOAT deltaReson;
 
29
  MY_FLOAT deltaGain;
 
30
  MY_FLOAT sweepState;
 
31
  MY_FLOAT sweepRate;
 
32
 public:
 
33
  FormSwep();
 
34
  ~FormSwep();
 
35
  void clear();
 
36
  void setPoleCoeffs(MY_FLOAT *coeffs);
 
37
  void setGain(MY_FLOAT aValue);
 
38
  void setFreqAndReson(MY_FLOAT aFreq, MY_FLOAT aReson);
 
39
  void setStates(MY_FLOAT aFreq, MY_FLOAT aReson, MY_FLOAT aGain);
 
40
  void setTargets(MY_FLOAT aFreq, MY_FLOAT aReson, MY_FLOAT aGain);
 
41
  void setSweepRate(MY_FLOAT aRate);    
 
42
  void setSweepTime(MY_FLOAT aTime);    
 
43
  MY_FLOAT tick(MY_FLOAT sample);
 
44
};
 
45
 
 
46
#endif