]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/accidental-placement.hh
* lily/accidental-placement.cc (split_accidentals): new function
[lilypond.git] / lily / include / accidental-placement.hh
1 /*   
2 accidental-placement.hh -- declare  Accidental_placement
3
4 source file of the GNU LilyPond music typesetter
5
6 (c) 2002 Han-Wen Nienhuys <hanwen@cs.uu.nl>
7
8  */
9
10 #ifndef ACCIDENTAL_PLACEMENT_HH
11 #define ACCIDENTAL_PLACEMENT_HH
12
13 #include "grob.hh"
14
15 class Accidental_placement
16 {
17 public:
18   DECLARE_SCHEME_CALLBACK (alignment_callback, (SCM element, SCM axis));
19   DECLARE_SCHEME_CALLBACK (extent_callback, (SCM element, SCM axis));  
20   static void add_accidental (Grob *,Grob* );
21
22   static Interval get_relevant_accidental_extent (Grob *me,
23                                                   Item *item_col,
24                                                   Grob *acc);
25   static void split_accidentals (Grob * accs,
26                           Link_array<Grob> *break_reminder,
27                           Link_array<Grob> *real_acc);
28   
29   static SCM position_accidentals (Grob* );
30   static bool has_interface (Grob*);
31 };
32 #endif /* ACCIDENTAL_PLACEMENT_HH */
33