]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/grob.hh
Merge branch 'master' into philomelos
[lilypond.git] / lily / include / grob.hh
index 819c86c287af033314adec15a6249e9093ad4868..db51e02e73cb0a0c5ec6ce1f4e91d56d5bc69bbe 100644 (file)
@@ -137,7 +137,6 @@ public:
 
   /* interfaces */
   bool internal_has_interface (SCM intf);
-  DECLARE_GROB_INTERFACE ();
 
   /* offsets */
   void translate_axis (Real, Axis);
@@ -148,7 +147,7 @@ public:
   /* extents */
   Interval extent (Grob *refpoint, Axis) const;
   void flush_extent_cache (Axis);
-  virtual Interval pure_height (Grob *refpoint, int start_col, int end_col);
+  virtual Interval pure_y_extent (Grob *refpoint, int start, int end);
   Interval maybe_pure_extent (Grob *refpoint, Axis, bool pure, int start, int end);
 
   /* refpoints */
@@ -175,6 +174,12 @@ public:
   static SCM internal_skylines_from_element_stencils (SCM, Axis);
 };
 
+template <class T>
+inline bool has_interface(Grob *g)
+{
+  return g && g->internal_has_interface (Grob_interface<T>::interface_symbol_);
+}
+
 /* unification */
 void uniquify (vector <Grob *> &);