public static void EnableCognitivAction(EdkDll.EE_CognitivAction_t cognitivAction, bool iBool) { for (int i = 1; i < EmoCognitiv.cognitivActionList.Length; i++) { if (cognitivAction == EmoCognitiv.cognitivActionList[i]) { EmoCognitiv.cognitivActionsEnabled[i] = iBool; Debug.Log("CognitivEnabledList has changed"); } } }
public static int ES_GetContactQualityFromAllChannels(IntPtr state, out EdkDll.EE_EEG_ContactQuality_t[] contactQuality) { int num = EdkDll.ES_GetNumContactQualityChannels(state); contactQuality = new EdkDll.EE_EEG_ContactQuality_t[num]; return EdkDll.Unmanaged_ES_GetContactQualityFromAllChannels(state, contactQuality, (uint)contactQuality.Length); }
public static int EE_ResetDetection(uint userId, EdkDll.EE_EmotivSuite_t suite, uint detectionBitVector) { return EdkDll.Unmanged_EE_ResetDetection(userId, suite, detectionBitVector); }
public static int EE_OptimizationGetVitalAlgorithm(IntPtr hParam, EdkDll.EE_EmotivSuite_t suite, out uint pVitalAlgorithmBitVectorOut) { return EdkDll.Unmanged_EE_OptimizationGetVitalAlgorithm(hParam, suite, out pVitalAlgorithmBitVectorOut); }
public static int EE_ExpressivSetTrainingControl(uint userId, EdkDll.EE_ExpressivTrainingControl_t control) { return EdkDll.Unmanged_EE_ExpressivSetTrainingControl(userId, control); }
public static int EE_ExpressivSetThreshold(uint userId, EdkDll.EE_ExpressivAlgo_t algoName, EdkDll.EE_ExpressivThreshold_t thresholdName, int value) { return EdkDll.Unmanged_EE_ExpressivSetThreshold(userId, algoName, thresholdName, value); }
private void myfunc(int i) { if (this.check_button1) { if (this.isEnable) { this.DrawGUI(); } GUI.skin = this.MySkin; GUI.Label(new Rect(250f, 90f, 150f, 35f), "Look left/right"); GUI.Label(new Rect(250f, 120f, 150f, 35f), "Blink"); GUI.Label(new Rect(250f, 150f, 150f, 35f), "Left wink"); GUI.Label(new Rect(250f, 180f, 150f, 35f), "Right wink"); GUI.Label(new Rect(250f, 210f, 150f, 35f), "Raise brow"); GUI.Label(new Rect(250f, 240f, 150f, 35f), "Clench teeth"); GUI.Label(new Rect(250f, 270f, 150f, 35f), "Smile"); GUI.Label(new Rect(250f, 300f, 150f, 35f), "Right Smirk"); GUI.Label(new Rect(250f, 330f, 150f, 35f), "Left Smirk"); GUI.skin = this.skin4; try { float num = GUI.HorizontalSlider(new Rect(350f, 100f, 200f, 20f), this.sp.look, 0f, 10f); if (num != this.sp.look) { this.sp.look = num; Debug.Log("Look:" + this.sp.look); EdkDll.EE_ExpressivSetThreshold(0u, EdkDll.EE_ExpressivAlgo_t.EXP_HORIEYE, EdkDll.EE_ExpressivThreshold_t.EXP_SENSITIVITY, (int)(100f * this.sp.look)); } num = GUI.HorizontalSlider(new Rect(350f, 130f, 200f, 20f), this.sp.blink, 0f, 10f); if (num != this.sp.blink) { this.sp.blink = num; EdkDll.EE_ExpressivSetThreshold(0u, EdkDll.EE_ExpressivAlgo_t.EXP_BLINK, EdkDll.EE_ExpressivThreshold_t.EXP_SENSITIVITY, (int)(100f * this.sp.blink)); } num = GUI.HorizontalSlider(new Rect(350f, 160f, 200f, 20f), this.sp.wink_l, 0f, 10f); if (num != this.sp.wink_l) { this.sp.wink_l = num; EdkDll.EE_ExpressivSetThreshold(0u, EdkDll.EE_ExpressivAlgo_t.EXP_WINK_LEFT, EdkDll.EE_ExpressivThreshold_t.EXP_SENSITIVITY, (int)(100f * this.sp.wink_l)); } num = GUI.HorizontalSlider(new Rect(350f, 190f, 200f, 20f), this.sp.wink_r, 0f, 10f); if (num != this.sp.wink_r) { this.sp.wink_r = num; EdkDll.EE_ExpressivSetThreshold(0u, EdkDll.EE_ExpressivAlgo_t.EXP_WINK_RIGHT, EdkDll.EE_ExpressivThreshold_t.EXP_SENSITIVITY, (int)(100f * this.sp.wink_r)); } num = GUI.HorizontalSlider(new Rect(350f, 220f, 200f, 20f), this.sp.brow, 0f, 10f); if (num != this.sp.brow) { this.sp.brow = num; EdkDll.EE_ExpressivSetThreshold(0u, EdkDll.EE_ExpressivAlgo_t.EXP_EYEBROW, EdkDll.EE_ExpressivThreshold_t.EXP_SENSITIVITY, (int)(100f * this.sp.brow)); } num = GUI.HorizontalSlider(new Rect(350f, 250f, 200f, 20f), this.sp.teeth, 0f, 10f); if (num != this.sp.teeth) { this.sp.teeth = num; EdkDll.EE_ExpressivSetThreshold(0u, EdkDll.EE_ExpressivAlgo_t.EXP_CLENCH, EdkDll.EE_ExpressivThreshold_t.EXP_SENSITIVITY, (int)(100f * this.sp.teeth)); } num = GUI.HorizontalSlider(new Rect(350f, 280f, 200f, 20f), this.sp.smile, 0f, 10f); if (num != this.sp.smile) { this.sp.smile = num; EdkDll.EE_ExpressivSetThreshold(0u, EdkDll.EE_ExpressivAlgo_t.EXP_SMILE, EdkDll.EE_ExpressivThreshold_t.EXP_SENSITIVITY, (int)(100f * this.sp.smile)); } num = GUI.HorizontalSlider(new Rect(350f, 310f, 200f, 20f), this.sp.smirk_r, 0f, 10f); if (num != this.sp.smirk_r) { this.sp.smirk_r = num; EdkDll.EE_ExpressivSetThreshold(0u, EdkDll.EE_ExpressivAlgo_t.EXP_SMIRK_RIGHT, EdkDll.EE_ExpressivThreshold_t.EXP_SENSITIVITY, (int)(100f * this.sp.smirk_r)); } num = GUI.HorizontalSlider(new Rect(350f, 340f, 200f, 20f), this.sp.smirk_l, 0f, 10f); if (num != this.sp.smirk_l) { this.sp.smirk_l = num; EdkDll.EE_ExpressivSetThreshold(0u, EdkDll.EE_ExpressivAlgo_t.EXP_SMIRK_LEFT, EdkDll.EE_ExpressivThreshold_t.EXP_SENSITIVITY, (int)(100f * this.sp.smirk_l)); } } catch (Exception var_1_575) { Debug.Log("Khoa khoa khoa"); string currentDirectory = Directory.GetCurrentDirectory(); string path = currentDirectory + "\\setting.xml"; if (File.Exists(path)) { File.Delete(path); } } } else { GUI.skin = this.skin5; } if (GUI.Button(new Rect(50f, 55f, 85f, 32f), "Headset")) { this.check_button1 = true; this.check_button2 = false; } if (this.check_button2) { GUI.DrawTexture(new Rect(34f, 120f, 200f, 200f), this.round); this.r = this.largeround * 200f / 12f; GUI.DrawTexture(new Rect((float)((int)(134f - this.r / 2f)), (float)((int)(220f - this.r / 2f)), (float)((int)this.r), (float)((int)this.r)), this.smallround); GUI.DrawTexture(new Rect((float)(124 + EmoGyroData.GyroX / 16), (float)(210 + EmoGyroData.GyroY / 16), 20f, 20f), this.blackButt); GUI.skin = this.MySkin; GUI.Label(new Rect(360f, 90f, 100f, 20f), "Gyro sensitivity"); GUI.skin = this.skin6; this.largeround = GUI.VerticalSlider(new Rect(400f, 120f, 20f, 200f), this.largeround, 12f, 4f); } else { GUI.skin = this.skin7; } if (GUI.Button(new Rect(133f, 55f, 85f, 32f), "Gyro")) { this.check_button2 = true; this.check_button1 = false; } GUI.skin = this.skin8; if (GUI.Button(new Rect(525f, 40f, 40f, 40f), string.Empty)) { this.check = false; this.check_control = false; this.check_button1 = true; this.check_button2 = false; } GUI.DragWindow(); }
private static extern void Unmanaged_SetMultiActiveActions(int UserID, EdkDll.EE_CognitivAction_t[] activeActions, int numOfActions);
static void licenseInformation() { Console.WriteLine("Get License Information"); Console.WriteLine(); EdkDll.IEE_LicenseInfos_t licenseInfos = new EdkDll.IEE_LicenseInfos_t(); int result = EdkDll.IEE_LicenseInformation(ref licenseInfos); if (result == EdkDll.EDK_OK) { Console.WriteLine("Active/Debit successfully.");//Activate/Debit actually successfully when get license information without error Console.WriteLine(); Console.WriteLine("Date From : " + FromUnixTime(licenseInfos.date_from).ToString(format)); Console.WriteLine("Date To : " + FromUnixTime(licenseInfos.date_to).ToString(format)); Console.WriteLine(); Console.WriteLine(); Console.WriteLine("Grace Period from " + FromUnixTime(licenseInfos.soft_limit_date).ToString(format) + " to " + FromUnixTime(licenseInfos.hard_limit_date).ToString(format)); Console.WriteLine(); Console.WriteLine("Number of seats : " + licenseInfos.seat_count); Console.WriteLine(); Console.WriteLine("Total Quotas : " + licenseInfos.quota); Console.WriteLine("Total quotas used : " + licenseInfos.usedQuota); Console.WriteLine(); switch ((int)licenseInfos.scopes) { case (int)EdkDll.IEE_LicenseType_t.IEE_EEG: Console.WriteLine("License type : EEG"); Console.WriteLine(); break; case (int)EdkDll.IEE_LicenseType_t.IEE_EEG_PM: Console.WriteLine("License type : EEG + PM"); Console.WriteLine(); break; case (int)EdkDll.IEE_LicenseType_t.IEE_PM: Console.WriteLine("License type : PM"); Console.WriteLine(); break; default: Console.WriteLine("License type : No type"); Console.WriteLine(); break; } } else { switch (result) { case EdkDll.EDK_LICENSE_EXPIRED: Console.WriteLine("The license has expired"); Console.WriteLine(); Console.WriteLine("From Date : " + FromUnixTime(licenseInfos.date_from).ToString(format)); Console.WriteLine("To Date : " + FromUnixTime(licenseInfos.date_to).ToString(format)); Console.WriteLine(); break; case EdkDll.EDK_LICENSE_DEVICE_LIMITED: Console.WriteLine("Device limited"); Console.WriteLine(); break; case EdkDll.EDK_OVER_QUOTA: Console.WriteLine("Device limited"); Console.WriteLine(); break; case EdkDll.EDK_NO_ACTIVE_LICENSE: Console.WriteLine("No active license"); Console.WriteLine(); break; case EdkDll.EDK_LICENSE_ERROR: Console.WriteLine("The license is error"); Console.WriteLine(); break; default: Console.WriteLine("Unknown Error with Errorcode: " + result); Console.WriteLine(); break; } Console.WriteLine(); } }
public void AddActiveCommand(EdkDll.IEE_MentalCommandAction_t command) { EdkDll.IEE_MentalCommandSetActiveActions((uint)engineUserID, (ulong)command); //GetActiveActions(); }
public void ResetTraining(EdkDll.IEE_MentalCommandAction_t command) { EdkDll.IEE_MentalCommandSetTrainingAction((uint)engineUserID, command); EdkDll.IEE_MentalCommandSetTrainingControl((uint)engineUserID, EdkDll.IEE_MentalCommandTrainingControl_t.MC_RESET); }
public void NoneTrainingControlCommand() { EdkDll.IEE_MentalCommandSetTrainingControl((uint)engineUserID, EdkDll.IEE_MentalCommandTrainingControl_t.MC_NONE); }
public void EraseTraining() { EdkDll.IEE_MentalCommandSetTrainingControl((uint)engineUserID, EdkDll.IEE_MentalCommandTrainingControl_t.MC_ERASE); }
public void RejectTraining() { EdkDll.IEE_MentalCommandSetTrainingControl((uint)engineUserID, EdkDll.IEE_MentalCommandTrainingControl_t.MC_REJECT); }
private static extern int Unmanaged_EE_CognitivSetCurrentLevel(short userId, EdkDll.EE_CognitivLevel_t level, EdkDll.EE_CognitivAction_t level1Action, EdkDll.EE_CognitivAction_t level2Action, EdkDll.EE_CognitivAction_t level3Action, EdkDll.EE_CognitivAction_t level4Action);
static void Engine_EmoStateUpdated(object sender, EmoStateUpdatedEventArgs e) { EmoState es = e.emoState; hsOn = es.GetHeadsetOn(); My_Program.myForm.textBox2.Text = $"ESUpdate."; My_Program.myForm.textBox7.Text = ""; //If HS is swiched OFF during run, it does not changes, so it only reacts //on switching HS ON for the first time After UserAdded Event only. Useless. My_Program.myForm.textBox7.Text = $"{hsOn}"; //Getting events is useless or impossible. None of the below doesn't work as promised! // es.GetHandle() returns the State of the event. EdkDll.IEE_Event_t thisEvent = EdkDll.IEE_EmoEngineEventGetType(es.GetHandle()); //My_Program.myForm.textBox7.Text = $"{EdkDll.IEE_EmoEngineEventGetType(myEvent)}"; //My_Program.myForm.textBox7.Text = $"{EdkDll.IEE_EngineGetNextEvent(myEvent)}"; //My_Program.myForm.textBox7.Text = $"{EdkDll.IEE_EngineGetNextEvent(es.GetHandle())}"; //EdkDll.IEE_Event_t eventType = EdkDll.IEE_EmoEngineEventGetType(hEvent); //My_Program.myForm.textBox1.Text = $"State:{myState};Now:{thisEvent.GetTypeCode()}"; float timeFromStart = es.GetTimeFromStart(); My_Program.myForm.textBox6.Text = $"{timeFromStart}"; //When USB dongle plugged in, WiFi for some reason jumps to 2, even if HeadSet if OFF. //but if HS if off later, this doesn't change. if (hsOn != 0) { EdkDll.IEE_SignalStrength_t signalStrength = es.GetWirelessSignalStatus(); WiFi = (int)signalStrength; //My_Program.myForm.textBox4.Text = $"{WiFi}"; //The only way to reset headset ON switch if headset is OFF!!! if (WiFi == 0) { hsOn = 0; My_Program.myForm.textBox7.Text = $"{hsOn}"; } else { My_Program.myForm.textBox7.Text = $"{hsOn}"; Int32 chargeLevel = 0; Int32 maxChargeLevel = 0; es.GetBatteryChargeLevel(out chargeLevel, out maxChargeLevel); My_Program.myForm.textBox5.Text = $"{chargeLevel}"; //string myStr = ""; //EdkDll.IEE_InputChannels_t myChannelsList = new EdkDll.IEE_InputChannels_t(); //Get EEG Electrode Contact Quality and change the electrode image on the Form. Dictionary <string, int> electrodeQuality = new Dictionary <string, int>(); foreach (EdkDll.IEE_InputChannels_t chan in Enum.GetValues(typeof(EdkDll.IEE_InputChannels_t))) { electrodeQuality.Add($"{chan}", (int)es.GetContactQuality((int)chan)); foreach (var myElectrode in My_Program.myElectrodes) { // myStr += chan; if (myElectrode.Name == $"{chan}") { string newImage = $@"{My_Program.myEpoc.myPath}"; if (myElectrode.Name == "IEE_CHAN_CMS" || myElectrode.Name == "IEE_CHAN_DRL") { newImage += $@"\relectrode_q{(int)es.GetContactQuality((int)chan)}.png"; } else { newImage += $@"\electrode_q{(int)es.GetContactQuality((int)chan)}.png"; } myElectrode.Image = System.Drawing.Image.FromFile(newImage); //myStr += chan + "WILL BE:" + (int)es.GetContactQuality((int)chan) + " | "; //myStr += newImage; } } //myStr += $"{(int)chan}"; // myStr += chan + ":" + (int)es.GetContactQuality((int)chan) + " | "; } //Individual electrode signal quality output //EdkDll.IEE_WindowingTypes myWType = new EdkDll.IEE_WindowingTypes(); //My_Program.myForm.textBox1.Text = $"{EdkDll.IEE_FFTGetWindowingType((uint)userID, myWType)}"; //My_Program.myEpoc.myEngine.IEE_FFTGetWindowingType((uint)userID, myWType); //My_Program.myForm.textBox1.Text = $"{myWType}"; outputBuffer["Type"] = "EpocRawBuffer"; Harvest_EEG_Headset(); Harvest_Wavebands_Headset(); outputBuffer["EQ"] = electrodeQuality; //string json = new JavaScriptSerializer().Serialize(outputBuffer); //if (My_Program.SRV) //{ // My_Program.myServer.Broadcast(json); // } } } }
private static extern bool Unmanaged_ES_ExpressivIsActive(IntPtr state, EdkDll.EE_ExpressivAlgo_t type);
/// <summary> /// Erases ment command training data /// </summary> /// <param name="action">Action to be erased</param> void EraseAction(EdkDll.IEE_MentalCommandAction_t action) { EdkDll.IEE_MentalCommandSetTrainingAction((uint)EmoUserManagement.currentUser, action); EdkDll.IEE_MentalCommandSetTrainingControl((uint)EmoUserManagement.currentUser, EdkDll.IEE_MentalCommandTrainingControl_t.MC_ERASE); }
public uint GetVitalAlgorithm(EdkDll.EE_EmotivSuite_t suite) { uint result = 0u; EmoEngine.errorHandler(EdkDll.EE_OptimizationGetVitalAlgorithm(this.hOptimizationParam, suite, out result)); return result; }
private static extern int Unmanged_EE_HeadsetGetSensorDetails(EdkDll.EE_InputChannels_t channelId, out EdkDll.InputSensorDescriptor_t pDescriptorOut);
public static int EE_ExpressivSetSignatureType(uint userId, EdkDll.EE_ExpressivSignature_t sigType) { return EdkDll.Unmanged_EE_ExpressivSetSignatureType(userId, sigType); }
private static extern int Unmanged_EE_OptimizationSetVitalAlgorithm(IntPtr hParam, EdkDll.EE_EmotivSuite_t suite, uint vitalAlgorithmBitVector);
public static int EE_ExpressivSetTrainingAction(uint userId, EdkDll.EE_ExpressivAlgo_t action) { return EdkDll.Unmanged_EE_ExpressivSetTrainingAction(userId, action); }
private static extern int Unmanged_EE_ResetDetection(uint userId, EdkDll.EE_EmotivSuite_t suite, uint detectionBitVector);
public static int EE_HeadsetGetSensorDetails(EdkDll.EE_InputChannels_t channelId, out EdkDll.InputSensorDescriptor_t pDescriptorOut) { return EdkDll.Unmanged_EE_HeadsetGetSensorDetails(channelId, out pDescriptorOut); }
public static int EE_CognitivGetActionSkillRating(uint userId, EdkDll.EE_CognitivAction_t action, out float pActionSkillRatingOut) { return EdkDll.Unmanged_EE_CognitivGetActionSkillRating(userId, action, out pActionSkillRatingOut); }
public static int EE_OptimizationSetVitalAlgorithm(IntPtr hParam, EdkDll.EE_EmotivSuite_t suite, uint vitalAlgorithmBitVector) { return EdkDll.Unmanged_EE_OptimizationSetVitalAlgorithm(hParam, suite, vitalAlgorithmBitVector); }
public static int EE_CognitivGetTrainingAction(uint userId, out EdkDll.EE_CognitivAction_t pActionOut) { return EdkDll.Unmanged_EE_CognitivGetTrainingAction(userId, out pActionOut); }
public static bool ES_ExpressivIsActive(IntPtr state, EdkDll.EE_ExpressivAlgo_t type) { return EdkDll.Unmanaged_ES_ExpressivIsActive(state, type); }
public static int EE_CognitivSetCurrentLevel(short userId, EdkDll.EE_CognitivLevel_t level, EdkDll.EE_CognitivAction_t level1Action, EdkDll.EE_CognitivAction_t level2Action, EdkDll.EE_CognitivAction_t level3Action, EdkDll.EE_CognitivAction_t level4Action) { return EdkDll.Unmanaged_EE_CognitivSetCurrentLevel(userId, level, level1Action, level2Action, level3Action, level4Action); }
public static void SetMultiActiveActions(int UserID, EdkDll.EE_CognitivAction_t[] activeActions, int numOfActions) { EdkDll.Unmanaged_SetMultiActiveActions(UserID, activeActions, numOfActions); }
public static int EE_CognitivSetTrainingAction(uint userId, EdkDll.EE_CognitivAction_t action) { return EdkDll.Unmanged_EE_CognitivSetTrainingAction(userId, action); }
private static extern int Unmanaged_EE_DataGet(IntPtr hData, EdkDll.EE_DataChannel_t channel, double[] buffer, uint bufferSizeInSample);
public static int EE_ExpressivGetSignatureType(uint userId, out EdkDll.EE_ExpressivSignature_t pSigTypeOut) { return EdkDll.Unmanged_EE_ExpressivGetSignatureType(userId, out pSigTypeOut); }
private static extern int Unmanaged_ES_GetContactQualityFromAllChannels(IntPtr state, EdkDll.EE_EEG_ContactQuality_t[] contactQuality, uint numChannels);
public static int EE_ExpressivGetThreshold(uint userId, EdkDll.EE_ExpressivAlgo_t algoName, EdkDll.EE_ExpressivThreshold_t thresholdName, out int pValueOut) { return EdkDll.Unmanged_EE_ExpressivGetThreshold(userId, algoName, thresholdName, out pValueOut); }
public double[] getDataChannel(EdkDll.EE_DataChannel_t channel) { return data[channel]; }
public static int EE_ExpressivGetTrainingAction(uint userId, out EdkDll.EE_ExpressivAlgo_t pActionOut) { return EdkDll.Unmanged_EE_ExpressivGetTrainingAction(userId, out pActionOut); }
public void SetVitalAlgorithm(EdkDll.EE_EmotivSuite_t suite, uint vitalAlgorithmBitVector) { EmoEngine.errorHandler(EdkDll.EE_OptimizationSetVitalAlgorithm(this.hOptimizationParam, suite, vitalAlgorithmBitVector)); }
void OnClearClick(int ActionID) { EdkDll.EE_CognitivSetTrainingAction((uint)EmoUserManagement.currentUser, EmoCognitiv.cognitivActionList[ActionID]); EdkDll.EE_CognitivSetTrainingControl((uint)EmoUserManagement.currentUser, EdkDll.EE_CognitivTrainingControl_t.COG_ERASE); Debug.Log("Clear " + array_CogActionList[ActionID]); }