]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/script-def.hh
release: 0.1.11
[lilypond.git] / lily / include / script-def.hh
index 9af312bfa4361ae8bf772ac27f8e5b10547f6809..ac5bf63561e51530b9dda5ba3db10eb2f81c5071 100644 (file)
@@ -1,5 +1,5 @@
 /*
-  script-def.hh -- part of LilyPond
+  script-def.hh -- part of GNU LilyPond
 
   (c) 1996,97 Han-Wen Nienhuys
 */
@@ -7,33 +7,48 @@
 #ifndef SCRIPTDEF_HH
 #define SCRIPTDEF_HH
 #include "string.hh"
+#include "general-script-def.hh"
 
 /** The characteristics of a certain kind of accent. It is not the
   accent itself.  */
-struct Script_def {
+class Script_def : public General_script_def {
+  /// invert if below staff?
+  bool invertsym_b_;
+  String symidx_str_;
+    
 
-    /// on the other side of the stem?
-    int rel_stem_dir_i_;
+  /// on the other side of the stem?
+  Direction rel_stem_dir_;
 
-    /// below or above staff?
-    int staff_dir_i_;
+  /// below or above staff?
+  Direction staff_dir_;
 
-    /// how close to the note do we want to be?
-    int priority_i_;
+  /// how close to the note do we want to be?
+  int priority_i_;
     
-    /// follow the ball inside staff?
-    bool inside_staff_b_;
-
-    /// invert if below staff?
-    bool invertsym_b_;
-    String symidx;
+  /// follow the ball inside staff?
+  bool inside_staff_b_;
+
+public:
+  virtual Direction staff_dir() const;
+  virtual Direction rel_stem_dir() const;
+  virtual int priority_i() const;
+  virtual bool inside_b() const;
+  virtual Atom get_atom (Paper_def* p, Direction dir_) const;
+  DECLARE_MY_RUNTIME_TYPEINFO;
+
+  virtual bool do_equal_b (General_script_def const *) const;
+  virtual void do_print() const;
+  Script_def();
+  void set_from_input (String, bool, int, int ,bool,int);
+protected:
+  VIRTUAL_COPY_CONS(Script_def,General_script_def);
 
-    /* *************** */
-    int compare(Script_def const &);
-    void print() const;
-    Script_def(String, bool, int, int ,bool);
 };
 
 
+
+
+
 #endif // SCRIPTDEF_HH