void sendTask(TSTaskDescriptor task, TSResponseStatus response, double responseTime, double taskTime) { task.ResponseStatus = (int)response; task.ResponseTime = responseTime; task.TotalTaskTime = taskTime; data.CompleteTask(task); resetTaskData(); data.NextTask(); }
public void CompleteTask(TSTaskDescriptor task) { game.CompletedTasks.Add(task); data.AddDataRow(task.GetDataRow()); if (verboseMode) { Debug.Log(data.GetExperiment(experimentName).LastRowToString()); } data.SubmitLastDataRow(); }
TSGamePiece spawnPiece(StimuliSet set) { toggleAllPiecesVisible(isVisible: false); TSGamePiece piece = choosePieceToSpawn(); int pieceIndex = ArrayUtil.IndexOf(boardPieces, piece); this.activeTile = boardTiles[pieceIndex]; piece.SetPiece(batch, set); activeTile.SetPiece(piece); this.currentTask = trackTask(set, pieceIndex); return(piece); }
TSTaskDescriptor trackTask(StimuliSet set, int stimulusPosition) { TSTaskDescriptor task = new TSTaskDescriptor(); task.BlockName = data.CurrentBatch.ToString(); task.StimulusPosition = stimulusPosition; task.TaskType = (int)boardTiles[stimulusPosition].GetMatchType + 1; if (batch is HybridTaskBatch) { ImageStimuliSet imageSet = set as ImageStimuliSet; HybridTaskBatch hybridBatch = batch as HybridTaskBatch; if (imageSet.HasImage1) { task.Stimuli1Index = hybridBatch.GetStimuli1Index(imageSet.Stimuli1Img); } else { task.Stimuli1Index = hybridBatch.GetStimuli1Index(imageSet.Stimuli1); } if (imageSet.HasImage2) { task.Stimuli2Index = hybridBatch.GetStimuli2Index(imageSet.Stimuli2Img); } else { task.Stimuli2Index = hybridBatch.GetStimuli2Index(imageSet.Stimuli2); } } else if (set is ImageStimuliSet) { ImageStimuliSet imageSet = set as ImageStimuliSet; ImageTaskBatch imageBatch = batch as ImageTaskBatch; task.Stimuli1Index = imageBatch.GetStimuli1Index(imageSet.Stimuli1Img); task.Stimuli2Index = imageBatch.GetStimuli2Index(imageSet.Stimuli2Img); } else { task.Stimuli1Index = batch.GetStimuli1Index(set.Stimuli1); task.Stimuli2Index = batch.GetStimuli2Index(set.Stimuli2); } task.TypeOfBlock = ((int)data.CurrentBatchIndex) + 1; TSTaskType taskType = data.IsTaskSwitch ? TSTaskType.TaskSwitch : TSTaskType.TaskRepeat; task.IsNewTaskSwitch = (int)taskType; data.StartTimer(getTaskKey()); return(task); }
void resetTaskData() { this.currentTask = null; this.responseTime = 0; this.taskTime = 0; }