X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fmensural-ligature.hh;h=b1dc33e9e95126a5e798145e0a861c037a85e82d;hb=5b4b0d6e9a197e8f9eb085b7c2ad78b8be3e5cfc;hp=e38f6651e632f8ca710f47f3eddc6fd853761dd2;hpb=05fabaaf86fd44f9bd903f282bb98d343a991e40;p=lilypond.git diff --git a/lily/include/mensural-ligature.hh b/lily/include/mensural-ligature.hh index e38f6651e6..b1dc33e9e9 100644 --- a/lily/include/mensural-ligature.hh +++ b/lily/include/mensural-ligature.hh @@ -2,39 +2,38 @@ mensural-ligature.hh -- part of GNU LilyPond source file of the GNU LilyPond music typesetter - - (c) 2002--2004 Juergen Reuter + + (c) 2002--2008 Juergen Reuter , + Pal Benko */ #ifndef MENSURAL_LIGATURE_HH #define MENSURAL_LIGATURE_HH #include "lily-proto.hh" -#include "lily-guile.hh" +#include "grob-interface.hh" + /* * These are all possible mensural ligature primitives. */ -#define MLP_BB 0x01 // flexa with left downward cauda (for Brevis-Brevis) -#define MLP_sc 0x02 // last head of asc. sine proprietate cum perfectione - // (i.e. brevis head with downward right cauda) -#define MLP_ss 0x04 // last head of asc. sine proprietate sine perfectione - // (i.e. pure brevis head) -#define MLP_cs 0x08 // last head of asc. cum proprietate sine perfectione - // (i.e. brevis head with downward left cauda) -#define MLP_SS 0x10 // flexa with left upward cauda (for Semibr.-Semibr.) -#define MLP_LB 0x20 // core flexa (for Longa-Brevis) - -#define MLP_NONE 0x00 // no output -#define MLP_SINGLE_HEAD (MLP_sc | MLP_ss | MLP_cs) -#define MLP_FLEXA (MLP_BB | MLP_SS | MLP_LB) -#define MLP_ANY (MLP_FLEXA | MLP_SINGLE_HEAD) +#define MLP_NONE 0x00 // no output +#define MLP_UP 0x01 // upward left stem +#define MLP_DOWN 0x02 // downward left stem +#define MLP_BREVIS 0x04 // mensural brevis head +#define MLP_LONGA 0x08 // mensural brevis head with right cauda +#define MLP_MAXIMA 0x10 // mensural maxima head without stem +#define MLP_FLEXA 0x20 // mensural flexa-like shape + +#define MLP_STEM (MLP_UP | MLP_DOWN) +#define MLP_SINGLE_HEAD (MLP_BREVIS | MLP_LONGA | MLP_MAXIMA) +#define MLP_ANY (MLP_FLEXA | MLP_SINGLE_HEAD) struct Mensural_ligature { - DECLARE_SCHEME_CALLBACK (brew_ligature_primitive, (SCM )); - DECLARE_SCHEME_CALLBACK (print, (SCM )); - static bool has_interface (Grob*); + DECLARE_SCHEME_CALLBACK (brew_ligature_primitive, (SCM)); + DECLARE_SCHEME_CALLBACK (print, (SCM)); + DECLARE_GROB_INTERFACE(); }; #endif /* MENSURAL_LIGATURE_HH */