diff options
Diffstat (limited to 'src/sim/sub_system.hh')
-rw-r--r-- | src/sim/sub_system.hh | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/sim/sub_system.hh b/src/sim/sub_system.hh index 6e35be676..ec25d7056 100644 --- a/src/sim/sub_system.hh +++ b/src/sim/sub_system.hh @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 ARM Limited + * Copyright (c) 2014-2015 ARM Limited * All rights reserved * * The license below extends only to copyright in the software and shall @@ -45,10 +45,14 @@ #ifndef __SIM_SUB_SYSTEM_HH__ #define __SIM_SUB_SYSTEM_HH__ +#include <vector> + #include "params/SubSystem.hh" #include "sim/power/thermal_domain.hh" #include "sim/sim_object.hh" +class PowerModel; + /** * The SubSystem simobject does nothing, it is just a container for * other simobjects used by the configuration system @@ -58,6 +62,17 @@ class SubSystem : public SimObject public: typedef SubSystemParams Params; SubSystem(const Params *p); + + double getDynamicPower() const; + + double getStaticPower() const; + + void registerPowerProducer(PowerModel *pm) { + powerProducers.push_back(pm); + } + + protected: + std::vector<PowerModel*> powerProducers; }; #endif |