public ActivityMetrics() { number_of_tries_to_solve = 0; limits_to_number_of_tries_to_solve = new List<int>(); compared_limits_to_number_of_tries_to_solve = new List<bool>(); time_on_activity = new Stopwatch(); list_of_times_on_activity = new List<TimeSpan>(); time_on_activity_thresholds = new List<TimeSpan>(); time_on_activity_threshold_compared = new List<bool>(); default_time_on_activity_thresholds = new List<TimeSpan>(); default_time_on_activity_threshold_compared = new List<bool>(); current_task_time_limit_index=0; //time_on_activity_threshold_compared = new List<bool>(); EncouteredErrorsList = new Dictionary<string, ErrorMetrics>(); givenHintsList = new Dictionary<string, HintMetrics>(); activity_completed = false; //initialize the hardcoded errors and their names/IDs ErrorMetrics errorInRecognizing = new ErrorMetrics(); errorRecognizeName = "errorInRecognizing"; ErrorMetrics errorInRecalling = new ErrorMetrics(); errorRecallName = "errorInRecalling"; ErrorMetrics errorInClassifying = new ErrorMetrics(); errorClassifyName="errorInClassifying"; ErrorMetrics errorInImplementing = new ErrorMetrics(); errorImplementName="errorInImplementing"; EncouteredErrorsList.Add(errorRecognizeName,errorInRecognizing); EncouteredErrorsList.Add(errorRecallName,errorInRecalling); EncouteredErrorsList.Add(errorClassifyName, errorInClassifying); EncouteredErrorsList.Add(errorImplementName, errorInImplementing); }
public string TrackAndStoreErrorForThisActivity(string current_activity_ID, string error_ID) { ActivityMetrics current_activity = null; ErrorMetrics temp_error_for_first = null; string would_be_hint = ""; gameActivitiesList.TryGetValue(current_activity_ID, out current_activity); current_activity.EncouteredErrorsList .TryGetValue(error_ID, out temp_error_for_first); temp_error_for_first.ErrorMade(current_activity.time_on_activity.Elapsed); string errorInfo = error_ID + " timestamps: " + temp_error_for_first.error_time_stamps.Count + "# "; for (int i = 0; i < temp_error_for_first.error_time_stamps.Count; i++) { errorInfo += temp_error_for_first.error_time_stamps[i] + " "; } //rulesObject.CheckRulesForErrors(ref current_activity, ref would_be_hint); return("Hint: " + would_be_hint + " info for errors " + errorInfo); }