]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/line-of-score.hh
release: 1.1.6
[lilypond.git] / lily / include / line-of-score.hh
1 /*
2   line-of-score.hh -- part of GNU LilyPond
3
4   (c) 1996--1998 Han-Wen Nienhuys
5 */
6
7 #ifndef SCORELINE_HH
8 #define SCORELINE_HH
9
10 #include "colhpos.hh"
11 #include "spanner.hh"
12 #include "super-element.hh"
13
14 /// the columns of a score that form one line.
15 class Line_of_score : public Spanner , public Super_element
16 {
17 public:
18   Link_array<Paper_column> cols;
19   bool error_mark_b_;
20
21   
22   Line_of_score();
23     
24   void add_element (Score_element *);
25
26   /// is #c# contained in #*this#?
27   bool contains_b (Paper_column const *c) const;
28     
29   Link_array<Line_of_score> get_lines() const;
30   Line_of_score * set_breaking (Array<Column_x_positions> const&, int j) const;
31
32 protected:
33   virtual Link_array<Score_element> get_extra_dependencies () const;
34
35   virtual void do_unlink ();
36   virtual void do_junk_links ();
37
38   virtual Interval do_width() const;
39   virtual void do_print() const;
40   VIRTUAL_COPY_CONS(Score_element);
41 };
42
43 #endif
44