]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/tie-engraver.hh
patch::: 1.0.7.jcn1: Hoi
[lilypond.git] / lily / include / tie-engraver.hh
1 /*
2   tie-engraver.hh -- declare Tie_engraver
3
4   source file of the GNU LilyPond music typesetter
5
6   (c)  1997--1998 Han-Wen Nienhuys <hanwen@cs.uu.nl>
7 */
8
9
10 #ifndef TIE_GRAV_HH
11 #define TIE_GRAV_HH
12
13 #include "engraver.hh"
14
15
16 /**
17    Make a (one) tie from a request.  To be used in conjunction  with
18    the Note_head_engraver.  Obsolete now that Thread context is junked.
19  */
20 class Tie_engraver : public Engraver {
21   Tie * end_tie_p_;
22   Tie * tie_p_;
23   Moment end_mom_;
24   Tie_req * req_l_;
25   Direction dir_;
26   Tie_req *end_req_l_;
27   Melodic_req * end_melodic_req_l_;
28   Melodic_req  * melodic_req_l_;
29     
30 protected:
31   virtual void do_removal_processing ();
32   virtual void acknowledge_element (Score_element_info);
33   virtual bool do_try_request (Request*);
34   virtual void do_process_requests();
35   virtual void do_post_move_processing();
36   virtual void do_pre_move_processing();
37 public:
38   TRANSLATOR_CLONE(Tie_engraver);
39   Tie_engraver();
40   DECLARE_MY_RUNTIME_TYPEINFO;
41 };
42
43 #endif // TIE_GRAV_HH