+/*
+ simultaneous-music.cc -- implement Simultaneous_music
-#include "moment.hh"
+ source file of the GNU LilyPond music typesetter
+
+ (c) 1998--2004 Han-Wen Nienhuys <hanwen@xs4all.nl>
+
+*/
+
+#include "input.hh"
#include "pitch.hh"
-#include "simultaneous-music-iterator.hh"
#include "music-list.hh"
+#include "scm-option.hh"
Moment
-Simultaneous_music::length_mom () const
+Simultaneous_music::get_length () const
{
- return maximum_length ();
+ return Music_sequence::maximum_length (get_property ("elements"));
}
Moment
Simultaneous_music::start_mom () const
{
- return minimum_start ();
-}
-
-
-
-Simultaneous_music::Simultaneous_music (SCM head)
- : Music_sequence (head)
-{
- set_mus_property ("iterator-ctor",
- Simultaneous_music_iterator::constructor_cxx_function);
+ return Music_sequence::minimum_start (get_property ("elements"));
}
Simultaneous_music::Simultaneous_music ()
- : Music_sequence ()
{
- set_mus_property ("iterator-ctor",
- Simultaneous_music_iterator::constructor_cxx_function);
-
+
}
Pitch
Simultaneous_music::to_relative_octave (Pitch p)
{
- return do_relative_octave (p, true);
+ Pitch retval = music_list_to_relative (music_list (), p, false);
+ if (lily_1_8_relative)
+ {
+ Pitch retval_1_8 = music_list_to_relative (music_list (), p, true);
+ if (retval_1_8 != retval)
+ lily_1_8_compatibility_used = true;
+
+ retval = retval_1_8;
+ }
+
+ return retval;
}
+
ADD_MUSIC (Simultaneous_music);
+
+Pitch
+Event_chord::to_relative_octave (Pitch p)
+{
+ return music_list_to_relative (music_list (), p, true);
+}
+
+ADD_MUSIC (Event_chord);