X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fstream-event.hh;h=f255ab53531d4833cb3ca24e6d31d2bdfbeb2f1e;hb=29af9bda720e7624494abbacb9895ac7d63b5221;hp=6a1f8d98455cee7597959e53120016f1a125793f;hpb=b6a8afbd0a9a0b36b07c114503d81a7c420e09e7;p=lilypond.git diff --git a/lily/include/stream-event.hh b/lily/include/stream-event.hh index 6a1f8d9845..f255ab5353 100644 --- a/lily/include/stream-event.hh +++ b/lily/include/stream-event.hh @@ -1,9 +1,20 @@ /* - stream-event.hh -- declare Stream_event + This file is part of LilyPond, the GNU music typesetter. - source file of the GNU LilyPond music typesetter + Copyright (C) 2005--2012 Erik Sandberg - (c) 2005-2006 Erik Sandberg + 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 STREAM_EVENT_HH @@ -17,23 +28,25 @@ class Stream_event : public Prob { public: Stream_event (); + VIRTUAL_COPY_CONSTRUCTOR (Stream_event, Stream_event); + + Stream_event (SCM event_class, SCM immutable_props = SCM_EOL); + Stream_event (SCM class_name, Input *); + Input *origin () const; void set_spot (Input *i); bool internal_in_event_class (SCM class_name); + void make_transposable (); + + virtual SCM copy_mutable_properties () const; DECLARE_SCHEME_CALLBACK (undump, (SCM)); DECLARE_SCHEME_CALLBACK (dump, (SCM)); - - // todo: remove unneeded constructors - Stream_event (SCM event_class, SCM mutable_props); - Stream_event (SCM property_alist); - Stream_event (SCM class_name, Input *); - Stream_event (Stream_event *ev); }; #define in_event_class(class_name) internal_in_event_class (ly_symbol2scm (class_name)) Stream_event *unsmob_stream_event (SCM); -DECLARE_TYPE_P (Stream_event); +SCM ly_event_deep_copy (SCM); #endif /* STREAM_EVENT_HH */