2 part-combine-music.cc -- implement Part_combine_music
4 source file of the GNU LilyPond music typesetter
6 (c) 2000--2002 Jan Nieuwenhuizen <janneke@gnu.org>
10 #include "part-combine-music.hh"
11 #include "part-combine-music-iterator.hh"
14 Part_combine_music::Part_combine_music (SCM l)
17 set_mus_property ("iterator-ctor",
18 Part_combine_music_iterator::constructor_cxx_function);
22 Part_combine_music::transpose (Pitch p)
24 get_first ()->transpose (p);
25 get_second () ->transpose (p);
29 Part_combine_music::length_mom () const
31 return get_first ()->length_mom ();
35 Part_combine_music::to_relative_octave (Pitch p)
37 p = get_first ()->to_relative_octave (p);
38 return get_second ()->to_relative_octave (p);
42 Part_combine_music::compress (Moment m)
44 get_first ()->compress (m);
45 get_second ()->compress (m);
49 Part_combine_music::get_first () const
51 SCM l = get_mus_property ("elements");
54 return unsmob_music (gh_car (l));
59 Part_combine_music::get_second () const
61 SCM l = get_mus_property ("elements");
67 return unsmob_music (gh_car (l));
71 Part_combine_music::Part_combine_music ()
76 ADD_MUSIC (Part_combine_music);