]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/break-algorithm.hh
GCC 4 fix.
[lilypond.git] / lily / include / break-algorithm.hh
index e4e6590f07dce95483df5dfc1811f8ff40ddbdf8..e3cf8c115a8f2caa832d82b236b39a924e911d6a 100644 (file)
@@ -1,44 +1,38 @@
 /*
-  break-algorithm.hh -- declare  Break_algorithm
+  break-algorithm.hh -- declare Break_algorithm
 
   source file of the GNU LilyPond music typesetter
 
-  (c) 1996--2004 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+  (c) 1996--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
 */
 
-
 #ifndef BREAK_HH
 #define BREAK_HH
 
 #include "interval.hh"
 #include "column-x-positions.hh"
 
-
 /** Class representation of an algorithm which decides where to put
-  the column, and where to break lines.
+    the column, and where to break lines.
 
-  JUNKME.
-  
-  */
-class Break_algorithm {
+    JUNKME.
+*/
+class Break_algorithm
+{
 protected:
   Paper_score *pscore_;
   Real linewidth_;
 
-  Link_array<Grob> find_breaks () const;
-  Array<int> find_break_indices () const;
-  void solve_line (Column_x_positions*) const;
-  bool feasible (Link_array<Grob> const &) const;
-
-  Simple_spacer_wrapper* generate_spacing_problem (Link_array<Grob> const &, Interval) const;
-
-  virtual Array<Column_x_positions> do_solve () const= 0;
+  vector<Grob*> find_breaks () const;
+  void solve_line (Column_x_positions *) const;
+  bool feasible (vector<Grob*> const &) const;
 
 public:
-  Simple_spacer* (*get_line_spacer) ();
+  virtual ~Break_algorithm ();
+  Simple_spacer *(*get_line_spacer) ();
   Break_algorithm ();
-  void set_pscore (Paper_score*);
-  Array<Column_x_positions> solve () const;
+  void set_pscore (Paper_score *);
+  virtual vector<Column_x_positions> solve ();
 };
 
 #endif // BREAK_HH