Beispiel #1
0
        public static string GetKey(this GenerationMetadata mt)
        {
            var s = mt.ToString();

            if (s.Length <= 1)
            {
                return(s.ToLower());
            }

            return(char.ToLower(s[0]) + s.Substring(1));
        }
        private void UpdateTaskStatus(StringBuilder taskGuid, int progress, IntPtr evaluatedValuesPtr, int evaluatedValuesLength, GenerationMetadata generationMetadata)
        {
            var evaluatedValues = new double[evaluatedValuesLength];

            Marshal.Copy(evaluatedValuesPtr, evaluatedValues, 0, evaluatedValuesLength);

            Console.WriteLine($"UpdateTaskStatusCalled with progress: {progress}, guid: {taskGuid},struct: {generationMetadata.BestFitness}/{generationMetadata.BestFitnessInGeneration}");

            var task = _taskRepository.GetApproximationTask(Guid.Parse(taskGuid.ToString()));

            task.TaskProgress           = progress;
            task.Result.EvaluatedValues = evaluatedValues;
            task.Result.ValuesNumber    = evaluatedValuesLength;
            task.Result.AlgorithmRunMetadata.Add(generationMetadata);

            _taskRepository.UpdateTaskProgress(Guid.Parse(taskGuid.ToString()), progress);
        }