Example #1
0
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);
   }
}
Example #2
0
void Midi::TranslateNotes(const NoteSet &notes, 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);
   }
}