]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/dot-configuration.hh
make Dot_configuration into class, in new files dot-configuration.{cc,hh}
[lilypond.git] / lily / include / dot-configuration.hh
1 /*
2   dot-configuration.hh -- declare Dot_configuration
3
4   Source file of the GNU LilyPond music typesetter.  Distributed under
5   terms of the GNU General Public License.  LilyPond comes with NO
6   WARRANTY.
7
8   (c) 2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
9 */
10
11 #ifndef DOT_CONFIGURATION_HH
12 #define DOT_CONFIGURATION_HH
13
14 #include "lily-proto.hh"
15 #include "direction.hh"
16
17 #include <map>
18
19 struct Dot_position
20 {
21   int pos_;
22   Direction dir_;
23   Grob *dot_;
24   bool extremal_head_;
25
26   Dot_position ()
27   {
28     dot_ = 0;
29     pos_ = 0;
30     dir_ = CENTER;
31     extremal_head_ = false;
32   }
33 };
34
35 struct Dot_configuration : public map<int, Dot_position>
36 {
37   int badness () const;
38   void print () const;
39   Dot_configuration shifted (int k, Direction d) const;
40
41     void remove_collision (int p);
42 };
43
44 #endif