From ad547a6b5986815fda458221149728d9d9ab1d87 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Thu, 25 Feb 2021 19:22:25 +0000 Subject: restore Build,TODO from r57911 git-svn-id: svn://tug.org/texlive/trunk@57915 c570f23f-e606-0410-a88d-b1316a301751 --- .../src/gabc/gabc-score-determination.h | 64 ++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.h (limited to 'Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.h') diff --git a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.h b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.h new file mode 100644 index 00000000000..4474973c4d3 --- /dev/null +++ b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.h @@ -0,0 +1,64 @@ +/* + * Gregorio is a program that translates gabc files to GregorioTeX + * This header shares definitions between the score parser and lexer. + * + * Gregorio score determination from gabc. + * Copyright (C) 2006-2019 The Gregorio Project (see CONTRIBUTORS.md) + * + * This file is part of Gregorio. + * + * This program is free software: you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation, either version 3 of the License, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program. If not, see . + */ + +#ifndef GABC_SCORE_DETERMINATION_H +#define GABC_SCORE_DETERMINATION_H + +#include "bool.h" +#include "struct.h" +#include "gabc.h" + +/* The bits in this enum are named to correspond with the _BEGIN/_END tokens */ +typedef enum { + SB_I = 0x01, + SB_B = 0x02, + SB_TT = 0x04, + SB_SC = 0x08, + SB_UL = 0x10, + SB_C = 0x20, + SB_ELISION = 0x40 +} gabc_style_bits; + +typedef union gabc_score_determination_lval_t { + char *text; + char character; +} gabc_score_determination_lval_t; + +#define YYSTYPE gabc_score_determination_lval_t +#define YYSTYPE_IS_DECLARED 1 + +#define YY_DECL \ + int gabc_score_determination_lex(gabc_style_bits *const styles) +YY_DECL; + +#define YYLTYPE gregorio_scanner_location + +void gabc_suppress_extra_custos_at_linebreak(gregorio_score *score); +void gabc_fix_custos_pitches(gregorio_score *score_to_check); +bool gabc_check_score_integrity(gregorio_score *score_to_check); +bool gabc_check_infos_integrity(gregorio_score *score_to_check); +void gabc_determine_oriscus_orientation(const gregorio_score *score); +void gabc_determine_punctum_inclinatum_orientation(const gregorio_score *score); +void gabc_determine_ledger_lines(const gregorio_score *const score); + +#endif -- cgit v1.2.3