]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/simultaneous-music.cc
* scm/lily.scm (completize-formats): new function
[lilypond.git] / lily / simultaneous-music.cc
index 580a6f9b9d4fd44e5f33e4efdf2370960333218e..ccf3287ab511202b73d61e397522acc1e7909834 100644 (file)
@@ -1,39 +1,56 @@
+/*   
+  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 Music_sequence::maximum_length (get_mus_property ("elements"));
+  return Music_sequence::maximum_length (get_property ("elements"));
 }
 
 Moment
 Simultaneous_music::start_mom () const
 {
-  return Music_sequence::minimum_start (get_mus_property ("elements"));
-}
-
-Simultaneous_music::Simultaneous_music (SCM head)
-  : Music_sequence (head)
-{
-  set_mus_property ("iterator-ctor",
-                   Simultaneous_music_iterator::constructor_proc);
+  return Music_sequence::minimum_start (get_property ("elements"));
 }
 
 Simultaneous_music::Simultaneous_music ()
-  : Music_sequence ()
 {
-  set_mus_property ("iterator-ctor",
-                   Simultaneous_music_iterator::constructor_proc);
-  
+
 }
 
 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);