ElectricalLoad.cc revision 10447
1 2#include "model/timing_graph/ElectricalLoad.h" 3#include "model/ElectricalModel.h" 4#include "model/timing_graph/ElectricalDriver.h" 5 6namespace DSENT 7{ 8 ElectricalLoad::ElectricalLoad(const String& instance_name_, ElectricalModel* model_) 9 : ElectricalTimingNode(instance_name_, model_), m_load_cap_(0.0) 10 { 11 } 12 13 ElectricalLoad::~ElectricalLoad() 14 { 15 } 16 17 void ElectricalLoad::setLoadCap(double load_cap_) 18 { 19 m_load_cap_ = load_cap_; 20 return; 21 } 22 23 double ElectricalLoad::getLoadCap() const 24 { 25 return m_load_cap_; 26 } 27 28 bool ElectricalLoad::isLoad() const 29 { 30 return true; 31 } 32 33 double ElectricalLoad::calculateDelay() const 34 { 35 return 0; 36 } 37 38 double ElectricalLoad::calculateTransition() const 39 { 40 return 1.386 * getMaxUpstreamRes() * getTotalDownstreamCap(); 41 } 42 43 double ElectricalLoad::getTotalDownstreamCap() const 44 { 45 return m_load_cap_; 46 } 47 48} // namespace DSENT 49 50