Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: AOTTrigon I2CEEPROM MCP4922 AQM0802A mbed
Fork of NuMidi401 by
FMOscillator/FMAlgorithm.h@23:deb76bdf6f03, 2015-01-31 (annotated)
- Committer:
- kb10uy
- Date:
- Sat Jan 31 10:44:08 2015 +0000
- Revision:
- 23:deb76bdf6f03
- Parent:
- 21:e3014c1bdf9c
- Child:
- 24:f93b49b4cd66
NRPN 10h xxh???
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| kb10uy | 19:f0dcf591c5dd | 1 | #pragma once |
| kb10uy | 19:f0dcf591c5dd | 2 | #include "mbed.h" |
| kb10uy | 19:f0dcf591c5dd | 3 | #include "FMOperator.h" |
| kb10uy | 23:deb76bdf6f03 | 4 | #include "AOTTrigon.h" |
| kb10uy | 19:f0dcf591c5dd | 5 | |
| kb10uy | 19:f0dcf591c5dd | 6 | class FMAlgorithmConnection |
| kb10uy | 19:f0dcf591c5dd | 7 | { |
| kb10uy | 19:f0dcf591c5dd | 8 | public: |
| kb10uy | 19:f0dcf591c5dd | 9 | FMAlgorithmConnection() { |
| kb10uy | 19:f0dcf591c5dd | 10 | target = 0; |
| kb10uy | 19:f0dcf591c5dd | 11 | source = 0; |
| kb10uy | 21:e3014c1bdf9c | 12 | allocated = false; |
| kb10uy | 19:f0dcf591c5dd | 13 | } |
| kb10uy | 19:f0dcf591c5dd | 14 | int target; |
| kb10uy | 19:f0dcf591c5dd | 15 | int source; |
| kb10uy | 21:e3014c1bdf9c | 16 | bool allocated; |
| kb10uy | 19:f0dcf591c5dd | 17 | }; |
| kb10uy | 19:f0dcf591c5dd | 18 | |
| kb10uy | 19:f0dcf591c5dd | 19 | class FMAlgorithm |
| kb10uy | 19:f0dcf591c5dd | 20 | { |
| kb10uy | 19:f0dcf591c5dd | 21 | public: |
| kb10uy | 19:f0dcf591c5dd | 22 | FMAlgorithm(); |
| kb10uy | 23:deb76bdf6f03 | 23 | FMAlgorithm(int opc, int cnc, Timer *tm, AOTTrigon *tri); |
| kb10uy | 19:f0dcf591c5dd | 24 | ~FMAlgorithm(); |
| kb10uy | 23:deb76bdf6f03 | 25 | void setConnection(int t, int s); |
| kb10uy | 23:deb76bdf6f03 | 26 | void setConnectionIndex(int id); |
| kb10uy | 23:deb76bdf6f03 | 27 | void enableCurrentConnection(); |
| kb10uy | 23:deb76bdf6f03 | 28 | void disableCurrentConnection(); |
| kb10uy | 21:e3014c1bdf9c | 29 | float calculate(); |
| kb10uy | 21:e3014c1bdf9c | 30 | void noteOn(float freq, double time); |
| kb10uy | 21:e3014c1bdf9c | 31 | void noteOff(double time); |
| kb10uy | 21:e3014c1bdf9c | 32 | |
| kb10uy | 19:f0dcf591c5dd | 33 | private: |
| kb10uy | 19:f0dcf591c5dd | 34 | int opcount; |
| kb10uy | 19:f0dcf591c5dd | 35 | int cncount; |
| kb10uy | 23:deb76bdf6f03 | 36 | int cni; |
| kb10uy | 19:f0dcf591c5dd | 37 | FMOperator **operators; |
| kb10uy | 19:f0dcf591c5dd | 38 | FMAlgorithmConnection *connections; |
| kb10uy | 21:e3014c1bdf9c | 39 | |
| kb10uy | 21:e3014c1bdf9c | 40 | float calculate(int opn); |
| kb10uy | 19:f0dcf591c5dd | 41 | }; |
