]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/grob.hh
Issue 4625/4: Move in-chord slur info to slur boundaries
[lilypond.git] / lily / include / grob.hh
index 819c86c287af033314adec15a6249e9093ad4868..5dda5112b22eef285dd3a12a3e1111e5cd13a382 100644 (file)
@@ -102,7 +102,7 @@ public:
   bool is_live () const;
 
   /* naming. */
-  string name () const;
+  std::string name () const;
 
   /* Properties */
   SCM get_property_alist_chain (SCM) const;
@@ -118,8 +118,8 @@ public:
   void internal_set_property (SCM sym, SCM val);
 
   /* messages */
-  void warning (const string&) const;
-  void programming_error (const string&) const;
+  void warning (const std::string&) const;
+  void programming_error (const std::string&) const;
 
   /* class hierarchy */
   virtual System *get_system () const;
@@ -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,13 +174,19 @@ 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 *> &);
+void uniquify (std::vector <Grob *> &);
 
 /* refpoints */
 Grob *common_refpoint_of_list (SCM elt_list, Grob *, Axis a);
-Grob *common_refpoint_of_array (vector<Grob *> const &, Grob *, Axis a);
-Grob *common_refpoint_of_array (set<Grob *> const &, Grob *, Axis a);
+Grob *common_refpoint_of_array (std::vector<Grob *> const &, Grob *, Axis a);
+Grob *common_refpoint_of_array (std::set<Grob *> const &, Grob *, Axis a);
 System *get_root_system (Grob *me);
 
 /* extents */