Example #1
0
        private void connectButton_Click(object sender, EventArgs e)
        {
            string user    = UsernameTextBox.Text.Trim();
            string pass    = PasswordTextBox.Text.Trim();
            string profile = ProfileTextBox.Text.Trim();

            ConnectionLabel.Text = "Connecting...";
            device = new EPOCEmotivDevice(user, pass, profile);

            bool   connected = true;
            string error     = "";

            device.OnConnectAttempted += (c, em) => { connected = c; error = em; };
            device.Connect();

            if (connected)
            {
                ConnectionLabel.Text = "Device connected";
            }
            else
            {
                MessageBox.Show("Unable to connect device: " + error, "Connection Error",
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
                device = null;

                ConnectionLabel.Text = "Failed to connect device. Try again";
            }
        }
 protected void deviceSetup(int a)
 {
     if (Start_Screen.username == null)
     {
         device = new RandomEmotivDevice(); //DisplayManager.PopUpVirtualUnityDevice();
         Start_Screen.profile = "Testing";
     }
     else if (Start_Screen.username != null)
     {
         device = new EPOCEmotivDevice(Start_Screen.username, Start_Screen.password, Start_Screen.profile);
     }
 }
Example #3
0
        protected override IEmotivDevice CreateDevice()
        {
            if (DeviceInstance == null)
            {
                DeviceInstance = base.CreateDevice();

                bool suc = false;
                DeviceInstance.OnConnectAttempted += (b, m) => { suc = b; };
                DeviceInstance.Connect();

                if (suc == false)
                {
                    throw new NullEmotivDeviceException();
                }
            }

            return(DeviceInstance);
        }
        /// <summary>
        /// Creates a reader with a target command, interval, and threshhold to report average accuracry per interval
        /// </summary>
        /// <param name="device"></param>
        /// <param name="target"></param>
        /// <param name="intervalMs"></param>
        /// <param name="threshHold"></param>
        public EmotivAnalyticReader(IEmotivDevice device, EmotivCommandType target, long intervalMs, float threshHold) : this(device)
        {
            this.TargetCommand = target;

            this.Interval   = intervalMs;
            this.ThreshHold = threshHold;

            IntervalTimer           = new Timer(intervalMs);
            IntervalTimer.AutoReset = true;

            //reset list and enables  'ReadingState' to return a value
            IntervalTimer.Elapsed += (o, e) =>
            {
                //unlock loop in 'ReadingState'
                ShouldReturn = true;
            };

            //trigger the timer
            OnStart += () => { IntervalTimer.Enabled = true; };
        }
        /// <summary>
        /// Creates device either to random or Epoc device and insures connectivity.
        /// Call 'OnSuccess' when connection suceesd.
        /// </summary>
        public void Connect()
        {
            try
            {
                if (IsRandom)
                {
                    Device = new RandomEmotivDevice();
                }
                else
                {
                    Device = new EPOCEmotivDevice(Username.text, Password.text, Profile.text);
                }

                string error = "";
                bool   suc   = true;

                Device.OnConnectAttempted += (b, m) => { error = m; suc = b; };

                Device.Connect();

                if (suc)
                {
                    title.text = "Connected!";
                    OnSucuess.Invoke();
                }
                else
                {
                    title.text = error;
                }
            }
            catch (Exception e)
            {
                title.text = e.ToString();
                Crashlytics.RecordCustomException("Device Connection Exception", "thrown exception", e.StackTrace);
            }
        }
Example #6
0
 /// <summary>
 /// Creates and attaches Timemline to reader
 /// </summary>
 /// <param name="Device"></param>
 /// <param name="Reader"></param>
 public override void Setup(IEmotivDevice Device, IEmotivReader Reader)
 {
     Timeline       = new Timeline <IEmotivState>();
     Reader.OnRead += e => Timeline.Register(e);
 }
Example #7
0
        /// <summary>
        /// Connect a device on a thread
        /// </summary>
        /// <param name="device"></param>
        public EmotivDeviceConnector(IEmotivDevice device)
        {
            Device = device;

            ConnectingThread = new Thread(device.Connect);
        }
 /// <summary>
 /// Sets up device from creation.
 /// <see cref="CreateDevice"/>
 /// </summary>
 public override void Setup()
 {
     Content = CreateDevice();
 }
 /// <summary>
 /// Default
 /// </summary>
 /// <param name="device"></param>
 private EmotivAnalyticReader(IEmotivDevice device) : base(device)
 {
     ShouldReturn = false;
 }
Example #10
0
        private void ConnectionLabel_Click(object sender, EventArgs e)
        {
            device = new RandomEmotivDevice();

            ConnectionLabel.Text = "Random Device Connected!";
        }
Example #11
0
 /// <summary>
 /// Creates device
 /// </summary>
 /// <param name="device"></param>
 /// <returns></returns>
 protected abstract IEmotivReader CreateReader(IEmotivDevice device);
Example #12
0
 /// <summary>
 /// Sets up created device
 /// </summary>
 /// <see cref="CreateReader(IEmotivDevice)"/>
 /// <param name="device"></param>
 public override void SetUp(IEmotivDevice device)
 {
     Content = CreateReader(device);
 }
Example #13
0
 public EmotivReader(IEmotivDevice device) : base(device)
 {
 }
Example #14
0
 public void Start()
 {
     LoginWindow.OnLoginedIn += (d) => DeviceInstance = d;
 }
 public BasicEmotivReader(IEmotivDevice device, bool ShouldReadNull = true) : base(device)
 {
     this.ShouldReadNull = ShouldReadNull;
 }
 /// <summary>
 /// Sets up a reader.
 /// </summary>
 /// <param name="device"></param>
 public abstract void SetUp(IEmotivDevice device);
 /// <summary>
 /// Sets up interpretation.
 /// </summary>
 /// <param name="Device"></param>
 /// <param name="Reader"></param>
 public abstract void Setup(IEmotivDevice Device, IEmotivReader Reader);
Example #18
0
 /// <summary>
 /// Create device
 /// </summary>
 /// <param name="device"></param>
 /// <returns></returns>
 protected override IEmotivReader CreateReader(IEmotivDevice device)
 {
     return(new BasicEmotivReader(device, AllowNull));
 }