]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/axis-group-interface.hh
simplify and optimize pure-height calculations
[lilypond.git] / lily / include / axis-group-interface.hh
index de6cd01ad7608104b6ac2eabf1df2f8678b301d1..c9b1a58eb09f8b924bcfd57b41da165a1dc100d8 100644 (file)
@@ -17,7 +17,7 @@
 struct Axis_group_interface
 {
   static SCM generic_group_extent (Grob *me, Axis a);
-  static SCM pure_group_height (Grob *me, int start, int end);
+  static Interval pure_group_height (Grob *me, int start, int end);
   DECLARE_SCHEME_CALLBACK (width, (SCM smob));
   DECLARE_SCHEME_CALLBACK (calc_x_common, (SCM smob));
   DECLARE_SCHEME_CALLBACK (calc_y_common, (SCM smob));
@@ -27,13 +27,11 @@ struct Axis_group_interface
   DECLARE_SCHEME_CALLBACK (combine_skylines, (SCM smob));
   DECLARE_SCHEME_CALLBACK (calc_max_stretch, (SCM smob));
   DECLARE_SCHEME_CALLBACK (print, (SCM smob));
+  DECLARE_SCHEME_CALLBACK (adjacent_pure_heights, (SCM));
   static Interval relative_group_extent (vector<Grob*> const &list,
                                         Grob *common, Axis);
-  static Interval relative_pure_height (Grob *me, vector<Grob*> const &list,
-                                       Grob *common, int start, int end,
-                                       bool use_cache);
-  static Interval cached_pure_height (Grob *me, vector<Grob*> const &list,
-                                     Grob *common, int, int);
+  static Interval relative_pure_height (Grob *me, int start, int end);
+  static Interval cached_pure_height (Grob *me, int, int);
 
   static Grob *calc_pure_elts_and_common (Grob*);
   static Skyline_pair skyline_spacing (Grob *me, vector<Grob*> elements);