Exemple #1
0
 public override void Export(ref long absoluteTime, BinaryWriter writer)
 {
     base.Export(ref absoluteTime, writer);
     writer.Write((byte)this.metaEvent);
     MidiEvent.WriteVarInt(writer, this.metaDataLength);
     if (this.data != null)
     {
         writer.Write(this.data, 0, this.data.Length);
     }
 }
Exemple #2
0
        /// <summary>
        /// Exports this MIDI event's data
        /// Overriden in derived classes, but they should call this version
        /// </summary>
        /// <param name="absoluteTime">Absolute time used to calculate delta.
        /// Is updated ready for the next delta calculation</param>
        /// <param name="writer">Stream to write to</param>
        // Token: 0x060004D8 RID: 1240 RVA: 0x00010378 File Offset: 0x0000E578
        public virtual void Export(ref long absoluteTime, BinaryWriter writer)
        {
            if (this.absoluteTime < absoluteTime)
            {
                throw new FormatException("Can't export unsorted MIDI events");
            }
            MidiEvent.WriteVarInt(writer, (int)(this.absoluteTime - absoluteTime));
            absoluteTime = this.absoluteTime;
            int num = (int)this.commandCode;

            if (this.commandCode != MidiCommandCode.MetaEvent)
            {
                num += this.channel - 1;
            }
            writer.Write((byte)num);
        }