Exemple #1
0
        private void StreamDataReceived(object sender, StreamDataEventArgs e)
        {
            Console.WriteLine(e.StreamName + " data received.");
            ArrayList data = e.Data.ToObject <ArrayList>();

            // insert timestamp to datastream
            data.Insert(0, e.Time);
            if (e.StreamName == "eeg")
            {
                OnEEGDataReceived(this, data);
            }
            else if (e.StreamName == "mot")
            {
                OnMotionDataReceived(this, data);
            }
            else if (e.StreamName == "met")
            {
                OnPerfDataReceived(this, data);
            }
            else if (e.StreamName == "pow")
            {
                OnBandPowerDataReceived(this, data);
            }
            else if (e.StreamName == "com")
            {
                OnMentalDataReceived(this, data);
            }
        }
Exemple #2
0
        // Handle Event Response
        private void EventReceived(object sender, StreamDataEventArgs evt)
        {
            // Send to corresponding Controller
            int streamType  = evt.StreamType;
            int requestType = evt.RequestType;

            // if stream Type Exist
            if (_mapControllers.ContainsKey(streamType))
            {
                _mapControllers[streamType].ParseData(evt.Data, requestType);
            }
            else
            {
                Console.WriteLine("can not detect stream type" + streamType.ToString());
            }
        }
Exemple #3
0
 private void StreamDataReceived(object sender, StreamDataEventArgs e)
 {
     if (e.StreamName == "sys")
     {
         List <string> data      = e.Data.ToObject <List <string> >();
         JArray        dataEvent = e.Data;
         string        detection = dataEvent[0].ToString();
         string        eventType = dataEvent[1].ToString();
         if (detection == "mentalCommand")
         {
             if (eventType == "MC_Started")
             {
                 Console.WriteLine("Start training...");
             }
             else if (eventType == "MC_Succeeded")
             {
                 OnTrainingSucceeded(this, true);
             }
             else if (eventType == "MC_Completed" ||
                      eventType == "MC_Rejected" ||
                      eventType == "MC_DataErased" ||
                      eventType == "MC_Reset")
             {
                 _ctxClient.SetupProfile(_cortexToken, _profileName, "save", _headsetId);
             }
         }
         else if (detection == "facialExpression")
         {
             if (eventType == "FE_Started")
             {
                 Console.WriteLine("Start training...");
             }
             else if (eventType == "FE_Succeeded")
             {
                 OnTrainingSucceeded(this, true);
             }
             else if (eventType == "FE_Completed" ||
                      eventType == "FE_Rejected" ||
                      eventType == "FE_DataErased" ||
                      eventType == "FE_Reset")
             {
                 _ctxClient.SetupProfile(_cortexToken, _profileName, "save", _headsetId);
             }
         }
     }
 }
Exemple #4
0
        private void StreamDataReceived(object sender, StreamDataEventArgs evt)
        {
            // Send to corresponding Controller
            int streamType  = evt.StreamType;
            int requestType = evt.RequestType;

            switch (streamType)
            {
            case (int)StreamID.MOTION_STREAM:
                Console.WriteLine("Motion data received");
                ArrayList motionData = new ArrayList();
                JArray    jMotData   = (JArray)evt.Data["mot"];
                foreach (var item in jMotData)
                {
                    motionData.Add((float)item);
                }
                if (motionData.Count > 0)
                {
                    OnMotionDataReceived(this, new ArrayList(motionData));
                }
                break;

            case (int)StreamID.EEG_STREAM:
                Console.WriteLine("EEG data received");
                ArrayList eegData = new ArrayList();

                JArray jEEGData = (JArray)evt.Data["eeg"];
                foreach (var item in jEEGData)
                {
                    eegData.Add((float)item);
                }
                if (eegData.Count > 0)
                {
                    OnEEGDataReceived(this, new ArrayList(eegData));
                }
                break;

            case (int)StreamID.DEVICE_STREAM:
                Console.WriteLine("Device data received");
                ArrayList devData = new ArrayList();

                JArray jDevData = (JArray)evt.Data["dev"];
                foreach (var item in jDevData)
                {
                    devData.Add((float)item);
                }
                if (devData.Count > 0)
                {
                    OnDevDataReceived(this, new ArrayList(devData));
                }
                break;

            case (int)StreamID.PERF_METRICS_STREAM:
                Console.WriteLine("Performance metrics data received");
                ArrayList perfData = new ArrayList();

                JArray jPerfData = (JArray)evt.Data["met"];
                foreach (var item in jPerfData)
                {
                    perfData.Add((float)item);
                }
                if (perfData.Count > 0)
                {
                    OnPerfDataReceived(this, new ArrayList(perfData));
                }
                break;

            case (int)StreamID.SYS_STREAM:
                JArray jSysEvent = (JArray)evt.Data["sys"];
                Console.WriteLine("Sys Event received: " + jSysEvent[0] + " : " + jSysEvent[1]);
                break;

            default:
                break;
            }
        }