Brief Descriptions of Classes in STK98, ver. 2.01
A ToolKit of Sound Synthesis Classes 
        and Instruments in C++
Perry Cook, 1995-96, free distribution for  
academic, instructional, tutorial, etc. purposes.
Please read README.txt for more information.

<--------Building Blocks---------->|<----------------Instruments------------------>

SourcSink Filters  Reverb  Non-Lin   ModalSyn    FM      Physical  Sampling   PhISM
                                     & Formant

Object-----------------------------------Instrmnt----------.  
  |     |    |       |        |    |                       |
Envelope| Filter   Reverb  BowTabl |    .------------------|---------------------.
  |     |    |       |     JetTabl |    |    |    |     |   |         |    |     |
ADSR    | OneZero  PRCRev  ReedTabl| Modal4  | FM4Op---.|   |         |    |  Shakers
        | OnePole  JCRev           |    |    |    |    ||   |         |    |     |
  ._____| TwoZero  NRev       .____| Marimba | FM4Alg3 || Plucked  Sampler |  Maraca
  |     | TwoPole             |      Vibraphn|    |    || Clarinet    |    |  Sekere
Noise   | DCBlock          LipFilt   AgogoBel| HeavyMtl|| Brass    SamplFlt|  Cabasa
  |     | BiQuad                             |         || Flute       |    |  Bamboo
SubNoise| DlineL                        .____|    .____|| Bowed     Moog1  |  Water Drops
        | DLineA                        |         |    ||                  |  Tambourine
  ._____| DLineN                     VoicForm  FM4Alg4 ||____.             |  SleighBells
  |     | FormSwep                                |    |     |             |  Guiro
RawWave |                                      PercFlut|  Plucked2         |
        |                                              |     |             |
  ._____|                                         .____|  Mandolin    .____|
  |     |                                         |    |              |
RawLoop |                                      FM4Alg5 |           DrumSynt
        |                                         |    |
  ._____|                                      Rhodey  |
  |     |                                      Wurley  |
Modulatr|                                     TubeBell |
        |                                         .____|
  ._____|                                         |    |
  |     |                                      FM4Alg6 |
SingWave|                                         |    |
        |                                      FMVoices|
  ._____|_____.                                        |
  |     |     |                                   .____|
VoicMang|   WvOut                                 |
        |     |                                FM4Alg8
  ._____|  WavWvOut                               |
  |     |  SndWvOut                            BeeThree
RawWvIn |  RTWvOut
        |  MatWvOut
  ._____|
  |
MIDIInpt


********** Instruments and Algorithms **************    
Each Class will be listed either with all UGs it uses, 
or the <<Algorithm>> of which it is a flavor.
All inherit from Instrmnt, which inherits from Object.

Plucked.cpp     Basic Plucked String      DLineA,OneZero,OnePole,Noise
Plucked2.cpp    Not so Basic Pluck        DLineL,DlineA,OneZero
Mandolin.cpp    My Own Mandolin           <<flavor of PLUCKED2>>
Bowed.cpp       Not Hideous Bowed String  DlineL,BowTabl,OnePole,BiQuad,RawWave,ADSR
Brass.cpp       Not So Bad Brass Inst.    DLineA,LipFilt,DCBlock,ADSR,RawLoop
Clarinet.cpp    Pretty Good Clarinet      DLineL,ReedTabl,OneZero,Envelope,Noise,RawLoop
Flute.cpp       Pretty Good Flute         JetTabl,DLineL,OnePole,DCBlock,Noise,ADSR,RawLoop
Modal4.cpp      4 Resonances              Envelope,RawWave,RawLoop,BiQuad,OnePole
Marimba.cpp                               <<flavor of MODAL4>>
Vibraphn.cpp                              <<flavor of MODAL4>>
Agogobel.cpp                              <<flavor of MODAL4>>
FM4Op.cpp       4 Operator FM Master      ADSR,RawLoop,TwoZero
FM4Alg3.cpp     3 Cascade w/ FB Mod.      <<flavor of FM4OP>>
FM4Alg4.cpp     Like Alg3 but diff.       <<flavor of FM4OP>>
FM4Alg5.cpp     2 Parallel Simple FMs     <<flavor of FM4OP>>
FM4Alg6.cpp     3 Carr. with 1 Mod.       <<flavor of FM4OP>>
FM4Alg8.cpp     4 Osc. Additive           <<flavor of FM4OP>>
HeavyMtl.cpp    Distorted Synth           <<flavor of FM4Alg3>>
PercFlut.cpp    Perc. Flute               <<flavor of FM4Alg4>>
Rhodey.cpp      Rhodes-Like Elec. Piano   <<flavor of FM4Alg5>>
Wurley.cpp      Wurlitz. Elec. Piano      <<flavor of FM4Alg5>>
TubeBell.cpp    Classic FM Bell           <<flavor of FM4Alg5>>
FMVoices.cpp    3-Formant Voice Synth.    <<flavor of FM4Alg6>>
BeeThree.cpp    Cheezy Organ for Paul     <<flavor of FM4Alg8>>
Sampler.cpp     Sampling Synth.           4 each ADSR, RawWave (att), RawLoop (loop), OnePole
SamplFlt.cpp    Sampler with Swept Filter <<flavor of Sampler>>
Moog1.cpp       Swept filter flavor of    <<flavor of SamplFlt>>   
VoicForm.cpp    Source/Filter Voice       Envelope,Noise,SingWave,FormSwep,OnePole,OneZero
DrumSynt.cpp    Drum Synthesizer          bunch of RawWvIn, and OnePole
Shakers.cpp     Stochastic Event Models

***********    Basic Unit Generators   **************

Master Object:  Object.cpp      For compatibility with Objective C

Source&Sink:    RawWave.cpp     Lin-Interp Wavetable, Looped or 1 Shot
                RawLoop.cpp     Lin-Interp Wavetable, Looping
                RawWvIn.cpp     Lin-Interp Wave In streaming 'device'
                Envelope.cpp    Linearly Goes to Target by Rate, + noteOn/Off
                ADSR.cpp        ADSR Flavor of Envelope
                Noise.cpp       Random Number Generator
                SubNoise.cpp    Random Numbers each N samples

Outputs:        WvOut.cpp       Output Master Class
                SndWvOut.cpp    .snd Output Class
                WavWvOut.cpp    .wav Output Class
                RTWvOut.cpp     Realtime Output Class
                MatWvOut.cpp    Matlab Matfile Output Class

Inputs:         MIDIInpt.cpp    MIDI Stream Parser Class
                
Filters:        Filter.cpp      Filter Master Class
                OneZero.cpp     One Zero Filter
                OnePole.cpp     One Pole Filter
                DCBlock.cpp     DC Blocking 1Pole/1Zero Filter
                TwoZero.cpp     Two Zero Filter
                TwoPole.cpp     Two Pole Filter
                BiQuad.cpp      2Pole/2Zero Filter
                FormSwep.cpp    Sweepable 2Pole filter, go to target by rate
                DLineL.cpp      Linearly Interpolating Delay Line
                DLineA.cpp      AllPass Interpolating Delay Line
                DLineN.cpp      Non Interpolating Delay Line

Reverb:         Reverb.cpp      Reverb Master Class
                PRCRev.cpp      2 series allpass units, 2 parallel comb filters
                JCRev.cpp       3 series allpass units, 4 parallel comb filters
                NRev.cpp        6 parallel comb filters, 3 series allpass units, ...

NonLin&Lookup:  JetTabl.cpp     Cubic Jet NonLinearity
                BowTabl.cpp     1/x^3-like Bow NonLinearity
                ReedTabl.cpp    1 break point Reed NonLinearity
                LipFilt.cpp     Pressure Controlled BiQuad with NonLin 
                                
Derived:        Modulatr.cpp    Per. and Rnd. Vibrato: RawWave,SubNoise,OnePole
                SingWave.cpp    Looping Wavetable with: Modulatr,Envelope
