|
|
#ifndef _SONGITERATOR_H_ #define _SONGITERATOR_H_ #include "compound.h" #include "position.h" class Song; class Track; class Part; class Event; class Note; class PrPartEditor; #define MAXEVENTS 128 class SongIterator { private: Song * _song; Track ** _track; Part ** _part; Part ** _new_part; Event ** _event; Position _left; Position _right; int _tracks; Note * _mem[MAXEVENTS]; long _offset[MAXEVENTS]; int _chan[MAXEVENTS]; int _num[MAXEVENTS]; int _memref; int _memtop; public: SongIterator(const SongIterator& i); SongIterator(Song * song, Position left = 0, Position right = 0); void init(Position left = 0, Position right = 0); bool operator!=(const SongIterator& i) const; bool operator==(const SongIterator& i) const; bool done(int i=-1); Position start(int); bool startsAt(int i, long p); Element * operator[](int n); void increment(int); Part * change(int); Track * track(int); int channel(int); int program(int); bool mute(int); void activate(int i); bool activeEndsAt(long p); Note * activeNote(); int activeChannel(); int activeTrack(); void cutActive(); }; #endif
Generated by: wuerthne on clouseau on Fri Sep 21 19:20:46 2001, using kdoc 2.0a53. |