]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/staff-side.hh
release: 0.1.46
[lilypond.git] / lily / include / staff-side.hh
index d25d109d22ecff81e5b70b102abde7026ee89b74..1720722284c0c0edcaff7f258d853ca72b5d3ab1 100644 (file)
 #define STAFF_SIDE_HH
 
 #include "score-elem.hh"
+#include "interval.hh"
+#include "direction.hh"
 
-/// A symbol which sits along  the staff
-class Staff_side : virtual Score_elem {
-    Link_array<Score_elem> support_l_arr_;
-    int staff_size_i_;
-    Interval support_height()const;
-    Staff_symbol* staff_sym_l_;
+/** A symbol which sits along a staff.
 
-    void read_staff_sym();
+  */
+class Staff_side : virtual Score_elem
+{
 public:
 
-    /**
-      Vertical dir of symbol relative to staff. -1 = below staff?
-      */
-    int dir_i_;
+  /**
+    Vertical dir of symbol relative to staff. -1 = below staff?
+    */
+  Direction dir_;
+  Interval sym_int_;
     
-    /// follow the support inside the staff?
-    bool inside_staff_b_;
+  /// follow the support inside the staff?
+  bool inside_staff_b_;
 
-    void set_staffsym(Staff_symbol *  );
-  
-    Staff_side();
-    void add_support(Score_elem*);
+  Real y_;
+
+
+  void set_staffsym (Staff_symbol * );
+  Staff_side ();
+  void add_support (Score_elem*);
+  DECLARE_MY_RUNTIME_TYPEINFO;
     
 protected:
-    virtual void do_substitute_dependency(Score_elem *, Score_elem*);
-    int get_position_i()const;
-    int get_position_i(Interval)const;
+  virtual Interval symbol_height () const;
+  virtual Real get_position_f () const;
+  virtual void do_substitute_dependency (Score_elem *, Score_elem*);
+  virtual void do_post_processing ();
+  Interval support_height () const;
+
+private:
+  Link_array<Score_elem> support_l_arr_;
+//  Interval support_height () const;
 };
 #endif // STAFF_SIDE_HH