]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/general-script-def.hh
024468e3436a3f4f2486a793a93ee669b7f8eb61
[lilypond.git] / lily / include / general-script-def.hh
1 /*
2   general-script-def.hh -- declare General_script_def
3
4   source file of the GNU LilyPond music typesetter
5
6   (c)  1997--1998 Han-Wen Nienhuys <hanwen@stack.nl>
7 */
8
9
10 #ifndef GENERAL_SCRIPT_DEF_HH
11 #define GENERAL_SCRIPT_DEF_HH
12
13 #include "lily-proto.hh"
14 #include "input.hh"
15 #include "virtual-methods.hh"
16 #include "direction.hh"
17
18 /**
19   Definition of anything that is put aside staff/notes.
20  */
21 class General_script_def : public Input {
22 public:
23   VIRTUAL_COPY_CONS(General_script_def,General_script_def);
24   DECLARE_MY_RUNTIME_TYPEINFO;
25   virtual Direction staff_dir() const;
26   void print() const;
27   virtual Direction rel_stem_dir() const;
28   virtual int priority_i() const;
29   virtual bool inside_b() const;
30   virtual Atom get_atom (Paper_def* p, Direction dir_) const;
31   bool equal_b (General_script_def const&) const;
32   virtual ~General_script_def() {}
33     
34   virtual Interval width (Paper_def *) const;
35 protected:
36   virtual bool do_equal_b (General_script_def const *) const;
37   virtual void do_print() const;
38 };
39
40 #endif // GENERAL_SCRIPT_DEF_HH