public void SaveCarhartt(Carhartt newSession) { if (null == PacientsData[CurrentPacient.ID].carhartts) { PacientsData[CurrentPacient.ID].carhartts = new List <Carhartt>(); } bool found = false; for (int i = 0; i < PacientsData[CurrentPacient.ID].carhartts.Count; i++) { if (PacientsData[CurrentPacient.ID].carhartts[i].tone.FrequencyIndex == newSession.tone.FrequencyIndex) { if (PacientsData[CurrentPacient.ID].carhartts[i].tone.Ear == newSession.tone.Ear) { found = true; PacientsData[CurrentPacient.ID].carhartts[i] = newSession; break; } } } if (!found) { PacientsData[CurrentPacient.ID].carhartts.Add(newSession); } PacientsData[CurrentPacient.ID].lastTestDate = DateTime.Now.ToString("dd/MM/yyyy"); SavePacientData(); }
private void GraphCarhartt(Carhartt session) { var parent = CarharttParents[session.tone.FrequencyIndex - 2]; var toneEvent = session.tonePlayEvents.pairs[0]; var pacientPushEvents = session.pacientPushEvents.pairs; parent.GetChild(0).GetComponent <Text>().text = ((int)session.tonePlayEvents.GetLongestDuration()).ToString(); foreach (var pressedEvent in pacientPushEvents) { if (pressedEvent.Duration() > 1) { GameObject instantiatedLine = null; if (session.tone.Ear == Tone.EarSide.Left) { instantiatedLine = Instantiate(CarharttLeftPrefab, parent); } else { instantiatedLine = Instantiate(CarharttRightPrefab, parent); } LineRenderer renderer = instantiatedLine.transform.GetChild(0).GetComponent <LineRenderer>(); float width = renderer.gameObject.GetComponent <RectTransform>().sizeDelta.x; if (session.tone.Ear == Tone.EarSide.Left) { renderer.SetPosition(0, new Vector3((pressedEvent.start - toneEvent.start) * width / 60, 6, 0)); renderer.SetPosition(1, new Vector3((pressedEvent.end - toneEvent.start) * width / 60, 6, 0)); instantiatedLine.transform.GetChild(1).localPosition = new Vector3( (pressedEvent.end - toneEvent.start) * width / 60 - 10, 18, 0); } else { renderer.SetPosition(0, new Vector3((pressedEvent.start - toneEvent.start) * width / 60, -8, 0)); renderer.SetPosition(1, new Vector3((pressedEvent.end - toneEvent.start) * width / 60, -8, 0)); instantiatedLine.transform.GetChild(1).localPosition = new Vector3( (pressedEvent.end - toneEvent.start) * width / 60 - 10, -20, 0); } instantiatedLine.transform.GetChild(1).GetComponent <Text>().text = pressedEvent.Duration().ToString("0.0"); } } }
public override void StartTest() { if (!OngoingTest) { base.StartTest(); Debug.Log("Carhartt test Started."); currentSession = new Carhartt(carToneManager.freqIndex, carToneManager.currentDB, this, ear); for (int i = 0; i < interactableDuringSession.Length; i++) { previousState[i] = interactableDuringSession[i].interactable; interactableDuringSession[i].interactable = false; } pacientButton.onButtonDown.AddListener(currentSession.PacientButtonDown); pacientButton.onButtonUp.AddListener(currentSession.PacientButtonUp); pacientButton.onButtonDown.AddListener(LedOn); pacientButton.onButtonUp.AddListener(LedOff); StartCoroutine(SessionEndRoutine()); } }