#region License Information /* HeuristicLab * Copyright (C) 2002-2018 Heuristic and Evolutionary Algorithms Laboratory (HEAL) * * This file is part of HeuristicLab. * * HeuristicLab is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * HeuristicLab is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with HeuristicLab. If not, see . */ #endregion using System; using System.Collections.Generic; namespace HeuristicLab.Services.WebApp.Status.WebApi.DataTransfer { public class CoreStatus { public int TotalCores { get; set; } public int UsedCores { get; set; } public int ActiveCores { get; set; } public int CalculatingCores { get; set; } } public class CpuUtilizationStatus { public double TotalCpuUtilization { get; set; } public double ActiveCpuUtilization { get; set; } public double CalculatingCpuUtilization { get; set; } } public class MemoryStatus { public int TotalMemory { get; set; } public int UsedMemory { get; set; } public int ActiveMemory { get; set; } public int CalculatingMemory { get; set; } } public class TaskStatus { public User User { get; set; } public int CalculatingTasks { get; set; } public int WaitingTasks { get; set; } } public class SlaveStatus { public Slave Slave { get; set; } public double CpuUtilization { get; set; } public int Cores { get; set; } public int FreeCores { get; set; } public int Memory { get; set; } public int FreeMemory { get; set; } public bool IsAllowedToCalculate { get; set; } public string State { get; set; } } public class TimeStatus { public long MinCalculatingTime { get; set; } public long MaxCalculatingTime { get; set; } public long AvgCalculatingTime { get; set; } public long StandardDeviationCalculatingTime { get; set; } public long AvgWaitingTime { get; set; } public long TotalCpuTime { get; set; } public DateTime? BeginDate { get; set; } } public class Status { public CoreStatus CoreStatus { get; set; } public CpuUtilizationStatus CpuUtilizationStatus { get; set; } public MemoryStatus MemoryStatus { get; set; } public TimeStatus TimeStatus { get; set; } public IEnumerable TasksStatus { get; set; } public IEnumerable SlavesStatus { get; set; } public long Timestamp { get; set; } } }