]> git.donarmstrong.com Git - lilypond.git/blob - lily/lyric-combine-music.cc
release: 1.3.93
[lilypond.git] / lily / lyric-combine-music.cc
1 /*   
2   lyric-combine-music.cc --  implement Lyric_combine_music
3   
4   source file of the GNU LilyPond music typesetter
5   
6   (c) 1999--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
7   
8  */
9
10 #include "lyric-combine-music.hh"
11 #include "musical-pitch.hh"
12
13 Lyric_combine_music::Lyric_combine_music (Music * m, Music * l)
14 {
15   set_mus_property ("music", m->self_scm ());
16   set_mus_property ("lyrics", l->self_scm ());  
17 }
18
19
20 void
21 Lyric_combine_music::transpose (Musical_pitch p)
22 {
23   music_l ()->transpose (p);
24   lyrics_l () ->transpose (p);
25 }
26
27
28 Moment
29 Lyric_combine_music::length_mom () const
30 {
31   return music_l ()->length_mom ();
32 }
33
34 Musical_pitch
35 Lyric_combine_music::to_relative_octave (  Musical_pitch p )
36 {
37   p = music_l ()->to_relative_octave (p);
38   return lyrics_l () ->to_relative_octave (p);
39 }
40
41 void
42 Lyric_combine_music::compress (Moment m)
43 {
44   music_l ()->compress (m);
45 }
46
47 Music*
48 Lyric_combine_music::music_l () const
49 {
50   return unsmob_music (get_mus_property ("music"));
51 }
52
53 Music*
54 Lyric_combine_music::lyrics_l () const
55 {
56   return unsmob_music (get_mus_property ("lyrics"));
57 }