]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/pulk-voice.hh
release: 0.0.63
[lilypond.git] / lily / include / pulk-voice.hh
1 /*
2   pulk-voice.hh -- declare Pulk_voice
3
4   source file of the LilyPond music typesetter
5
6   (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
7 */
8
9
10 #ifndef PULK_VOICE_HH
11 #define PULK_VOICE_HH
12
13 #include "proto.hh"
14 #include "lily-proto.hh"
15 #include "moment.hh"
16 #include "priorities.hh"
17 #include "pcursor.hh"
18
19 /**
20   Align requests with starting time.
21  */
22 class Pulk_voice
23 {
24     PCursor<Voice_element*> cur_;
25     Moment elt_mom_;
26     Priorities<Moment> subtle_moment_priorities_;
27     int subtle_idx_;
28     void set_subtle();
29     void next();
30 public:
31     int staff_idx_;
32
33     Moment when()const;
34     bool ok()const { return cur_.ok() ; }
35
36     Pulk_voice(Voice*, int staff_idx);
37     Array<Request*> get_req_l_arr();
38 };
39
40 #endif // PULK_VOICE_HH