public int wsize = 0; //windowsize=3s EEG_Logger() { // create the engine engine = EmoEngine.Instance; engine.UserAdded += new EmoEngine.UserAddedEventHandler(engine_UserAdded_Event); // connect to Emoengine. engine.Connect(); // create a header for our output file //WriteHeader(); rawDataIdx = 0; ds = new Data_Set(); //p300값 txt파일로 string makeFolder_path = @"C:\\Users\\sohyeon\\Desktop\\"; string folderName = makeFolder_path + "p300"; f = new DirectoryInfo(folderName); f.Create(); //긍부정값 txt파일로 string folderName2 = makeFolder_path + "ne_po"; f2 = new DirectoryInfo(folderName2); f2.Create(); //eeg raw data저장 rawDict = new Dictionary <int, List <double> >(); for (int i = 0; i < 14; i++) { rawDict[i] = new List <double>(); } }
public float CognitivGetActionSkillRating(uint userId, EdkDll.EE_CognitivAction_t action) { float result = 0f; EmoEngine.errorHandler(EdkDll.EE_CognitivGetActionSkillRating(userId, action, out result)); return(result); }
public AVGPower(TextWriter infile) { engine = EmoEngine.Instance; engine.UserAdded += new EmoEngine.UserAddedEventHandler(engine_UserAdded_Event); engine.Connect(); file = infile; }
// private static EEGLogger logger; // Use this for initialization public EEGLogger() { //Debug.Log("EEGLogger!"); engine = EmoEngine.Instance; //Debug.Log(engine); threshold = 0; thresholdR = 0; readCount = 0; ThresholdSet = false; ThresholdRSet = false; for (int i = 0; i < 4; i++) { rawSignals[i] = new double[bufferSizeLimit]; } try { engine.UserAdded += new EmoEngine.UserAddedEventHandler(engine_UserAdded_Event); engine.UserRemoved += new EmoEngine.UserRemovedEventHandler(engine_UserRemoved_Event); engine.Connect(); //writeHeader(); //EmoEngine.errorHandler(EdkDll.EE_EngineConnect("Emotiv Systems-5")); //Debug.Log("engine:"+engine); } catch (Exception e) { Debug.Log(e); Debug.Log("Unable to connect!"); } // instanceCount++; }
public int ExpressivGetTrainedSignatureAvailable(uint userId) { int result = 0; EmoEngine.errorHandler(EdkDll.EE_ExpressivGetTrainedSignatureAvailable(userId, out result)); return(result); }
public uint EngineGetNumUser() { uint result = 0u; EmoEngine.errorHandler(EdkDll.EE_EngineGetNumUser(out result)); return(result); }
public uint GetVitalAlgorithm(EdkDll.EE_EmotivSuite_t suite) { uint result = 0u; EmoEngine.errorHandler(EdkDll.EE_OptimizationGetVitalAlgorithm(this.hOptimizationParam, suite, out result)); return(result); }
void EEG_Starter() { // create the engine engine = EmoEngine.Instance; engine.UserAdded += new EmoEngine.UserAddedEventHandler (engine_UserAdded_Event); }
public float CognitivGetOverallSkillRating(uint userId) { float result = 0f; EmoEngine.errorHandler(EdkDll.EE_CognitivGetOverallSkillRating(userId, out result)); return(result); }
public int CognitivGetActivationLevel(uint userId) { int result = 0; EmoEngine.errorHandler(EdkDll.EE_CognitivGetActivationLevel(userId, out result)); return(result); }
public bool OptimizationIsEnabled() { bool result = false; EmoEngine.errorHandler(EdkDll.EE_OptimizationIsEnabled(out result)); return(result); }
public OptimizationParam OptimizationGetParam() { OptimizationParam optimizationParam = new OptimizationParam(); EmoEngine.errorHandler(EdkDll.EE_OptimizationGetParam(optimizationParam.GetHandle())); return(optimizationParam); }
public void SoftwareGetVersion(out string pszVersionOut, out uint pBuildNumOut) { StringBuilder stringBuilder = new StringBuilder(128); EmoEngine.errorHandler(EdkDll.EE_SoftwareGetVersion(stringBuilder, (uint)stringBuilder.Capacity, out pBuildNumOut)); pszVersionOut = stringBuilder.ToString(); }
public uint CognitivGetSignatureCacheSize(uint userId) { uint result = 0u; EmoEngine.errorHandler(EdkDll.EE_CognitivGetSignatureCacheSize(userId, out result)); return(result); }
public uint HardwareGetVersion(uint userId) { uint result; EmoEngine.errorHandler(EdkDll.EE_HardwareGetVersion(userId, out result)); return(result); }
public Profile GetUserProfile(uint userId) { Profile profile = new Profile(); EmoEngine.errorHandler(EdkDll.EE_GetUserProfile(userId, profile.GetHandle())); return(profile); }
// Use this for initialization void Start() { DontDestroyOnLoad(transform.gameObject); tracking = true; if (tracking) { engine = EmoEngine.Instance; engine.EmoEngineConnected += new EmoEngine.EmoEngineConnectedEventHandler(engine_EmoEngineConnected); engine.EmoEngineDisconnected += new EmoEngine.EmoEngineDisconnectedEventHandler(engine_EmoEngineDisconnected); engine.UserAdded += new EmoEngine.UserAddedEventHandler(engine_UserAdded); engine.UserRemoved += new EmoEngine.UserRemovedEventHandler(engine_UserRemoved); engine.EmoStateUpdated += new EmoEngine.EmoStateUpdatedEventHandler(engine_EmoStateUpdated); engine.EmoEngineEmoStateUpdated += new EmoEngine.EmoEngineEmoStateUpdatedEventHandler(engine_EmoEngineEmoStateUpdated); engine.AffectivEmoStateUpdated += new EmoEngine.AffectivEmoStateUpdatedEventHandler(engine_AffectivEmoStateUpdated); engine.RemoteConnect("127.0.0.1", 3008); } }
public uint CognitivGetTrainedSignatureActions(uint userId) { uint result = 0u; EmoEngine.errorHandler(EdkDll.EE_CognitivGetTrainedSignatureActions(userId, out result)); return(result); }
static void Main(string[] args) { Console.WriteLine("==================================================================================="); Console.WriteLine("Example to get the average band power for a specific channel from the latest epoch."); Console.WriteLine("==================================================================================="); AverageBandPowers p = new AverageBandPowers(); // create the engine EmoEngine engine = EmoEngine.Instance; engine.UserAdded += new EmoEngine.UserAddedEventHandler(engine_UserAdded_Event); engine.Connect(); string header = "Theta, Alpha, Low_beta, High_beta, Gamma";; file.WriteLine(header); file.WriteLine(""); EdkDll.IEE_DataChannel_t[] channelList = new EdkDll.IEE_DataChannel_t[5] { EdkDll.IEE_DataChannel_t.IED_AF3, EdkDll.IEE_DataChannel_t.IED_AF4, EdkDll.IEE_DataChannel_t.IED_T7, EdkDll.IEE_DataChannel_t.IED_T8, EdkDll.IEE_DataChannel_t.IED_O1 }; while (true) { engine.ProcessEvents(10); if (userID < 0) { continue; } if (Console.KeyAvailable) { break; } double[] alpha = new double[1]; double[] low_beta = new double[1]; double[] high_beta = new double[1]; double[] gamma = new double[1]; double[] theta = new double[1]; for (int i = 0; i < 5; i++) { engine.IEE_GetAverageBandPowers((uint)userID, channelList[i], theta, alpha, low_beta, high_beta, gamma); file.Write(theta[0] + ","); file.Write(alpha[0] + ","); file.Write(low_beta[0] + ","); file.Write(high_beta[0] + ","); file.WriteLine(gamma[0] + ","); Console.WriteLine("Theta: " + theta[0]); } } file.Close(); engine.Disconnect(); }
public int ExpressivGetThreshold(uint userId, EdkDll.EE_ExpressivAlgo_t algoName, EdkDll.EE_ExpressivThreshold_t thresholdName) { int result = 0; EmoEngine.errorHandler(EdkDll.EE_ExpressivGetThreshold(userId, algoName, thresholdName, out result)); return(result); }
public uint ExpressivGetTrainingTime(uint userId) { uint result = 0u; EmoEngine.errorHandler(EdkDll.EE_ExpressivGetTrainingTime(userId, out result)); return(result); }
//static void keyHandler(ConsoleKey key) //{ // switch (key) // { // case ConsoleKey.F1: // ulong action1 = (ulong)EdkDll.IEE_MentalCommandAction_t.MC_LEFT; // ulong action2 = (ulong)EdkDll.IEE_MentalCommandAction_t.MC_RIGHT; // ulong listAction = action1 | action2; // EmoEngine.Instance.MentalCommandSetActiveActions(0, listAction); // Console.WriteLine("Setting MentalCommand active actions for user"); // break; // case ConsoleKey.F2: // EmoEngine.Instance.MentalCommandSetTrainingAction(0, EdkDll.IEE_MentalCommandAction_t.MC_NEUTRAL); // EmoEngine.Instance.MentalCommandSetTrainingControl(0, EdkDll.IEE_MentalCommandTrainingControl_t.MC_START); // break; // case ConsoleKey.F3: // EmoEngine.Instance.MentalCommandSetTrainingAction(0, EdkDll.IEE_MentalCommandAction_t.MC_RIGHT); // EmoEngine.Instance.MentalCommandSetTrainingControl(0, EdkDll.IEE_MentalCommandTrainingControl_t.MC_START); // break; // case ConsoleKey.F4: // EmoEngine.Instance.MentalCommandSetTrainingAction(0, EdkDll.IEE_MentalCommandAction_t.MC_LEFT); // EmoEngine.Instance.MentalCommandSetTrainingControl(0, EdkDll.IEE_MentalCommandTrainingControl_t.MC_START); // break; // case ConsoleKey.F5: // EmoEngine.Instance.MentalCommandSetActivationLevel(0, 2); // Console.WriteLine("MentalCommand Activateion level set to {0}", EmoEngine.Instance.MentalCommandGetActivationLevel(0)); // break; // case ConsoleKey.F6: // Console.WriteLine("MentalCommand Activateion level is {0}", EmoEngine.Instance.MentalCommandGetActivationLevel(0)); // break; // case ConsoleKey.F7: // Console.WriteLine("Get the current overall skill rating: {0}", EmoEngine.Instance.MentalCommandGetOverallSkillRating(0)); // break; // case ConsoleKey.F8: // EmoEngine.Instance.FacialExpressionSetTrainingAction(0, EdkDll.IEE_FacialExpressionAlgo_t.FE_CLENCH); // EmoEngine.Instance.FacialExpressionSetTrainingControl(0, EdkDll.IEE_FacialExpressionTrainingControl_t.FE_START); // break; // case ConsoleKey.F9: // String version; // UInt32 buildNum; // EmoEngine.Instance.SoftwareGetVersion(out version, out buildNum); // Console.WriteLine("Software Version: {0}, {1}", version, buildNum); // break; // case ConsoleKey.F10: // enableLoger = !enableLoger; // break; // default: // break; // } //} public static void click() { EmoEngine engine = EmoEngine.Instance; engine.EmoEngineConnected += new EmoEngine.EmoEngineConnectedEventHandler(engine_EmoEngineConnected); engine.EmoEngineDisconnected += new EmoEngine.EmoEngineDisconnectedEventHandler(engine_EmoEngineDisconnected); engine.FacialExpressionEmoStateUpdated += new EmoEngine.FacialExpressionEmoStateUpdatedEventHandler(engine_FacialExpressionEmoStateUpdated); engine.Connect(); // Console.WriteLine("==========================================================================="); //Console.WriteLine("==========================================================================="); //ConsoleKeyInfo cki = new ConsoleKeyInfo(); try { engine.ProcessEvents(3); } catch (EmoEngineException e) { Console.WriteLine("{0}", e.ToString()); } catch (Exception e) { Console.WriteLine("{0}", e.ToString()); } engine.Disconnect(); }
void engine_UserAdded_Event(object sender, EmoEngineEventArgs e) { //Thread t = Thread.CurrentThread; //Debug.Log(t.Name + t.ThreadState); // t.Suspend(); //t.Yield();// Suspend(); Debug.Log("Dongle Plugged!!!!!!!"); userID = (int)e.userId; try { int errorCode = EdkDll.EE_DataAcquisitionEnable((uint)userID, true); //engine.DataAcquisitionEnable((uint)userID, true); EmoEngine.errorHandler((Int32)errorCode); Debug.Log("errorCode = " + errorCode); //enable the data aquisition for this user //[DllImport("edk.dll", EntryPoint = "EE_DataAcquisitionEnable")] // static extern Int32 Unmanaged_EE_DataAcquisitionEnable(UInt32 userId, Boolean enable); } catch (Exception exp) { Debug.Log("error"); Debug.Log(exp); } try { bool result; int err2 = EdkDll.EE_DataAcquisitionIsEnabled((uint)userID, out result); Debug.Log(err2); EmoEngine.errorHandler((Int32)err2); } catch (Exception exp) { Debug.Log("error"); Debug.Log(exp); } EmoState emoState = new EmoState(); EdkDll.EE_EEG_ContactQuality_t[] qualities = emoState.GetContactQualityFromAllChannels(); int i; for (i = 0; i < qualities.Length; i++) { Debug.Log(qualities[i]); } // EE_DataAcquisitionIsEnabled(uint userId, out bool pEnableOut); //engine.DataAcquisitionEnable((uint)userID, true); uint sampleRate = engine.DataGetSamplingRate((uint)userID); Debug.Log(sampleRate); //ask for up to 1s of buffered data engine.EE_DataSetBufferSizeInSec(1); int num = (int)engine.EngineGetNumUser(); Debug.Log("user number = " + num); }
public void OptimizationEnable(OptimizationParam param) { if (param == null) { throw new NullReferenceException(); } EmoEngine.errorHandler(EdkDll.EE_OptimizationEnable(param.GetHandle())); }
public void SetUserProfile(uint userId, byte[] profileBytes) { if (profileBytes == null) { throw new NullReferenceException(); } EmoEngine.errorHandler(EdkDll.EE_SetUserProfile(userId, profileBytes, (uint)profileBytes.Length)); }
//- quit and disconnect the device private void OnApplicationQuit() { if (engine != null) { engine.Disconnect(); engine = null; } }
private void DisconnectEmoEngine() { if (emoEngine != null) { emoEngine.Disconnect(); emoEngine = null; } }
void Start() { engine = EmoEngine.Instance; engine.Connect(); engine.UserRemoved += onUserRemoved; engine.UserAdded += onUserAdded; StartCoroutine(process()); }
public bool startRealtimeSVM(string id, string name) { EmoEngine engine = EmoEngine.Instance; engine.UserAdded += new EmoEngine.UserAddedEventHandler(engine_UserAdded_Event); engine.FacialExpressionEmoStateUpdated += new EmoEngine.FacialExpressionEmoStateUpdatedEventHandler(engine_FacialExpressionEmoStateUpdated); engine.Connect(); EdkDll.IEE_DataChannel_t[] channelList = new EdkDll.IEE_DataChannel_t[7] { EdkDll.IEE_DataChannel_t.IED_AF3, EdkDll.IEE_DataChannel_t.IED_AF4, EdkDll.IEE_DataChannel_t.IED_T7, EdkDll.IEE_DataChannel_t.IED_T8, EdkDll.IEE_DataChannel_t.IED_O1, EdkDll.IEE_DataChannel_t.IED_GYROX, EdkDll.IEE_DataChannel_t.IED_GYROY }; if (!ready) { svmscale.buildSVMCorpusUpdated(name); //svmscale.scaleSVMData(name); ready = svm.buildSVMCorpus(name); startRealtimeSVM(id, name); } Thread newThread; int itr = 0; double[] alpha = new double[1]; double[] low_beta = new double[1]; double[] high_beta = new double[1]; double[] gamma = new double[1]; double[] theta = new double[1]; double[] data = new double[25]; while (ready) { itr++; engine.ProcessEvents(2); if (userID < 0) { continue; } for (int i = 0, j = 0; i < 5; i++) { engine.IEE_GetAverageBandPowers((uint)userID, channelList[i], theta, alpha, low_beta, high_beta, gamma); data[j++] = theta[0]; data[j++] = alpha[0]; data[j++] = low_beta[0]; data[j++] = high_beta[0]; data[j++] = gamma[0]; } //up simple data taken form karrarUp.csv //data = new double[] { 4.651620563, 5.212359266, 10.90409395, 5.157308481, 4.170539408, 5.10950104, 6.035994062, //[ 2.254629381, 1.60659665, 1.328094785, 1.882520841, 1.027082428, 2.57410163, 2.209505082, 1.17652227, 0.9200791, 0.524185866, 2.047865372, 1.76506681, 1.091739745, 0.690766561, 0.820688245, 1.643871005, 5.476966707, 1.084435047, 1.055108772, 0.556177084, 335.9026309, 186.3244237, 140.337729, 67.65089061, 25.64029729 ]; if (data[0] != 0 && data[24] != 0) { newThread = new Thread(() => Form1.Instance.moveTestObject(svm.svmRealTimeTest(data))); newThread.Start(); } Thread.Sleep(250); //ready = false; } return(ready); }
public byte[] GetBytes() { uint num = 0u; EmoEngine.errorHandler(EdkDll.EE_GetUserProfileSize(this.hProfile, out num)); byte[] array = new byte[num]; EmoEngine.errorHandler(EdkDll.EE_GetUserProfileBytes(this.hProfile, array, num)); return(array); }
public void disconnect() { #region Emotiv try { engine.Disconnect(); } catch {} engine = null; #endregion #region EmoClient //engineClient.StopDataPolling(); #endregion }
public void connect() { #region Emotiv if (engine == null) engine = EmoEngine.Instance; engine.EmoEngineConnected += new EmoEngine.EmoEngineConnectedEventHandler(engine_EmoEngineConnected); engine.UserAdded += new EmoEngine.UserAddedEventHandler(engine_userAdded_event); engine.CognitivEmoStateUpdated += new EmoEngine.CognitivEmoStateUpdatedEventHandler(engine_CognitiveEmoStateUpdated); engine.AffectivEmoStateUpdated += new EmoEngine.AffectivEmoStateUpdatedEventHandler(engine_AffectivEmoStateUpdated); engine.Connect(); #endregion Emotiv #region EmoClient /*EmoEngine.Instance.UserAdded += new EmoEngine.UserAddedEventHandler(engine_userAdded_event); engineClient.StartEmoEngine();*/ #endregion EmoClient }
// Use this for initialization void Start() { DontDestroyOnLoad(transform.gameObject); tracking = true; if (tracking) { engine = EmoEngine.Instance; engine.EmoEngineConnected += new EmoEngine.EmoEngineConnectedEventHandler(engine_EmoEngineConnected); engine.EmoEngineDisconnected += new EmoEngine.EmoEngineDisconnectedEventHandler(engine_EmoEngineDisconnected); engine.UserAdded += new EmoEngine.UserAddedEventHandler(engine_UserAdded); engine.UserRemoved += new EmoEngine.UserRemovedEventHandler(engine_UserRemoved); engine.EmoStateUpdated += new EmoEngine.EmoStateUpdatedEventHandler(engine_EmoStateUpdated); engine.EmoEngineEmoStateUpdated += new EmoEngine.EmoEngineEmoStateUpdatedEventHandler(engine_EmoEngineEmoStateUpdated); engine.AffectivEmoStateUpdated += new EmoEngine.AffectivEmoStateUpdatedEventHandler(engine_AffectivEmoStateUpdated); engine.RemoteConnect("127.0.0.1",3008); } }
/* * Create instance of EmoEngine and set up his handlers for * user events, connection events and mental command training events. * Init the connection */ void Awake() { engine = EmoEngine.Instance; engine.UserAdded += new EmoEngine.UserAddedEventHandler (UserAddedEvent); engine.UserRemoved += new EmoEngine.UserRemovedEventHandler (UserRemovedEvent); engine.EmoEngineConnected += new EmoEngine.EmoEngineConnectedEventHandler (EmotivConnected); engine.EmoEngineDisconnected += new EmoEngine.EmoEngineDisconnectedEventHandler (EmotivDisconnected); engine.MentalCommandTrainingStarted += new EmoEngine.MentalCommandTrainingStartedEventEventHandler (TrainingStarted); engine.MentalCommandTrainingSucceeded += new EmoEngine.MentalCommandTrainingSucceededEventHandler (TrainingSucceeded); engine.MentalCommandTrainingCompleted += new EmoEngine.MentalCommandTrainingCompletedEventHandler (TrainingCompleted); engine.MentalCommandTrainingRejected += new EmoEngine.MentalCommandTrainingRejectedEventHandler (TrainingRejected); engine.MentalCommandTrainingReset += new EmoEngine.MentalCommandTrainingResetEventHandler (TrainingReset); engine.Connect (); }