source: level2/competencies/RobotHouse/PlaySounds.h @ 527

Revision 524, 1.5 KB checked in by KDucasse, 10 years ago (diff)
Line 
1
2//#include "SamClass.h"
3#include <iostream>
4#include <windows.h> // NAUGHTY !!!! WINDOWS ONLY HEADER!!
5
6
7      int REST = 0;
8      int GbelowC = 196;
9      int A = 220;
10      int Asharp = 233;
11      int B = 247;
12      int C = 262;
13      int Csharp = 277;
14      int D = 294;
15      int Dsharp = 311;
16      int E = 330;
17      int F = 349;
18      int Fsharp = 370;
19      int G = 392;
20      int Gsharp = 415;
21     
22      double WHOLE = 1600;
23      double HALF = WHOLE / 2;
24      double QUARTER = HALF / 2;
25      double EIGHTH = QUARTER / 2;
26      double SIXTEENTH = EIGHTH / 2;
27 
28
29class Vsounds: public SamClass
30{
31private:
32BufferedPort<Bottle> myfirst;
33
34
35Network yarp;
36public:
37
38        void SamInit(void)
39        {
40        RecognisePort("In");
41        StartModule("/Sound");
42        myfirst.open("/Sound_In"); //myPortStatus
43        myfirst.setReporter(myPortStatus);
44
45        }
46       
47       
48       
49       
50        void SamIter(void)
51        {
52
53                Bottle *b = myfirst.read(); // will wait here untill a bottle is recived
54               
55                for(int x =0;x<b->size();x=x+2)
56                {
57                        Beep(b->get(x).asDouble(),b->get(x+1).asDouble());
58                }
59
60
61
62
63        //      puts("playing sounds");
64               
65                //Beep(B,HALF);         TRAVELING MUSIC
66                //Beep(C,QUARTER);
67                //Beep(D,EIGHTH);
68                //Beep(F,QUARTER);
69
70                //Beep(F,HALF); // sounds like walking almost
71                //Beep(G,HALF);
72
73                //Beep(A,QUARTER); // quite a good sucess song
74                //Beep(D,EIGHTH);
75                //Beep(F,EIGHTH);
76                //Beep(C,QUARTER);
77                //Beep(E,EIGHTH);
78                //Beep(G,EIGHTH);
79                //Beep(E,HALF);
80                //Beep(D,HALF);
81                //yarp::os::Time::delay(2);
82        }
83};
Note: See TracBrowser for help on using the repository browser.