]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/script-def.hh
release: 0.0.78
[lilypond.git] / lily / include / script-def.hh
1 /*
2   script-def.hh -- part of GNU LilyPond
3
4   (c) 1996,97 Han-Wen Nienhuys
5 */
6
7 #ifndef SCRIPTDEF_HH
8 #define SCRIPTDEF_HH
9 #include "string.hh"
10 #include "general-script-def.hh"
11
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_;
18     
19
20     /// on the other side of the stem?
21     int rel_stem_dir_i_;
22
23     /// below or above staff?
24     int staff_dir_i_;
25
26     /// how close to the note do we want to be?
27     int priority_i_;
28     
29     /// follow the ball inside staff?
30     bool inside_staff_b_;
31
32 public:
33     virtual int staff_dir_i()const;
34     virtual int rel_stem_dir_i()const;
35     virtual int priority_i()const;
36     virtual bool inside_b()const;
37     virtual Atom get_atom(Paper_def* p, int dir_i_)const;
38     DECLARE_MY_RUNTIME_TYPEINFO;
39
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);
46
47 };
48
49
50
51
52
53 #endif // SCRIPTDEF_HH
54