![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
player 1
Dependencies: 4DGL-uLCD-SE PinDetect SparkfunAnalogJoystick mbed-rtos mbed SDFileSystem
Fork of 4180FinalLab by
Wireless 2 Player Pong game
soundBuilder.cpp
- Committer:
- rishibhargava1
- Date:
- 2016-04-24
- Revision:
- 3:591086e44bf9
File content as of revision 3:591086e44bf9:
#include "Speaker.h" #include "soundBuilder.h" Note::Note(){ setFreq(0); setLength(0); setVolume(0); } Note::Note(float freq, float dur, float vol){ setFreq(freq); setLength(dur); setVolume(vol); } void Note::setFreq(float nfreq){ freq = nfreq; } void Note::setLength(float dur){ length = dur; } void Note::setVolume(float vol){ volume = vol; } float Note::getFreq(){ return freq; } float Note::getLength(){ return length; } float Note::getVolume(){ return volume; } SoundBuilder::SoundBuilder(float freq[], float dur[], float vol[], int numNotes, Speaker *mainspeaker){ for (int i = 0; i < numNotes; i++){ song[i].setFreq(freq[i]); song[i].setLength(dur[i]); song[i].setVolume(vol[i]); } speaker = &(*mainspeaker); } void SoundBuilder::setNote(float freq, float dur, float vol, int noteNum){ song[noteNum].setFreq(freq); song[noteNum].setLength(dur); song[noteNum].setVolume(vol); } void SoundBuilder::playNotes(int start, int stop){ for (int i = start; i <= stop; i++) speaker->PlayNote(song[i].getFreq(), song[i].getLength(), song[i].getVolume()); } void SoundBuilder::playSong(){ playNotes(0, sizeof(song)/sizeof(*song)-1); } void SoundBuilder::clearSong(){ for (int i = 0; i < sizeof(song)/sizeof(*song); i++){ song[i].setFreq(0); song[i].setLength(0); song[i].setVolume(0); } }