-#include "grace-iterator.hh"
-#include "translator-group.hh"
-#include "debug.hh"
-#include "sequential-music-iterator.hh"
-#include "music-list.hh"
-#include "request-chord-iterator.hh"
-
-/*
- Invariant for the data structure.
-
-
- if (gh_pair_p (cursor_))
- iter_p_->music_l_ == unsmob_music (gh_car (cursor_))
- else
- iter_p_ == 0;
-
- The length of musiclist from start to up to cursor_ (cursor_ not
- including), is summed
-
- here_mom_ = sum (length (musiclist [start ... cursor> )) %)
-
- */
-
-
-Sequential_music_iterator::Sequential_music_iterator ()
-{
- cursor_ = SCM_EOL;
- here_mom_ = Moment (0);
-
- iter_p_ =0;
-}
-
-Sequential_music_iterator::Sequential_music_iterator (Sequential_music_iterator const &src)
- : Music_iterator (src)
-{
- cursor_ = src.cursor_;
- here_mom_ = src.here_mom_;
- if (src.iter_p_)
- iter_p_ = src.iter_p_->clone ();
- else
- iter_p_ = 0;
-}
-
-Sequential_music_iterator::~Sequential_music_iterator()
-{
- delete iter_p_;
-}
-
-void
-Sequential_music_iterator::construct_children()
-{
- cursor_ = dynamic_cast<Music_sequence const*> (music_l_)->music_list ();
-
- iter_p_ = gh_pair_p (cursor_) ? get_iterator_p (unsmob_music (gh_car (cursor_))) : 0;
- while (iter_p_ && !iter_p_->ok ())
- {
- next_element ();
- }
-
- /*
- iter_p_->ok () is tautology, but what the heck.
- */
- if (iter_p_ && iter_p_->ok())
- descend_to_child ();
-
-}