View | Details | Raw Unified | Return to bug 2458
Collapse All | Expand All

(-)original/ns-3-allinone/ns-3-dev/src/energy/model/simple-device-energy-model.cc (+12 lines)
 Lines 85-90   double Link Here 
85
SimpleDeviceEnergyModel::GetTotalEnergyConsumption (void) const
85
SimpleDeviceEnergyModel::GetTotalEnergyConsumption (void) const
86
{
86
{
87
  NS_LOG_FUNCTION (this);
87
  NS_LOG_FUNCTION (this);
88
  double current = GetCurrentA();
89
  Time duration = Simulator::Now () - m_lastUpdateTime;
90
91
  double energyToDecrease = 0.0;
92
  double supplyVoltage = m_source->GetSupplyVoltage ();
93
  energyToDecrease = duration.GetSeconds () * current * supplyVoltage;
94
  
95
  // update total energy consumption
96
  m_totalEnergyConsumption += energyToDecrease;
97
  // update last update time stamp
98
  m_lastUpdateTime = Simulator::Now ();
99
  
88
  return m_totalEnergyConsumption;
100
  return m_totalEnergyConsumption;
89
}
101
}
90
102
(-)original/ns-3-allinone/ns-3-dev/src/energy/model/simple-device-energy-model.h (-2 / +2 lines)
 Lines 119-129   private: Link Here 
119
   */
119
   */
120
  virtual double DoGetCurrentA (void) const;
120
  virtual double DoGetCurrentA (void) const;
121
121
122
  Time m_lastUpdateTime;
122
  mutable Time m_lastUpdateTime;
123
  double m_actualCurrentA;
123
  double m_actualCurrentA;
124
  Ptr<EnergySource> m_source;
124
  Ptr<EnergySource> m_source;
125
  Ptr<Node> m_node;
125
  Ptr<Node> m_node;
126
  TracedValue<double> m_totalEnergyConsumption;
126
  mutable TracedValue<double> m_totalEnergyConsumption;
127
};
127
};
128
128
129
} // namespace ns3
129
} // namespace ns3

Return to bug 2458