lilypond-0.1.16
[lilypond.git] / lily / include / script-def.hh
blobac5bf63561e51530b9dda5ba3db10eb2f81c5071
1 /*
2 script-def.hh -- part of GNU LilyPond
4 (c) 1996,97 Han-Wen Nienhuys
5 */
7 #ifndef SCRIPTDEF_HH
8 #define SCRIPTDEF_HH
9 #include "string.hh"
10 #include "general-script-def.hh"
12 /** The characteristics of a certain kind of accent. It is not the
13 accent itself. */
14 class Script_def : public General_script_def {
15 /// invert if below staff?
16 bool invertsym_b_;
17 String symidx_str_;
20 /// on the other side of the stem?
21 Direction rel_stem_dir_;
23 /// below or above staff?
24 Direction staff_dir_;
26 /// how close to the note do we want to be?
27 int priority_i_;
29 /// follow the ball inside staff?
30 bool inside_staff_b_;
32 public:
33 virtual Direction staff_dir() const;
34 virtual Direction rel_stem_dir() const;
35 virtual int priority_i() const;
36 virtual bool inside_b() const;
37 virtual Atom get_atom (Paper_def* p, Direction dir_) const;
38 DECLARE_MY_RUNTIME_TYPEINFO;
40 virtual bool do_equal_b (General_script_def const *) const;
41 virtual void do_print() const;
42 Script_def();
43 void set_from_input (String, bool, int, int ,bool,int);
44 protected:
45 VIRTUAL_COPY_CONS(Script_def,General_script_def);
53 #endif // SCRIPTDEF_HH