]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/music-list.hh
2003 -> 2004
[lilypond.git] / lily / include / music-list.hh
index 78a2ac1a6b5fc6b6fc9eec27dc186389198f7668..e9fc937584a8812e35f2b57210f36a8ff1d9350c 100644 (file)
@@ -1,83 +1,52 @@
 /*
-  music-list.hh -- declare Music_list, Chord and Voice
+  music-list.hh -- declare Music_sequence,
+  Simultaneous_music and Sequential_music
 
   source file of the GNU LilyPond music typesetter
 
-  (c)  1997--1998 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+  (c) 1997--2004 Han-Wen Nienhuys <hanwen@cs.uu.nl>
 */
 
 
-#ifndef MUSIC_LIST_HH
-#define MUSIC_LIST_HH
-
-#include "music.hh"
-#include "plist.hh"
+#ifndef Music_sequence_HH
+#define Music_sequence_HH
 
+#include "music-sequence.hh"
 
 /**
-  Music can be a list of other "Music" elements
+  Simultaneous_music is a list of music-elements which happen simultaneously
  */
-class Music_list : public Music
+class Simultaneous_music : public Music_sequence
 {
-    
 public:
-  int multi_level_i_;
-
-  Musical_pitch do_relative_octave (Musical_pitch, bool); 
-  Music_list (Music_list const&);
-  Music_list();
-  DECLARE_MY_RUNTIME_TYPEINFO;
-  VIRTUAL_COPY_CONS(Music_list,Music);
-  virtual void add (Music*);
-  virtual void transpose (Musical_pitch );
-    
-  Pointer_list<Music*> music_p_list_;
-protected:
-  virtual void do_print() const;
+  VIRTUAL_COPY_CONS (Music);
+  virtual Pitch to_relative_octave (Pitch);
+  virtual Moment get_length () const;
+  virtual Moment start_mom () const;
+  Simultaneous_music ();
 };
 
-/**
-  Chord is a list of music-elements which happen simultaneously
+/*
+  A chord.
  */
-
-class Chord : public Music_list
+class Event_chord : public Simultaneous_music
 {
 public:
-  Chord();
-  DECLARE_MY_RUNTIME_TYPEINFO;
-  VIRTUAL_COPY_CONS(Chord,Music);
-  
-  virtual Musical_pitch to_relative_octave (Musical_pitch);
-  virtual void translate (Moment dt);
-  virtual MInterval time_int() const;
+  VIRTUAL_COPY_CONS (Music);
+  virtual Pitch to_relative_octave (Pitch);
 };
 
 /**
-  The request is a collection of Requests. A note that you enter in mudela is 
-  one Request_chord, one syllable of lyrics is one Request_chord
+  Sequential_music is a list of music-elements which are placed behind each other.
  */
-class Request_chord : public Chord
+class Sequential_music : public Music_sequence
 {
 public:
-  DECLARE_MY_RUNTIME_TYPEINFO;
-  virtual Musical_pitch to_relative_octave (Musical_pitch);
-  Request_chord();
-  VIRTUAL_COPY_CONS(Request_chord, Music);
-};
-/**
-  Voice is a list of music-elements which are placed behind each other.
- */
-class Voice : public Music_list
-{
-    
-public:
-  Moment offset_mom_;
-  virtual Musical_pitch to_relative_octave (Musical_pitch);
-  Voice();
-  DECLARE_MY_RUNTIME_TYPEINFO;
-  VIRTUAL_COPY_CONS(Voice, Music);
-  virtual void translate (Moment dt);
-  virtual MInterval time_int() const;
+  VIRTUAL_COPY_CONS (Music);
+  virtual Moment get_length () const;
+  virtual Moment start_mom () const;
+  
+  Sequential_music ();
 };
-#endif // MUSIC_LIST_HH
+
+#endif // Music_sequence_HH