X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fperformance.hh;h=14c811b150231cc2867de9ecdec455cf9d068f9c;hb=47db9a3883d726ca53e2133a3b2298f78dd6a32e;hp=ff90bfd417161fa9a4f7bb677ceac799302db0cb;hpb=31568c504806f35aac420a394c9eab07abd9faa7;p=lilypond.git diff --git a/lily/include/performance.hh b/lily/include/performance.hh index ff90bfd417..14c811b150 100644 --- a/lily/include/performance.hh +++ b/lily/include/performance.hh @@ -1,35 +1,56 @@ /* - performance.hh -- declare Performance + This file is part of LilyPond, the GNU music typesetter. - (c) 1997--2006 Jan Nieuwenhuizen + Copyright (C) 1997--2015 Jan Nieuwenhuizen + + 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 PERFORMANCE_HH #define PERFORMANCE_HH #include "std-vector.hh" -#include "cons.hh" #include "music-output.hh" /* MIDI output. */ class Performance : public Music_output { public: - Performance (); + Performance (bool ports = false); ~Performance (); - DECLARE_CLASSNAME(Performance); + DECLARE_CLASSNAME (Performance); - void add_element (Audio_element *p); + static Performance *unsmob (SCM p) { + return dynamic_cast (Music_output::unsmob (p)); + } + static bool is_smob (SCM p) { + return Music_output::is_smob (p) && unsmob (p); + } - void output (Midi_stream &midi_stream_r); - void output_header_track (Midi_stream &midi_stream_r); + void add_element (Audio_element *p); + virtual void process (); + void remap_grace_durations (); + void output (Midi_stream &midi_stream) const; + void output_header_track (Midi_stream &midi_stream) const; void print () const; - void write_output (string filename); + void write_output (string filename) const; - vector audio_staffs_; - Cons *audio_element_list_; + vector audio_staffs_; + vector audio_elements_; Output_def *midi_; + bool ports_; }; #endif /* PERFORMANCE_HH */