]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/timing-translator.hh
release: 1.3.69
[lilypond.git] / lily / include / timing-translator.hh
1 /*
2   timing-translator.hh -- declare Timing_translator
3
4   source file of the GNU LilyPond music typesetter
5
6   (c)  1997--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
7 */
8
9
10 #ifndef TIMING_TRANSLATOR_HH
11 #define TIMING_TRANSLATOR_HH
12
13 #include "moment.hh"
14 #include "translator.hh"
15
16 #include "parray.hh"
17
18 class Timing_translator : public virtual Translator
19 {
20 public:
21   VIRTUAL_COPY_CONS(Translator);
22   Time_signature_change_req * time_signature_req_l () const;
23   Timing_translator ();
24   Link_array<Timing_req> timing_req_l_arr_;
25
26 protected: 
27   virtual void do_creation_processing ();
28   virtual bool do_try_music (Music *req_l);
29   virtual void do_process_music();
30   virtual void do_pre_move_processing();
31   virtual void do_post_move_processing();
32
33 public:
34
35   Moment measure_position () const;
36   Moment measure_length () const;  
37   void set_time_signature (int, int);
38
39 };
40 #endif // TIMING_TRANSLATOR_HH