Mercurial > hg > beaglert
annotate projects/airharp/Junction.h @ 269:ac8eb07afcf5
Oxygen text added to each render.cpp file for the default projects. Text includes project explanation from Wiki, edited in places.
Empty project added as a default project.
Doxyfile updated. Each of the project locations added to INPUT configuration option. Consider just watching the whole project file so all new projects are automatically pulled through.
| author | Robert Jack <robert.h.jack@gmail.com> | 
|---|---|
| date | Tue, 17 May 2016 15:40:16 +0100 | 
| parents | 40badaff5729 | 
| children | 
| rev | line source | 
|---|---|
| chris@164 | 1 /* | 
| chris@164 | 2 * | 
| chris@164 | 3 * Excitation Junction for two waveguides | 
| chris@164 | 4 * | 
| chris@164 | 5 * Christian Heinrichs 04/2015 | 
| chris@164 | 6 * | 
| chris@164 | 7 */ | 
| chris@164 | 8 | 
| chris@164 | 9 #ifndef JUNCTION_H_ | 
| chris@164 | 10 #define JUNCTION_H_ | 
| chris@164 | 11 | 
| chris@164 | 12 #include <cmath> | 
| chris@164 | 13 | 
| chris@164 | 14 #ifndef WG_BUFFER_SIZE | 
| chris@164 | 15 #define WG_BUFFER_SIZE 4096 | 
| chris@164 | 16 #endif | 
| chris@164 | 17 | 
| chris@164 | 18 #ifndef M_PI | 
| chris@164 | 19 #define M_PI 3.14159265358979323846264338 | 
| chris@164 | 20 #endif | 
| chris@164 | 21 | 
| chris@164 | 22 class Junction | 
| chris@164 | 23 { | 
| chris@164 | 24 | 
| chris@164 | 25 public: | 
| chris@164 | 26 | 
| chris@164 | 27 Junction(); | 
| chris@164 | 28 void setup(); | 
| chris@164 | 29 void update(float excitation, float left, float right); | 
| chris@164 | 30 float getOutput(int direction); | 
| chris@164 | 31 float getExcitationDisplacement(); | 
| chris@164 | 32 void setFrequency(float frequency); | 
| chris@164 | 33 void setPeriod(float periodInMs); | 
| chris@164 | 34 void setPluckPosition(float pluckPos); | 
| chris@164 | 35 | 
| chris@164 | 36 private: | 
| chris@164 | 37 | 
| chris@164 | 38 double _dt; | 
| chris@164 | 39 float _periodInMilliseconds; | 
| chris@164 | 40 int _periodInSamples; | 
| chris@164 | 41 | 
| chris@164 | 42 int _delay_l; | 
| chris@164 | 43 int _delay_r; | 
| chris@164 | 44 | 
| chris@164 | 45 float _buffer_l[WG_BUFFER_SIZE]; | 
| chris@164 | 46 float _buffer_r[WG_BUFFER_SIZE]; | 
| chris@164 | 47 int _readPtr; | 
| chris@164 | 48 | 
| chris@164 | 49 float _excitation; | 
| chris@164 | 50 float _lastPlectrumDisplacement; | 
| chris@164 | 51 | 
| chris@164 | 52 }; | 
| chris@164 | 53 | 
| chris@164 | 54 #endif | 
