]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/slur.hh
release: 1.1.39
[lilypond.git] / lily / include / slur.hh
1 /*
2   slur.hh -- declare Slur
3
4   (c) 1996--1999 Han-Wen Nienhuys
5 */
6
7 #ifndef SLUR_HH
8 #define SLUR_HH
9
10 #include "bow.hh"
11 #include "rod.hh"
12
13 /**
14   A #Bow# which tries to drape itself around the stems too.
15  */
16 class Slur : public Bow
17 {
18   bool broken_edge_b ( Direction dir) const;
19   bool normal_edge_b ( Direction dir) const;
20   Drul_array<Note_column*> extrema () const; 
21
22 public:
23   Slur ();
24   VIRTUAL_COPY_CONS(Score_element);
25
26   void add_column (Note_column*);
27   
28   Link_array<Note_column> encompass_arr_;
29
30 protected:
31   virtual Array<Offset> get_encompass_offset_arr () const;
32
33   virtual Direction get_default_dir () const;
34   virtual void do_post_processing ();
35   virtual void do_add_processing ();
36   virtual void do_pre_processing ();
37   virtual void do_substitute_element_pointer (Score_element*, Score_element*);
38   Array<Rod> get_rods () const;
39 };
40
41 #endif // SLUR_HH
42
43