
Home Information Classes Download Usage Mail List Requirements Links Tutorial
#include <FM.h>
Inheritance diagram for FM:

This class controls an arbitrary number of waves and envelopes, determined via a constructor argument.
Control Change Numbers:
The basic Chowning/Stanford FM patent expired in 1995, but there exist follow-on patents, mostly assigned to Yamaha. If you are of the type who should worry about this (making money) worry away.
by Perry R. Cook and Gary P. Scavone, 1995 - 2004.
Definition at line 34 of file FM.h.
Public Member Functions | |
| FM (unsigned int operators=4) | |
| Class constructor, taking the number of wave/envelope operators to control. | |
| virtual | ~FM () |
| Class destructor. | |
| void | clear () |
| Reset and clear all wave and envelope states. | |
| void | loadWaves (const char **filenames) |
| Load the rawwave filenames in waves. | |
| virtual void | setFrequency (StkFloat frequency) |
| Set instrument parameters for a particular frequency. | |
| void | setRatio (unsigned int waveIndex, StkFloat ratio) |
| Set the frequency ratio for the specified wave. | |
| void | setGain (unsigned int waveIndex, StkFloat gain) |
| Set the gain for the specified wave. | |
| void | setModulationSpeed (StkFloat mSpeed) |
| Set the modulation speed in Hz. | |
| void | setModulationDepth (StkFloat mDepth) |
| Set the modulation depth. | |
| void | setControl1 (StkFloat cVal) |
| Set the value of control1. | |
| void | setControl2 (StkFloat cVal) |
| Set the value of control1. | |
| void | keyOn () |
| Start envelopes toward "on" targets. | |
| void | keyOff () |
| Start envelopes toward "off" targets. | |
| void | noteOff (StkFloat amplitude) |
| Stop a note with the given amplitude (speed of decay). | |
| virtual StkFloat | tick ()=0 |
| Pure virtual function ... must be defined in subclasses. | |
| virtual StkFloat * | tick (StkFloat *vector, unsigned int vectorSize)=0 |
| Computer vectorSize outputs and return them in vector. | |
| virtual StkFrames & | tick (StkFrames &frames, unsigned int channel=1)=0 |
| Fill a channel of the StkFrames object with computed outputs. | |
| virtual void | controlChange (int number, StkFloat value) |
| Perform the control change specified by number and value (0.0 - 128.0). | |
|
|
Class constructor, taking the number of wave/envelope operators to control. An StkError will be thrown if the rawwave path is incorrectly set. |
|
||||||||||||
|
Fill a channel of the StkFrames object with computed outputs.
The Reimplemented from Instrmnt. Implemented in BeeThree, FMVoices, HevyMetl, PercFlut, Rhodey, TubeBell, and Wurley. |
| The Synthesis ToolKit in C++ (STK) |
| ©1995-2004 Perry R. Cook and Gary P. Scavone. All Rights Reserved. |