source file of the GNU LilyPond music typesetter
- (c) 1999--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+ (c) 1999--2001 Han-Wen Nienhuys <hanwen@cs.uu.nl>
*/
#define SPACING_SPANNER_HH
#include "spanner.hh"
+#include "spring.hh"
-class Spacing_spanner : public Spanner
+class Spacing_spanner
{
public:
- Spacing_spanner (SCM);
-
- VIRTUAL_COPY_CONS(Score_element);
- Array<Spring> do_measure (Link_array<Paper_column>) const;
-
-protected:
- virtual Array<Spring> get_springs () const;
-
- Real stem_dir_correction (Paper_column*,Paper_column*) const;
- Real default_bar_spacing (Paper_column*,Paper_column*,Moment) const;
- Real note_spacing (Paper_column*,Paper_column*,Moment) const;
- Real get_duration_space (Moment dur, Moment shortest) const;
+ static void set_interface (Grob*);
+ static void do_measure (Grob*,Link_array<Grob> const &) ;
+ static void stretch_to_regularity (Grob*, Array<Spring> *, Link_array<Grob> const &);
+ DECLARE_SCHEME_CALLBACK (set_springs, (SCM ));
+ static Real stem_dir_correction (Grob*,Grob*,Grob*) ;
+ static Real default_bar_spacing (Grob*,Grob*,Grob*,Moment) ;
+ static Real note_spacing (Grob*,Grob*,Grob*,Moment) ;
+ static Real get_duration_space (Grob*,Moment dur, Moment shortest) ;
};
#endif /* SPACING_SPANNER_HH */