private void Write(SysCommonMessage message) { // Escaped messages cancel running status. runningStatus = 0; // Escaped message. trackData.Add((byte)0xF7); trackData.Add((byte)message.Status); switch (message.SysCommonType) { case SysCommonType.MidiTimeCode: trackData.Add((byte)message.Data1); break; case SysCommonType.SongPositionPointer: trackData.Add((byte)message.Data1); trackData.Add((byte)message.Data2); break; case SysCommonType.SongSelect: trackData.Add((byte)message.Data1); break; } }
/// <summary> /// Initializes a new instance of the SongPositionPointerBuilder class /// with the specified song position pointer message. /// </summary> /// <param name="message"> /// The song position pointer message to use for initializing the /// SongPositionPointerBuilder. /// </param> /// <exception cref="ArgumentException"> /// If message is not a song position pointer message. /// </exception> public SongPositionPointerBuilder(SysCommonMessage message) { builder = new SysCommonMessageBuilder(); builder.Type = SysCommonType.SongPositionPointer; Initialize(message); Ppqn = PpqnClock.PpqnMinValue; }
/// <summary> /// Builds a SysCommonMessage. /// </summary> public void Build() { result = (SysCommonMessage)messageCache[message]; if (result == null) { result = new SysCommonMessage(message); messageCache.Add(message, result); } }
public virtual void Send(SysCommonMessage message) { #region Require if (IsDisposed) { throw new ObjectDisposedException(this.GetType().Name); } #endregion Send(message.Message); }
public override void Send(SysCommonMessage message) { #region Require if (IsDisposed) { throw new ObjectDisposedException(this.GetType().Name); } #endregion // System common cancels running status. runningStatus = 0; base.Send(message); }
/// <summary> /// Determines whether two SysCommonMessage instances are equal. /// </summary> /// <param name="obj"> /// The SysCommonMessage to compare with the current SysCommonMessage. /// </param> /// <returns> /// <b>true</b> if the specified SysCommonMessage is equal to the /// current SysCommonMessage; otherwise, <b>false</b>. /// </returns> public override bool Equals(object obj) { #region Guard if (!(obj is SysCommonMessage)) { return(false); } #endregion SysCommonMessage message = (SysCommonMessage)obj; return(this.SysCommonType == message.SysCommonType && this.Data1 == message.Data1 && this.Data2 == message.Data2); }
/// <summary> /// Initializes the SongPositionPointerBuilder with the specified /// SysCommonMessage. /// </summary> /// <param name="message"> /// The SysCommonMessage to use to initialize the /// SongPositionPointerBuilder. /// </param> /// <exception cref="ArgumentException"> /// If the SysCommonMessage is not a song position pointer message. /// </exception> public void Initialize(SysCommonMessage message) { #region Require if (message == null) { throw new ArgumentNullException("message"); } else if (message.SysCommonType != SysCommonType.SongPositionPointer) { throw new ArgumentException( "Message is not a song position pointer message."); } #endregion builder.Initialize(message); }
public SysCommonMessageEventArgs(SysCommonMessage message) { this.message = message; }
/// <summary> /// Initializes a new instance of the SysCommonMessageBuilder class /// with the specified SystemCommonMessage. /// </summary> /// <param name="message"> /// The SysCommonMessage to use for initializing the /// SysCommonMessageBuilder. /// </param> /// <remarks> /// The SysCommonMessageBuilder uses the specified SysCommonMessage to /// initialize its property values. /// </remarks> public SysCommonMessageBuilder(SysCommonMessage message) { Initialize(message); }
/// <summary> /// Initializes the SysCommonMessageBuilder with the specified /// SysCommonMessage. /// </summary> /// <param name="message"> /// The SysCommonMessage to use for initializing the /// SysCommonMessageBuilder. /// </param> public void Initialize(SysCommonMessage message) { this.message = message.Message; }