/// <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);
            }
        }
Example #2
0
        /// <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);
            }
        }
Example #3
0
        /// <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;
        }
Example #4
0
        /// <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;
        }
Example #5
0
 /// <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;
 }