X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Flily-parser.hh;h=2961ffbb908b7dfd2dab8c53c26e63c860962547;hb=27945b310409e8e0e76ceffc5aa34851448239b8;hp=c460ffcd09d870df96ec2b16b31a30b61dcfd136;hpb=31568c504806f35aac420a394c9eab07abd9faa7;p=lilypond.git diff --git a/lily/include/lily-parser.hh b/lily/include/lily-parser.hh index c460ffcd09..2961ffbb90 100644 --- a/lily/include/lily-parser.hh +++ b/lily/include/lily-parser.hh @@ -1,9 +1,20 @@ /* - lily-parser.hh -- declare Lily_parser + This file is part of LilyPond, the GNU music typesetter. - source file of the GNU LilyPond music typesetter + Copyright (C) 1997--2010 Han-Wen Nienhuys - (c) 1997--2006 Han-Wen Nienhuys + LilyPond 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. + + LilyPond 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 LilyPond. If not, see . */ #ifndef LILY_PARSER_HH @@ -11,7 +22,6 @@ #include "duration.hh" #include "input.hh" -#include "std-vector.hh" #include "pitch.hh" /** @@ -22,7 +32,7 @@ */ class Lily_parser { - DECLARE_SMOBS (Lily_parser,); + DECLARE_SMOBS (Lily_parser); friend int yyparse (void *); vector define_spots_; @@ -31,7 +41,7 @@ class Lily_parser Simultaneous_music *get_chord (Pitch tonic, vector *adds, vector *subs, Pitch *inversion, Pitch *bass, Duration d); - void set_chord_tremolo (int type_i); + void set_chord_tremolo (int type); void set_last_duration (Duration const *); void set_last_pitch (Pitch const *); @@ -50,13 +60,17 @@ public: DECLARE_SCHEME_CALLBACK (layout_description, ()); + void clear (); void do_init_file (); void do_yyparse (); + void include_string (string ly_code); void parse_file (string init, string name, string out_name); void parse_string (string ly_code); void parser_error (string); void parser_error (Input const &, string); void set_yydebug (bool); + + SCM make_scope () const; }; DECLARE_UNSMOB (Lily_parser, lily_parser); @@ -72,6 +86,10 @@ SCM ly_parser_scorify (SCM, SCM); Output_def *get_layout (Lily_parser *parser); Output_def *get_midi (Lily_parser *parser); Output_def *get_paper (Lily_parser *parser); +void init_papers (Lily_parser *parser); +void push_paper (Lily_parser *parser, Output_def *paper); +void pop_paper (Lily_parser *parser); +void set_paper (Lily_parser *parser, Output_def *paper); SCM get_header (Lily_parser *parser); #endif /* LILY_PARSER_HH */