protected virtual void OnSysRealtimeMessageDispatched(SysRealtimeMessageEventArgs e) { EventHandler <SysRealtimeMessageEventArgs> handler = SysRealtimeMessageDispatched; if (handler != null) { handler(this, e); } }
protected virtual void OnSysRealtimeMessageReceived(SysRealtimeMessageEventArgs e) { EventHandler <SysRealtimeMessageEventArgs> handler = SysRealtimeMessageReceived; if (handler != null) { context.Post(delegate(object dummy) { handler(this, e); }, null); } }
private void HandleShortMessage(object state) { int message = (int)state; //first send RawMessage OnShortMessage(new ShortMessageEventArgs(message)); int status = ShortMessage.UnpackStatus(message); if (status >= (int)ChannelCommand.NoteOff && status <= (int)ChannelCommand.PitchWheel + ChannelMessage.MidiChannelMaxValue) { cmBuilder.Message = message; cmBuilder.Build(); OnMessageReceived(cmBuilder.Result); OnChannelMessageReceived(new ChannelMessageEventArgs(cmBuilder.Result)); } else if (status == (int)SysCommonType.MidiTimeCode || status == (int)SysCommonType.SongPositionPointer || status == (int)SysCommonType.SongSelect || status == (int)SysCommonType.TuneRequest) { scBuilder.Message = message; scBuilder.Build(); OnMessageReceived(scBuilder.Result); OnSysCommonMessageReceived(new SysCommonMessageEventArgs(scBuilder.Result)); } else { SysRealtimeMessageEventArgs e = null; switch ((SysRealtimeType)status) { case SysRealtimeType.ActiveSense: e = SysRealtimeMessageEventArgs.ActiveSense; break; case SysRealtimeType.Clock: e = SysRealtimeMessageEventArgs.Clock; break; case SysRealtimeType.Continue: e = SysRealtimeMessageEventArgs.Continue; break; case SysRealtimeType.Reset: e = SysRealtimeMessageEventArgs.Reset; break; case SysRealtimeType.Start: e = SysRealtimeMessageEventArgs.Start; break; case SysRealtimeType.Stop: e = SysRealtimeMessageEventArgs.Stop; break; case SysRealtimeType.Tick: e = SysRealtimeMessageEventArgs.Tick; break; } OnMessageReceived(e.Message); OnSysRealtimeMessageReceived(e); } }
public static ShortMessageEventArgs FromSysRealtimeMessage(SysRealtimeMessageEventArgs arg) { return(new ShortMessageEventArgs(arg.Message)); }
private void EventSource_SysRealtimeMessageReceived(object sender, SysRealtimeMessageEventArgs e) { FOutDevice.Send(e.Message); }