X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fmusic-output.hh;h=208c01a831e9f2f2920dd5b1407e15aed4a76668;hb=ef9512388b15e1e5e2b3592299ffe489ac43abb4;hp=04a16e5d8d998466b676b81f60ba74f1bec1b5c8;hpb=1cf3d59c1559fb9774c4c1c8cae155cfe54a927c;p=lilypond.git diff --git a/lily/include/music-output.hh b/lily/include/music-output.hh index 04a16e5d8d..208c01a831 100644 --- a/lily/include/music-output.hh +++ b/lily/include/music-output.hh @@ -1,35 +1,46 @@ /* - music-output.hh -- declare Music_output + This file is part of LilyPond, the GNU music typesetter. - source file of the GNU LilyPond music typesetter + Copyright (C) 1997--2015 Han-Wen Nienhuys - (c) 1997--1998 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 Music_output_HH -#define Music_output_HH +#ifndef MUSIC_OUTPUT_HH +#define MUSIC_OUTPUT_HH -#include "string.hh" +#include "std-string.hh" #include "lily-proto.hh" +#include "protected-scm.hh" +#include "smobs.hh" +#include "virtual-methods.hh" -/** - Output something that was defined in a mudela file. - */ -class Music_output +class Music_output : public Smob { public: - Header * header_l_; - String default_out_str_; - String origin_str_; - int errorlevel_i_; - - virtual void process() {} - virtual ~Music_output (){} - Music_output() - { - errorlevel_i_ = 0; - } - + int print_smob (SCM, scm_print_state *) const; + SCM mark_smob () const; + static const char * const type_p_name_; + virtual ~Music_output (); +private: + DECLARE_CLASSNAME (Music_output); +protected: + Music_output (); + +public: + virtual void derived_mark () const; + virtual void process (); }; -#endif // Music_output_HH + +#endif /* MUSIC_OUTPUT_HH */