// Update is called once per frame void Update() { connectionText.text = connectionBuffer; MuseData museData = MuseData.CreateFromJSON(dataBuffer); if (museData.DataPacketType == "ALPHA_RELATIVE") { // Get the average relative alpha across each electrode float currentAlphaSum = 0; foreach (float f in museData.DataPacketValue) { currentAlphaSum += f; } float currentAlpha = currentAlphaSum / museData.DataPacketValue.Length; if (alphaSamples.Count > sampleSize) { alphaSamples.RemoveAt(0); } alphaSamples.Add(currentAlpha); float sum = 0; foreach (float f in alphaSamples) { sum += f; } mellowScore = Mathf.Clamp01(sum / alphaSamples.Count * handicap); // Get moving avg of relative alpha score } // Display the data in the UI Text field dataText.text = "Mellow Score: " + mellowScore; }
internal static bool IsCombination(this MuseData data) { switch (data) { case MuseData.Absolutes: case MuseData.Relatives: case MuseData.Sessions: case MuseData.All: return(true); default: return(false); } }
public static bool CanConvertTo(this MuseData data, Type type) { switch (data) { case MuseData.EEG: case MuseData.NotchFilteredEEG: case MuseData.DeltaAbsolute: case MuseData.ThetaAbsolute: case MuseData.AlphaAbsolute: case MuseData.BetaAbsolute: case MuseData.GammaAbsolute: case MuseData.DeltaRelative: case MuseData.ThetaRelative: case MuseData.AlphaRelative: case MuseData.BetaRelative: case MuseData.GammaRelative: case MuseData.DeltaSessionScore: case MuseData.ThetaSessionScore: case MuseData.AlphaSessionScore: case MuseData.BetaSessionScore: case MuseData.GammaSessionScore: return(type == typeof(Channel)); case MuseData.Accelerometer: case MuseData.Gyro: return(type == typeof(Direction)); case MuseData.TouchingForehead: case MuseData.Horseshoe: case MuseData.IsGood: case MuseData.Blink: case MuseData.JawClench: case MuseData.Battery: case MuseData.DrlRef: case MuseData.All: default: break; } return(false); }