protected:
virtual void derived_mark () const;
virtual void construct_children ();
virtual Moment pending_moment () const;
virtual void process (Moment);
protected:
virtual void derived_mark () const;
virtual void construct_children ();
virtual Moment pending_moment () const;
virtual void process (Moment);
- SCM accept = get_outlet ()->get_property ("quotedEventTypes");
- for (SCM s = mus->get_property ("types");
- scm_is_pair (s); s = scm_cdr (s))
+ for (SCM accept = get_outlet ()->get_property ("quotedEventTypes");
+ scm_is_pair (accept); accept = scm_cdr (accept))
SCM name = get_music ()->get_property ("quoted-context-type");
SCM id = get_music ()->get_property ("quoted-context-id");
SCM name = get_music ()->get_property ("quoted-context-type");
SCM id = get_music ()->get_property ("quoted-context-id");
/*
In case event_idx_ < 0, we're not initted yet, and the wrapped
music expression determines the starting moment.
*/
if (quote_ok ())
/*
In case event_idx_ < 0, we're not initted yet, and the wrapped
music expression determines the starting moment.
*/
if (quote_ok ())
- Music *mus = unsmob_music (scm_car (ev_acc));
- if (!mus)
- programming_error ("need music in quote.");
- else if (accept_music_type (mus))
+ Stream_event *ev = unsmob_stream_event (scm_car (ev_acc));
+ if (!ev)
+ programming_error ("no music found in quote");
+ else if (accept_music_type (ev))
-
- SCM copy = ly_music_deep_copy (mus->self_scm ());
- mus = unsmob_music (copy);
-
- transposed_musics_ = scm_cons (copy, transposed_musics_);
- mus->transpose (diff);
+ ev = ev->clone ();
+
+ transpose_mutable (ev->get_property_alist (true), diff);
+ transposed_musics_ = scm_cons (ev->unprotect (), transposed_musics_);