2 mensural-ligature.hh -- part of GNU LilyPond
4 source file of the GNU LilyPond music typesetter
6 (c) 2002--2006 Juergen Reuter <reuter@ipd.uka.de>,
7 Pal Benko <benkop@freestart.hu>
10 #ifndef MENSURAL_LIGATURE_HH
11 #define MENSURAL_LIGATURE_HH
13 #include "lily-proto.hh"
14 #include "lily-guile.hh"
15 #include "grob-interface.hh"
19 * These are all possible mensural ligature primitives.
21 #define MLP_NONE 0x00 // no output
22 #define MLP_UP 0x01 // upward left stem
23 #define MLP_DOWN 0x02 // downward left stem
24 #define MLP_BREVIS 0x04 // mensural brevis head
25 #define MLP_LONGA 0x08 // mensural brevis head with right cauda
26 #define MLP_MAXIMA 0x10 // mensural maxima head without stem
27 #define MLP_FLEXA 0x20 // mensural flexa-like shape
29 #define MLP_STEM (MLP_UP | MLP_DOWN)
30 #define MLP_SINGLE_HEAD (MLP_BREVIS | MLP_LONGA | MLP_MAXIMA)
31 #define MLP_ANY (MLP_FLEXA | MLP_SINGLE_HEAD)
33 struct Mensural_ligature
35 DECLARE_SCHEME_CALLBACK (brew_ligature_primitive, (SCM));
36 DECLARE_SCHEME_CALLBACK (print, (SCM));
37 DECLARE_GROB_INTERFACE();
40 #endif /* MENSURAL_LIGATURE_HH */