void MidiTrack::SetTrackId(size_t track_id) { NoteSet old = m_note_set; m_note_set.clear(); for (NoteSet::const_iterator i = old.begin(); i != old.end(); ++i) { Note n = *i; n.track_id = track_id; m_note_set.insert(n); } }
void Midi::TranslateNotes(const NoteSet ¬es, unsigned short pulses_per_quarter_note) { for (NoteSet::const_iterator i = notes.begin(); i != notes.end(); ++i) { TranslatedNote trans; trans.note_id = i->note_id; trans.track_id = i->track_id; trans.channel = i->channel; trans.velocity = i->velocity; trans.start = GetEventPulseInMicroseconds(i->start, pulses_per_quarter_note); trans.end = GetEventPulseInMicroseconds(i->end, pulses_per_quarter_note); m_translated_notes.insert(trans); } }