Steven Swenson / strings

Dependents:   tuner LabTest_No2

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers strings.cpp Source File

strings.cpp

00001 #include "strings.h"
00002 
00003 strings::strings() {
00004 
00005 }
00006 
00007 strings::strings(int string_num) {
00008     set_values(string_num);
00009 }
00010 
00011 strings::~strings(void) {
00012 
00013 }
00014 
00015 void strings::set_values(int string_num) {
00016     index=4;
00017     switch (string_num) {
00018         case 6:
00019             frequencies[0]=65.4;
00020             frequencies[1]=69.3;
00021             frequencies[2]=73.4;
00022             frequencies[3]=77.7;
00023             frequencies[4]=82.4;
00024             frequencies[5]=87.3;
00025             frequencies[6]=92.5;
00026             frequencies[7]=98;
00027             frequencies[8]=103.8;
00028             notes[0]="C";
00029             notes[1]="C#";
00030             notes[2]="D";
00031             notes[3]="D#";
00032             notes[4]="E";
00033             notes[5]="F";
00034             notes[6]="F#";
00035             notes[7]="G";
00036             notes[8]="G#";
00037             break;
00038 
00039         case 5:
00040             frequencies[0]=87.3;
00041             frequencies[1]=92.5;
00042             frequencies[2]=98;
00043             frequencies[3]=103.8;
00044             frequencies[4]=110;
00045             frequencies[5]=116.5;
00046             frequencies[6]=123.4;
00047             frequencies[7]=130.8;
00048             frequencies[8]=138.6;
00049             notes[0]="F";
00050             notes[1]="F#";
00051             notes[2]="G";
00052             notes[3]="G#";
00053             notes[4]="A";
00054             notes[5]="A#";
00055             notes[6]="B";
00056             notes[7]="C";
00057             notes[8]="C#";
00058             break;
00059 
00060         case 4:
00061             frequencies[0]=116.5;
00062             frequencies[1]=123.4;
00063             frequencies[2]=130.8;
00064             frequencies[3]=138.6;
00065             frequencies[4]=146.8;
00066             frequencies[5]=155.56;
00067             frequencies[6]=164.8;
00068             frequencies[7]=174.6;
00069             frequencies[8]=184.9;
00070             notes[0]="A#";
00071             notes[1]="B";
00072             notes[2]="C";
00073             notes[3]="C#";
00074             notes[4]="D";
00075             notes[5]="D#";
00076             notes[6]="E";
00077             notes[7]="F";
00078             notes[8]="F#";
00079             break;
00080 
00081         case 3:
00082             frequencies[0]=155.6;
00083             frequencies[1]=164.8;
00084             frequencies[2]=174.6;
00085             frequencies[3]=184.9;
00086             frequencies[4]=195.9;
00087             frequencies[5]=207.6;
00088             frequencies[6]=220;
00089             frequencies[7]=233.1;
00090             frequencies[8]=246.9;
00091             notes[0]="D#";
00092             notes[1]="E";
00093             notes[2]="F";
00094             notes[3]="F#";
00095             notes[4]="G";
00096             notes[5]="G#";
00097             notes[6]="A";
00098             notes[7]="A#";
00099             notes[8]="B";
00100             break;
00101 
00102         case 2:
00103             frequencies[0]=195.9;
00104             frequencies[1]=207.6;
00105             frequencies[2]=220;
00106             frequencies[3]=233.1;
00107             frequencies[4]=246.9;
00108             frequencies[5]=261.6;
00109             frequencies[6]=277.1;
00110             frequencies[7]=293.6;
00111             frequencies[8]=311.1;
00112             notes[0]="G";
00113             notes[1]="G#";
00114             notes[2]="A";
00115             notes[3]="A#";
00116             notes[4]="B";
00117             notes[5]="C";
00118             notes[6]="C#";
00119             notes[7]="D";
00120             notes[8]="D#";
00121             break;
00122 
00123         case 1:
00124             frequencies[0]=261.6;
00125             frequencies[1]=277.1;
00126             frequencies[2]=293.6;
00127             frequencies[3]=311.1;
00128             frequencies[4]=329.6;
00129             frequencies[5]=349.2;
00130             frequencies[6]=369.9;
00131             frequencies[7]=391.9;
00132             frequencies[8]=415.3;
00133             notes[0]="C";
00134             notes[1]="C#";
00135             notes[2]="D";
00136             notes[3]="D#";
00137             notes[4]="E";
00138             notes[5]="F";
00139             notes[6]="F#";
00140             notes[7]="G";
00141             notes[8]="G#";
00142             break;
00143 
00144         default:
00145             break;
00146     }
00147 }
00148 
00149 void strings::inc_index() {
00150     index++;
00151     if (index>=9)
00152         index=0;
00153 }
00154 
00155 void strings::reset_index(){
00156     index=4;
00157 }
00158 
00159 char* strings::get_note() {
00160     return notes[index];
00161 }
00162 
00163 float strings::get_freq() {
00164     return frequencies[index];
00165 }