class MidiBase // base for all other events { public: private: int channel; //channel of event float time; //time of event } class MidiText: public MidiBase { public: MidiText(const char *text); ~MidiText(); private: char *txt; } class Note //on/off { public: Note(int on_off, Note note, int velocity); ~Note(); private: Note *stop; }