]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/scoreline.hh
release: 0.1.11
[lilypond.git] / lily / include / scoreline.hh
1 /*
2   scoreline.hh -- part of GNU LilyPond
3
4   (c) 1996,97 Han-Wen Nienhuys
5 */
6
7 #ifndef SCORELINE_HH
8 #define SCORELINE_HH
9
10 #include "colhpos.hh"
11 #include "spanner.hh"
12
13 /// the columns of a score that form one line.
14 class Line_of_score : public Spanner 
15 {
16 public:
17   Link_array<Paper_column> cols;
18   bool error_mark_b_;
19   virtual String TeX_output_str () const;    
20     
21   DECLARE_MY_RUNTIME_TYPEINFO;
22   Line_of_score();
23     
24   void add (Score_elem *);
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   void set_breaking (Array<Col_hpositions> const&);
31
32 protected:
33   virtual void do_breakable_col_processing ();
34   virtual void break_into_pieces (bool);
35   virtual Interval do_width() const;
36   virtual void do_print() const;
37   SCORE_ELEM_CLONE(Line_of_score);
38 };
39
40 #endif
41