]> git.donarmstrong.com Git - lilypond.git/blob - request.cc
release: 0.0.4
[lilypond.git] / request.cc
1 #include "request.hh"
2 #include "debug.hh"
3
4 void
5 Request::print() const    
6 {
7 #ifndef NPRINT
8     mtor << "Req{ unknown }\n";
9 #endif
10 }
11
12 Request::Request(Voice_element*v)
13 {
14     elt = v;
15 }
16
17 Note_req::Note_req(Voice_element*v)
18     : Rhythmic_req(v)
19 {
20     name = 'c';
21     octave = 0;
22     accidental = 0;
23     forceacc = false;
24 }
25
26 Rhythmic_req::Rhythmic_req(Voice_element*v)
27      :Request(v)
28 {
29     balltype = 1;
30     dots = 0;
31 }
32
33 Request::Request()
34 {
35     elt = 0;
36 }
37
38
39 Real
40 wholes(int dur, int dots)
41 {
42     Real f = 1.0/Real(dur);
43     Real delta = f;
44
45     while (dots--) {
46         delta /= 2.0;
47         f += delta;
48     }
49     return f;    
50 }
51
52 Real
53 Rhythmic_req::duration() const {    
54     return wholes( balltype,dots);
55 }
56