private static string FindTypeOfExercice(ExerciceEvaluation exoEval) { Singleton singlePatient = Singleton.getInstance(); string fileName; if (exoEval.TypeEval == ExerciceEvalTypes.Forme) { ExerciceForme exoForme = (ExerciceForme)exoEval; if (exoForme.TypeForme == FormeType.Carré) { fileName = "Square"; } else { fileName = "Circle"; } } else { ExerciceMouvement exoMouv = (ExerciceMouvement)exoEval; if (exoMouv.TypeDroite == DroiteType.Vertical) { fileName = "Target"; } else { fileName = "FreeAmplitude"; } } return(fileName); }
public static FrameExerciceDataModel ExercicesEvaluationToFrameExercice(ExerciceEvaluation exercice, int i) { FrameExerciceDataModel _exFrame = new FrameExerciceDataModel(); if (exercice.TypeEval == ExerciceEvalTypes.Forme) { ExerciceForme temps = (ExerciceForme)exercice; _exFrame.Address = ConfigAddresses.Formes; switch (temps.TypeForme) // polygones { case FormeType.Carré: _exFrame.Data1 = 0x04; break; case FormeType.Cercle: _exFrame.Data1 = 0x28; // 0x1E break; case FormeType.Triangle: _exFrame.Data1 = 0x06; // Hexagone break; } _exFrame.Data2 = (byte)(4 * temps.Taille); _exFrame.Data3 = temps.Origine; // TODO : peut etre ? _exFrame.Data4 = Convert.ToByte(temps.AllerRetour); } else { //if (exercice.Exercice[i].ExerciceType == ExerciceTypes.Cibles) //{ // ExerciceXDent temps = (ExerciceXDent)exercice.Exercice[i]; // _exFrame.Address = ConfigAddresses.Cibles; // _exFrame.Data1 = temps.NbrsCibles; // _exFrame.Data2 = temps.DistCibles; // _exFrame.Data3 = temps.Anglecible; // //_exFrame.Data4 = temps.Origine; // TODO : peut etre ? ////} //else //{ //if (exercice.TypeExercice == ExerciceTypes.Mouvements_Complexes) //{ // ExerciceMouvement temps = (ExerciceMouvement)exercice.Exercice[i]; // _exFrame.Address = ConfigAddresses.Mouvements; // switch (temps.DroiteType) // { // case DroiteType.Horizontal: _exFrame.Data1 = 0x02; // break; // case DroiteType.Oblique: _exFrame.Data1 = 0x03; // break; // case DroiteType.Vertical: _exFrame.Data1 = 0x01; // break; // default: _exFrame.Data1 = 0x01; // TODO : Erreur ! // break; // } // _exFrame.Data2 = temps.PositionDroite; //} //else //{ if (exercice.TypeEval == ExerciceEvalTypes.Mouvement) { ExerciceMouvement temps = (ExerciceMouvement)exercice; _exFrame.Address = ConfigAddresses.Mouvements; // TODO : faire un mod spécifique ! switch (temps.TypeDroite) { case DroiteType.Vertical: _exFrame.Data1 = 0x01; break; case DroiteType.VerticalLong: _exFrame.Data1 = 0x04; break; case DroiteType.Tonus: _exFrame.Data1 = 0x05; // TONUS !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! break; default: _exFrame.Data1 = 0x01; // TODO : Erreur ! break; } _exFrame.Data2 = temps.PositionDroite; } else { // TODO : Erreur ! } //} //} } return(_exFrame); }
public static void AjoutPartie(string dossier, ExerciceEvaluation exoEval) { string fileName = FindTypeOfExercice(exoEval); string dateJour = String.Format("{0:00}", DateTime.Now.Day) + "/" + String.Format("{0:00}", DateTime.Now.Month) + "/" + DateTime.Now.Year; XDocument file = XDocument.Load(@"../../Files/Patients/" + dossier + "/Evaluation/" + fileName + ".xml"); XElement newDonneeCommun = new XElement("Partie", new XElement("Date", dateJour), new XElement("Speed", new XElement("ResultatMoyen", exoEval.VitesseMoy.ToString()), new XElement("EcartType", exoEval.EcartTypeVMoy.ToString()), new XElement("CoefficientVariation", exoEval.CVVitesseMoy.ToString())), new XElement("PeakSpeed", new XElement("ResultatMoyen", exoEval.VitesseMax.ToString()), new XElement("EcartType", exoEval.EcartTypeVMax.ToString()), new XElement("CoefficientVariation", exoEval.CVVitesseMax.ToString())), new XElement("Jerk", new XElement("ResultatMoyen", exoEval.JerkMetric.ToString()), new XElement("EcartType", exoEval.EcartTypeJM.ToString()), new XElement("CoefficientVariation", exoEval.CVJerkMetric.ToString())), new XElement("SpeedMetric", new XElement("ResultatMoyen", exoEval.SpeedMetric.ToString()), new XElement("EcartType", exoEval.EcartTypeSM.ToString()), new XElement("CoefficientVariation", exoEval.CVSpeedMetric.ToString()))); XElement newDonnee; if (fileName == "Square" || fileName == "Circle") { ExerciceForme exoForme = (ExerciceForme)exoEval; newDonnee = new XElement("Precision", new XElement("ResultatMoyen", exoForme.ShapeAccuracy.ToString()), new XElement("EcartType", exoForme.EcartTypeSA.ToString()), new XElement("CoefficientVariation", exoForme.CVShapeAccuracy.ToString())); } else { ExerciceMouvement exoMouv = (ExerciceMouvement)exoEval; newDonnee = new XElement("Straightness", new XElement("ResultatMoyen", exoMouv.Linearite.ToString()), new XElement("EcartType", exoMouv.EcartTypeLin.ToString()), new XElement("CoefficientVariation", exoMouv.CVLinearite.ToString())); XElement newDonneeMouv; if (exoMouv.TypeDroite == DroiteType.Vertical) { Target target = (Target)exoMouv; newDonneeMouv = new XElement("Accuracy", new XElement("ResultatMoyen", target.Precision.ToString()), new XElement("EcartType", target.EcartTypePre.ToString()), new XElement("CoefficientVariation", target.CVPrecision.ToString())); } else { FreeAmplitude freeAmpl = (FreeAmplitude)exoMouv; newDonneeMouv = new XElement("Amplitude", new XElement("ResultatMoyen", freeAmpl.Amplitude.ToString()), new XElement("EcartType", freeAmpl.EcartTypeAmp.ToString()), new XElement("CoefficientVariation", freeAmpl.CVAmplitude.ToString())); } newDonnee.Add(newDonneeMouv); } newDonneeCommun.Add(newDonnee); file.Root.Add(newDonneeCommun); file.Save(@"../../Files/Patients/" + dossier + "/Evaluation/" + fileName + ".xml"); }