/// <summary> /// Called when the Myo sends a <see cref="MyoEventType.Emg"/> event. /// </summary> /// <param name="evt">The pointer to the event.</param> /// <param name="timestamp">The timestamp of the event.</param> protected virtual void OnEmgData(IntPtr evt, DateTime timestamp) { const int NUMBER_OF_SENSORS = 8; var rawEmgData = new int[NUMBER_OF_SENSORS]; for (int i = 0; i < rawEmgData.Length; i++) { rawEmgData[i] = _myoDeviceDriver.GetEventEmg(evt, i); } var emgData = Device.EmgData.Create(rawEmgData); this.EmgData = emgData; var handler = EmgDataAcquired; if (handler != null) { var args = new EmgDataEventArgs( this, timestamp, emgData); handler.Invoke(this, args); } }
/// <summary> /// Called when the Myo sends a <see cref="MyoEventType.Emg"/> event. /// </summary> /// <param name="evt">The pointer to the event.</param> /// <param name="timestamp">The timestamp of the event.</param> protected virtual void OnEmgData(IntPtr evt, DateTime timestamp) { // Contract.Requires<ArgumentException>(evt != IntPtr.Zero, "The event handle must be set."); const int NUMBER_OF_SENSORS = 8; var rawEmgData = new int[NUMBER_OF_SENSORS]; for (int i = 0; i < rawEmgData.Length; i++) { rawEmgData[i] = _myoDeviceDriver.GetEventEmg(evt, i); } var emgData = Device.EmgData.Create(rawEmgData); this.EmgData = emgData; var handler = EmgDataAcquired; if (handler != null) { var args = new EmgDataEventArgs( this, timestamp, emgData); handler.Invoke(this, args); } }
/// <summary> /// Initializes a new instance of the <see cref="EmgDataEventArgs"/> class. /// </summary> /// <param name="myo">The Myo that raised this event. Cannot be <c>null</c>.</param> /// <param name="timestamp">The timestamp of the event.</param> /// <param name="emgData">The EMG data that corresponds to this event. Cannot be <c>null</c>.</param> /// <exception cref="System.ArgumentNullException"> /// The exception that is thrown when <paramref name="myo"/> or <paramref name="emgData"/> is null. /// </exception> public EmgDataEventArgs(IMyo myo, DateTime timestamp, IEmgData emgData) : base(myo, timestamp) { //Contract.Requires<ArgumentNullException>(myo != null, "myo"); //Contract.Requires<ArgumentNullException>(emgData != null, "emgData"); this.EmgData = emgData; }
/// <summary> /// Initializes a new instance of the <see cref="EmgDataEventArgs"/> class. /// </summary> /// <param name="myo">The Myo that raised this event. Cannot be <c>null</c>.</param> /// <param name="timestamp">The timestamp of the event.</param> /// <param name="emgData">The EMG data that corresponds to this event. Cannot be <c>null</c>.</param> /// <exception cref="System.ArgumentNullException"> /// The exception that is thrown when <paramref name="myo"/> or <paramref name="emgData"/> is null. /// </exception> public EmgDataEventArgs(IMyo myo, DateTime timestamp, IEmgData emgData) : base(myo, timestamp) { Contract.Requires<ArgumentNullException>(myo != null, "myo"); Contract.Requires<ArgumentNullException>(emgData != null, "emgData"); this.EmgData = emgData; }
/// <summary> /// Initializes a new instance of the <see cref="EmgDataEventArgs"/> class. /// </summary> /// <param name="myo">The Myo that raised this event. Cannot be <c>null</c>.</param> /// <param name="timestamp">The timestamp of the event.</param> /// <param name="emgData">The EMG data that corresponds to this event. Cannot be <c>null</c>.</param> /// <exception cref="System.ArgumentNullException"> /// The exception that is thrown when <paramref name="myo"/> or <paramref name="emgData"/> is null. /// </exception> public EmgDataEventArgs(IMyo myo, DateTime timestamp, IEmgData emgData) : base(myo, timestamp) { this.EmgData = emgData; }