// src/backend/concrete_simulation_statistics.hh - Copyright 2005, 2006, University // of Padova, dept. of Pure and Applied // Mathematics // // This file is part of SGPEMv2. // // This 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. // // SGPEMv2 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 SGPEMv2. If not, see http://www.gnu.org/licenses/. #ifndef CONCRETE_SIMULATION_STATISTICS_HH #define CONCRETE_SIMULATION_STATISTICS_HH 1 #include "concrete_process_statistics.hh" #include namespace sgpem { class ConcreteStatistics; /** \brief Represents the statistics of a Simulation This class is a direct subclass of the abstract class SimulationStatistics. For the documentation af all methods refere to it. */ class SG_DLLLOCAL ConcreteSimulationStatistics : public SimulationStatistics { public: friend class ConcreteStatistics; ~ConcreteSimulationStatistics (); float get_average_inactivity_time () const; float get_average_execution_progress () const; float get_average_turn_around () const; float get_average_response_time () const; float get_average_efficiency () const; int get_terminated_processes () const; int get_terminated_threads () const; float get_average_processes_throughput () const; float get_average_threads_throughput () const; protected: ConcreteSimulationStatistics (const std::vector &proc_stats, const int &instant); float _average_inactivity_time; float _average_execution_progress; float _average_turn_around; float _average_response_time; float _average_efficiency; int _terminated_processes; int _terminated_threads; float _average_processes_throughput; float _average_threads_throughput; }; } // namespace sgpem #endif