X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/49e85177c669d793e84242983a1b1f430e47184e..ab4418d8efe3144dcb84ebc13e7798bbc4fd7098:/src/surf/plugins/energy.hpp diff --git a/src/surf/plugins/energy.hpp b/src/surf/plugins/energy.hpp index 5839da8b7c..18af57fd29 100644 --- a/src/surf/plugins/energy.hpp +++ b/src/surf/plugins/energy.hpp @@ -1,33 +1,37 @@ -/* Copyright (c) 2014. The SimGrid Team. +/* Copyright (c) 2014-2015. The SimGrid Team. * All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ +#include + #include "../cpu_interface.hpp" #include -#ifndef CALLBACK_HPP_ -#define CALLBACK_HPP_ +#ifndef ENERGY_CALLBACK_HPP_ +#define ENERGY_CALLBACK_HPP_ -class CpuEnergy; -typedef CpuEnergy *CpuEnergyPtr; +class XBT_PRIVATE CpuEnergy; -extern std::map *surf_energy; +extern XBT_PRIVATE std::map *surf_energy; class CpuEnergy { public: - CpuEnergy(CpuPtr ptr); + CpuEnergy(Cpu *ptr); ~CpuEnergy(); double getCurrentWattsValue(double cpu_load); double getConsumedEnergy(); - xbt_dynar_t getWattsRangeList(); + double getWattMinAt(int pstate); + double getWattMaxAt(int pstate); - xbt_dynar_t power_range_watts_list; /*< List of (min_power,max_power) pairs corresponding to each cpu pstate */ + xbt_dynar_t getWattsRangeList(); + xbt_dynar_t power_range_watts_list; /*< List of (min_power,max_power) pairs corresponding to each cpu pstate */ + double watts_off; /*< Consumption when the machine is turned off (shutdown) */ double total_energy; /*< Total energy consumed by the host */ double last_updated; /*< Timestamp of the last energy update event*/ - CpuPtr cpu; + Cpu *cpu; }; -#endif /* CALLBACK_HPP_ */ +#endif /* ENERGY_CALLBACK_HPP_ */