]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/main.hh
Merge remote branch 'origin/master' into release/unstable
[lilypond.git] / lily / include / main.hh
1 /*
2   This file is part of LilyPond, the GNU music typesetter.
3
4   Copyright (C) 1997--2015 Han-Wen Nienhuys <hanwen@xs4all.nl>
5
6   LilyPond is free software: you can redistribute it and/or modify
7   it under the terms of the GNU General Public License as published by
8   the Free Software Foundation, either version 3 of the License, or
9   (at your option) any later version.
10
11   LilyPond is distributed in the hope that it will be useful,
12   but WITHOUT ANY WARRANTY; without even the implied warranty of
13   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14   GNU General Public License for more details.
15
16   You should have received a copy of the GNU General Public License
17   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
18 */
19 #ifndef MAIN_HH
20 #define MAIN_HH
21
22 #include "lily-proto.hh"
23 #include "std-vector.hh"
24 #include "std-string.hh"
25
26 void debug_init ();
27 void set_debug (bool);
28 void do_scores ();
29 void clear_scores ();
30 void add_score (Score *s);
31 void call_constructors ();
32 vector<string> get_inclusion_names ();
33 void set_inclusion_names (vector<string>);
34
35 extern string init_name_global;
36
37 /* options */
38 extern vector<string> dump_header_fieldnames_global;
39 extern vector<string> start_environment_global;
40 extern string output_backend_global;
41 extern string output_name_global;
42 extern bool bigpdfs;
43 extern bool be_safe_global;
44 extern bool do_internal_type_checking_global;
45 extern string lilypond_datadir;
46 extern bool use_object_keys;
47 extern bool strict_infinity_checking;
48 extern string init_scheme_code_global;
49 extern string init_scheme_variables_global;
50
51 /*
52   todo: collect in Output_option struct?
53 */
54 extern string output_format_global;
55
56 /* misc */
57 extern vector<string> failed_files;
58 extern int exit_status_global;
59 extern File_path global_path;
60 extern const char *LILYPOND_DATADIR;
61
62 /*
63   Debugging options: switch on
64
65   Cannot switch on -DNDEBUG, because it causes weird errors if you mix
66   DNDEBUG and normal builds.
67 */
68
69 #define DEBUG_SLUR_SCORING 1
70 #define DEBUG_TIE_SCORING 1
71 #define DEBUG_BEAM_SCORING 1
72
73 #endif /* MAIN_HH */