]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/script-def.hh
release: 0.1.11
[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   Direction rel_stem_dir_;
22
23   /// below or above staff?
24   Direction staff_dir_;
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 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;
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