A WiFi radio energy model. More...
#include "wifi-radio-energy-model.h"
Public Types | |
typedef Callback< void > | WifiRadioEnergyDepletionCallback |
Callback type for energy depletion handling. More... | |
typedef Callback< void > | WifiRadioEnergyRechargedCallback |
Callback type for energy recharged handling. More... | |
![]() | |
typedef Callback< void, int > | ChangeStateCallback |
Callback type for ChangeState function. More... | |
Public Member Functions | |
WifiRadioEnergyModel () | |
virtual | ~WifiRadioEnergyModel () |
void | ChangeState (int newState) |
Changes state of the WifiRadioEnergyMode. More... | |
double | GetCcaBusyCurrentA (void) const |
Gets CCA busy current. More... | |
WifiPhyState | GetCurrentState (void) const |
double | GetIdleCurrentA (void) const |
Gets idle current. More... | |
Time | GetMaximumTimeInState (int state) const |
WifiRadioEnergyModelPhyListener * | GetPhyListener (void) |
double | GetRxCurrentA (void) const |
Gets receive current. More... | |
double | GetSleepCurrentA (void) const |
Gets sleep current. More... | |
double | GetSwitchingCurrentA (void) const |
Gets switching current. More... | |
double | GetTotalEnergyConsumption (void) const |
double | GetTxCurrentA (void) const |
Gets transmit current. More... | |
void | HandleEnergyChanged (void) |
Handles energy changed. More... | |
void | HandleEnergyDepletion (void) |
Handles energy depletion. More... | |
void | HandleEnergyRecharged (void) |
Handles energy recharged. More... | |
void | SetCcaBusyCurrentA (double ccaBusyCurrentA) |
Sets CCA busy current. More... | |
void | SetEnergyDepletionCallback (WifiRadioEnergyDepletionCallback callback) |
void | SetEnergyRechargedCallback (WifiRadioEnergyRechargedCallback callback) |
void | SetEnergySource (const Ptr< EnergySource > source) |
Sets pointer to EnergySouce installed on node. More... | |
void | SetIdleCurrentA (double idleCurrentA) |
Sets idle current. More... | |
void | SetRxCurrentA (double rxCurrentA) |
Sets receive current. More... | |
void | SetSleepCurrentA (double sleepCurrentA) |
Sets sleep current. More... | |
void | SetSwitchingCurrentA (double switchingCurrentA) |
Sets switching current. More... | |
void | SetTxCurrentA (double txCurrentA) |
Sets transmit current. More... | |
void | SetTxCurrentFromModel (double txPowerDbm) |
Calls the CalcTxCurrent method of the tx current model to compute the tx current based on such model. More... | |
void | SetTxCurrentModel (const Ptr< WifiTxCurrentModel > model) |
![]() | |
DeviceEnergyModel () | |
virtual | ~DeviceEnergyModel () |
double | GetCurrentA (void) const |
![]() | |
Object () | |
Constructor. More... | |
virtual | ~Object () |
Destructor. More... | |
void | AggregateObject (Ptr< Object > other) |
Aggregate two Objects together. More... | |
void | Dispose (void) |
Dispose of this Object. More... | |
AggregateIterator | GetAggregateIterator (void) const |
Get an iterator to the Objects aggregated to this one. More... | |
virtual TypeId | GetInstanceTypeId (void) const |
Get the most derived TypeId for this Object. More... | |
template<typename T > | |
Ptr< T > | GetObject (void) const |
Get a pointer to the requested aggregated Object. More... | |
template<typename T > | |
Ptr< T > | GetObject (TypeId tid) const |
Get a pointer to the requested aggregated Object by TypeId. More... | |
void | Initialize (void) |
Invoke DoInitialize on all Objects aggregated to this one. More... | |
bool | IsInitialized (void) const |
Check if the object has been initialized. More... | |
![]() | |
SimpleRefCount () | |
Default constructor. More... | |
SimpleRefCount (const SimpleRefCount &o) | |
Copy constructor. More... | |
uint32_t | GetReferenceCount (void) const |
Get the reference count of the object. More... | |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
Assignment operator. More... | |
void | Ref (void) const |
Increment the reference count. More... | |
void | Unref (void) const |
Decrement the reference count. More... | |
![]() | |
virtual | ~ObjectBase () |
Virtual destructor. More... | |
void | GetAttribute (std::string name, AttributeValue &value) const |
Get the value of an attribute, raising fatal errors if unsuccessful. More... | |
bool | GetAttributeFailSafe (std::string name, AttributeValue &value) const |
Get the value of an attribute without raising erros. More... | |
void | SetAttribute (std::string name, const AttributeValue &value) |
Set a single attribute, raising fatal errors if unsuccessful. More... | |
bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
Set a single attribute without raising errors. More... | |
bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
Connect a TraceSource to a Callback with a context. More... | |
bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
Connect a TraceSource to a Callback without a context. More... | |
bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
Disconnect from a TraceSource a Callback previously connected with a context. More... | |
bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
Disconnect from a TraceSource a Callback previously connected without a context. More... | |
Static Public Member Functions | |
static TypeId | GetTypeId (void) |
Get the type ID. More... | |
![]() | |
static TypeId | GetTypeId (void) |
![]() | |
static TypeId | GetTypeId (void) |
Register this type. More... | |
![]() | |
static TypeId | GetTypeId (void) |
Get the type ID. More... | |
Private Member Functions | |
void | DoDispose (void) |
Destructor implementation. More... | |
double | DoGetCurrentA (void) const |
void | SetWifiRadioState (const WifiPhyState state) |
Additional Inherited Members | |
![]() | |
Object (const Object &o) | |
Copy an Object. More... | |
virtual void | DoInitialize (void) |
Initialize() implementation. More... | |
virtual void | NotifyNewAggregate (void) |
Notify all Objects aggregated to this one of a new Object being aggregated. More... | |
![]() | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
Complete construction of ObjectBase; invoked by derived classes. More... | |
virtual void | NotifyConstructionCompleted (void) |
Notifier called once the ObjectBase is fully constructed. More... | |
![]() | |
static TypeId | GetObjectIid (void) |
Ensure the TypeId for ObjectBase gets fully configured to anchor the inheritance tree properly. More... | |
A WiFi radio energy model.
Introspection did not find any typical Config paths.
4 states are defined for the radio: TX, RX, IDLE, SLEEP. Default state is IDLE. The different types of transactions that are defined are:
Energy calculation: For each transaction, this model notifies EnergySource object. The EnergySource object will query this model for the total current. Then the EnergySource object uses the total current to calculate energy.
Default values for power consumption are based on measurements reported in:
Daniel Halperin, Ben Greenstein, Anmol Sheth, David Wetherall, "Demystifying 802.11n power consumption", Proceedings of HotPower'10
Power consumption in Watts (single antenna):
(transmit at 0dBm)
Hence, considering the default supply voltage of 3.0 V for the basic energy source, the default current values in Ampere are:
The dependence of the power consumption in transmission mode on the nominal transmit power can also be achieved through a wifi tx current model.
Size of this type is 200 bytes (on a 64-bit architecture).
Definition at line 213 of file wifi-radio-energy-model.h.
Callback type for energy depletion handling.
Definition at line 219 of file wifi-radio-energy-model.h.
Callback type for energy recharged handling.
Definition at line 224 of file wifi-radio-energy-model.h.
ns3::WifiRadioEnergyModel::WifiRadioEnergyModel | ( | ) |
Definition at line 89 of file wifi-radio-energy-model.cc.
References ns3::DeviceEnergyModel::ChangeState(), m_energyDepletionCallback, m_listener, ns3::MakeCallback(), NS_LOG_FUNCTION, ns3::Callback< R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::Nullify(), ns3::WifiRadioEnergyModelPhyListener::SetChangeStateCallback(), SetTxCurrentFromModel(), and ns3::WifiRadioEnergyModelPhyListener::SetUpdateTxCurrentCallback().
|
virtual |
Definition at line 104 of file wifi-radio-energy-model.cc.
References m_listener, m_txCurrentModel, and NS_LOG_FUNCTION.
|
virtual |
Changes state of the WifiRadioEnergyMode.
newState | New state the wifi radio is in. |
Implements DeviceEnergyModel::ChangeState.
Implements ns3::DeviceEnergyModel.
Definition at line 329 of file wifi-radio-energy-model.cc.
References ns3::EventId::Cancel(), CCA_BUSY, GetMaximumTimeInState(), ns3::Time::GetNanoSeconds(), IDLE, ns3::Time::IsPositive(), m_ccaBusyCurrentA, m_currentState, m_idleCurrentA, m_lastUpdateTime, m_nPendingChangeState, m_rxCurrentA, m_sleepCurrentA, m_source, m_switchingCurrentA, m_switchToOffEvent, m_totalEnergyConsumption, m_txCurrentA, ns3::Simulator::Now(), NS_ASSERT, NS_FATAL_ERROR, NS_LOG_DEBUG, NS_LOG_FUNCTION, OFF, RX, ns3::Simulator::Schedule(), SetWifiRadioState(), SLEEP, SWITCHING, and TX.
Referenced by HandleEnergyChanged(), SetEnergySource(), and BasicEnergyUpdateTest::StateSwitchTest().
|
privatevirtual |
Destructor implementation.
This method is called by Dispose() or by the Object's destructor, whichever comes first.
Subclasses are expected to implement their real destruction code in an overridden version of this method and chain up to their parent's implementation once they are done. i.e, for simplicity, the destructor of every subclass should be empty and its content should be moved to the associated DoDispose() method.
It is safe to call GetObject() from within this method.
Reimplemented from ns3::Object.
Definition at line 461 of file wifi-radio-energy-model.cc.
References m_energyDepletionCallback, m_source, NS_LOG_FUNCTION, and ns3::Callback< R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::Nullify().
|
privatevirtual |
Implements DeviceEnergyModel::GetCurrentA.
Reimplemented from ns3::DeviceEnergyModel.
Definition at line 469 of file wifi-radio-energy-model.cc.
References CCA_BUSY, IDLE, m_ccaBusyCurrentA, m_currentState, m_idleCurrentA, m_rxCurrentA, m_sleepCurrentA, m_switchingCurrentA, m_txCurrentA, NS_FATAL_ERROR, OFF, RX, SLEEP, SWITCHING, and TX.
double ns3::WifiRadioEnergyModel::GetCcaBusyCurrentA | ( | void | ) | const |
Gets CCA busy current.
Definition at line 181 of file wifi-radio-energy-model.cc.
References m_ccaBusyCurrentA, and NS_LOG_FUNCTION.
Referenced by GetTypeId(), and BasicEnergyUpdateTest::StateSwitchTest().
WifiPhyState ns3::WifiRadioEnergyModel::GetCurrentState | ( | void | ) | const |
Definition at line 251 of file wifi-radio-energy-model.cc.
References m_currentState, and NS_LOG_FUNCTION.
Referenced by BasicEnergyUpdateTest::StateSwitchTest().
double ns3::WifiRadioEnergyModel::GetIdleCurrentA | ( | void | ) | const |
Gets idle current.
Definition at line 167 of file wifi-radio-energy-model.cc.
References m_idleCurrentA, and NS_LOG_FUNCTION.
Referenced by GetTypeId(), and BasicEnergyUpdateTest::StateSwitchTest().
Time ns3::WifiRadioEnergyModel::GetMaximumTimeInState | ( | int | state | ) | const |
state | the wifi state |
Definition at line 297 of file wifi-radio-energy-model.cc.
References CCA_BUSY, IDLE, m_ccaBusyCurrentA, m_idleCurrentA, m_rxCurrentA, m_sleepCurrentA, m_source, m_switchingCurrentA, m_txCurrentA, ns3::NanoSeconds(), NS_FATAL_ERROR, RX, SLEEP, SWITCHING, and TX.
Referenced by ChangeState(), HandleEnergyChanged(), and SetEnergySource().
WifiRadioEnergyModelPhyListener * ns3::WifiRadioEnergyModel::GetPhyListener | ( | void | ) |
Definition at line 450 of file wifi-radio-energy-model.cc.
References m_listener, and NS_LOG_FUNCTION.
double ns3::WifiRadioEnergyModel::GetRxCurrentA | ( | void | ) | const |
Gets receive current.
Definition at line 209 of file wifi-radio-energy-model.cc.
References m_rxCurrentA, and NS_LOG_FUNCTION.
Referenced by GetTypeId(), and BasicEnergyUpdateTest::StateSwitchTest().
double ns3::WifiRadioEnergyModel::GetSleepCurrentA | ( | void | ) | const |
Gets sleep current.
Definition at line 237 of file wifi-radio-energy-model.cc.
References m_sleepCurrentA, and NS_LOG_FUNCTION.
Referenced by GetTypeId(), and BasicEnergyUpdateTest::StateSwitchTest().
double ns3::WifiRadioEnergyModel::GetSwitchingCurrentA | ( | void | ) | const |
Gets switching current.
Definition at line 223 of file wifi-radio-energy-model.cc.
References m_switchingCurrentA, and NS_LOG_FUNCTION.
Referenced by GetTypeId(), and BasicEnergyUpdateTest::StateSwitchTest().
|
virtual |
Implements DeviceEnergyModel::GetTotalEnergyConsumption.
Implements ns3::DeviceEnergyModel.
Definition at line 123 of file wifi-radio-energy-model.cc.
References CCA_BUSY, ns3::Time::GetNanoSeconds(), ns3::Time::GetSeconds(), IDLE, m_ccaBusyCurrentA, m_currentState, m_idleCurrentA, m_lastUpdateTime, m_rxCurrentA, m_sleepCurrentA, m_source, m_switchingCurrentA, m_totalEnergyConsumption, m_txCurrentA, ns3::Simulator::Now(), NS_ASSERT, NS_FATAL_ERROR, NS_LOG_FUNCTION, OFF, RX, SLEEP, SWITCHING, and TX.
double ns3::WifiRadioEnergyModel::GetTxCurrentA | ( | void | ) | const |
Gets transmit current.
Definition at line 195 of file wifi-radio-energy-model.cc.
References m_txCurrentA, and NS_LOG_FUNCTION.
Referenced by GetTypeId(), and BasicEnergyUpdateTest::StateSwitchTest().
|
static |
Get the type ID.
Definition at line 35 of file wifi-radio-energy-model.cc.
References GetCcaBusyCurrentA(), GetIdleCurrentA(), GetRxCurrentA(), GetSleepCurrentA(), GetSwitchingCurrentA(), GetTxCurrentA(), m_totalEnergyConsumption, m_txCurrentModel, ns3::MakeDoubleAccessor(), ns3::MakePointerAccessor(), ns3::MakeTraceSourceAccessor(), SetCcaBusyCurrentA(), SetIdleCurrentA(), ns3::TypeId::SetParent(), SetRxCurrentA(), SetSleepCurrentA(), SetSwitchingCurrentA(), and SetTxCurrentA().
|
virtual |
Handles energy changed.
Implements DeviceEnergyModel::HandleEnergyChanged
Implements ns3::DeviceEnergyModel.
Definition at line 437 of file wifi-radio-energy-model.cc.
References ns3::EventId::Cancel(), ChangeState(), GetMaximumTimeInState(), m_currentState, m_switchToOffEvent, NS_LOG_DEBUG, NS_LOG_FUNCTION, OFF, and ns3::Simulator::Schedule().
|
virtual |
Handles energy depletion.
Implements DeviceEnergyModel::HandleEnergyDepletion
Implements ns3::DeviceEnergyModel.
Definition at line 413 of file wifi-radio-energy-model.cc.
References ns3::Callback< R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::IsNull(), m_energyDepletionCallback, NS_LOG_DEBUG, and NS_LOG_FUNCTION.
|
virtual |
Handles energy recharged.
Implements DeviceEnergyModel::HandleEnergyRecharged
Implements ns3::DeviceEnergyModel.
Definition at line 425 of file wifi-radio-energy-model.cc.
References ns3::Callback< R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::IsNull(), m_energyRechargedCallback, NS_LOG_DEBUG, and NS_LOG_FUNCTION.
void ns3::WifiRadioEnergyModel::SetCcaBusyCurrentA | ( | double | ccaBusyCurrentA | ) |
Sets CCA busy current.
ccaBusyCurrentA | the CCA busy current |
Definition at line 188 of file wifi-radio-energy-model.cc.
References m_ccaBusyCurrentA, and NS_LOG_FUNCTION.
Referenced by GetTypeId().
void ns3::WifiRadioEnergyModel::SetEnergyDepletionCallback | ( | WifiRadioEnergyDepletionCallback | callback | ) |
callback | Callback function. |
Sets callback for energy depletion handling.
Definition at line 258 of file wifi-radio-energy-model.cc.
References ns3::Callback< R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::IsNull(), m_energyDepletionCallback, NS_LOG_DEBUG, and NS_LOG_FUNCTION.
void ns3::WifiRadioEnergyModel::SetEnergyRechargedCallback | ( | WifiRadioEnergyRechargedCallback | callback | ) |
callback | Callback function. |
Sets callback for energy recharged handling.
Definition at line 270 of file wifi-radio-energy-model.cc.
References ns3::Callback< R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::IsNull(), m_energyRechargedCallback, NS_LOG_DEBUG, and NS_LOG_FUNCTION.
|
virtual |
Sets pointer to EnergySouce installed on node.
source | Pointer to EnergySource installed on node. |
Implements DeviceEnergyModel::SetEnergySource.
Implements ns3::DeviceEnergyModel.
Definition at line 112 of file wifi-radio-energy-model.cc.
References ns3::EventId::Cancel(), ChangeState(), GetMaximumTimeInState(), m_currentState, m_source, m_switchToOffEvent, NS_ASSERT, NS_LOG_FUNCTION, OFF, and ns3::Simulator::Schedule().
Referenced by BasicEnergyUpdateTest::StateSwitchTest().
void ns3::WifiRadioEnergyModel::SetIdleCurrentA | ( | double | idleCurrentA | ) |
Sets idle current.
idleCurrentA | the idle current |
Definition at line 174 of file wifi-radio-energy-model.cc.
References m_idleCurrentA, and NS_LOG_FUNCTION.
Referenced by GetTypeId(), and BatteryLifetimeTest::VariableLoadTest().
void ns3::WifiRadioEnergyModel::SetRxCurrentA | ( | double | rxCurrentA | ) |
Sets receive current.
rxCurrentA | the receive current |
Definition at line 216 of file wifi-radio-energy-model.cc.
References m_rxCurrentA, and NS_LOG_FUNCTION.
Referenced by GetTypeId().
void ns3::WifiRadioEnergyModel::SetSleepCurrentA | ( | double | sleepCurrentA | ) |
Sets sleep current.
sleepCurrentA | the sleep current |
Definition at line 244 of file wifi-radio-energy-model.cc.
References m_sleepCurrentA, and NS_LOG_FUNCTION.
Referenced by GetTypeId().
void ns3::WifiRadioEnergyModel::SetSwitchingCurrentA | ( | double | switchingCurrentA | ) |
Sets switching current.
switchingCurrentA | the switching current |
Definition at line 230 of file wifi-radio-energy-model.cc.
References m_switchingCurrentA, and NS_LOG_FUNCTION.
Referenced by GetTypeId().
void ns3::WifiRadioEnergyModel::SetTxCurrentA | ( | double | txCurrentA | ) |
Sets transmit current.
txCurrentA | the transmit current |
Definition at line 202 of file wifi-radio-energy-model.cc.
References m_txCurrentA, and NS_LOG_FUNCTION.
Referenced by GetTypeId().
void ns3::WifiRadioEnergyModel::SetTxCurrentFromModel | ( | double | txPowerDbm | ) |
Calls the CalcTxCurrent method of the tx current model to compute the tx current based on such model.
txPowerDbm | the nominal tx power in dBm |
Definition at line 288 of file wifi-radio-energy-model.cc.
References m_txCurrentA, and m_txCurrentModel.
Referenced by WifiRadioEnergyModel().
void ns3::WifiRadioEnergyModel::SetTxCurrentModel | ( | const Ptr< WifiTxCurrentModel > | model | ) |
model | the model used to compute the wifi tx current. |
Definition at line 282 of file wifi-radio-energy-model.cc.
References m_txCurrentModel.
|
private |
state | New state the radio device is currently in. |
Sets current state. This function is private so that only the energy model can change its own state.
Definition at line 493 of file wifi-radio-energy-model.cc.
References CCA_BUSY, IDLE, m_currentState, ns3::Simulator::Now(), NS_LOG_DEBUG, NS_LOG_FUNCTION, OFF, RX, SLEEP, SWITCHING, and TX.
Referenced by ChangeState().
|
private |
CCA busy current.
Definition at line 423 of file wifi-radio-energy-model.h.
Referenced by ChangeState(), DoGetCurrentA(), GetCcaBusyCurrentA(), GetMaximumTimeInState(), GetTotalEnergyConsumption(), and SetCcaBusyCurrentA().
|
private |
current state the radio is in
Definition at line 432 of file wifi-radio-energy-model.h.
Referenced by ChangeState(), DoGetCurrentA(), GetCurrentState(), GetTotalEnergyConsumption(), HandleEnergyChanged(), SetEnergySource(), and SetWifiRadioState().
|
private |
Energy depletion callback.
Definition at line 438 of file wifi-radio-energy-model.h.
Referenced by DoDispose(), HandleEnergyDepletion(), SetEnergyDepletionCallback(), and WifiRadioEnergyModel().
|
private |
Energy recharged callback.
Definition at line 441 of file wifi-radio-energy-model.h.
Referenced by HandleEnergyRecharged(), and SetEnergyRechargedCallback().
|
private |
idle current
Definition at line 422 of file wifi-radio-energy-model.h.
Referenced by ChangeState(), DoGetCurrentA(), GetIdleCurrentA(), GetMaximumTimeInState(), GetTotalEnergyConsumption(), and SetIdleCurrentA().
|
private |
time stamp of previous energy update
Definition at line 433 of file wifi-radio-energy-model.h.
Referenced by ChangeState(), and GetTotalEnergyConsumption().
|
private |
WifiPhy listener.
Definition at line 444 of file wifi-radio-energy-model.h.
Referenced by GetPhyListener(), WifiRadioEnergyModel(), and ~WifiRadioEnergyModel().
|
private |
pending state change
Definition at line 435 of file wifi-radio-energy-model.h.
Referenced by ChangeState().
|
private |
receive current
Definition at line 421 of file wifi-radio-energy-model.h.
Referenced by ChangeState(), DoGetCurrentA(), GetMaximumTimeInState(), GetRxCurrentA(), GetTotalEnergyConsumption(), and SetRxCurrentA().
|
private |
sleep current
Definition at line 425 of file wifi-radio-energy-model.h.
Referenced by ChangeState(), DoGetCurrentA(), GetMaximumTimeInState(), GetSleepCurrentA(), GetTotalEnergyConsumption(), and SetSleepCurrentA().
|
private |
energy source
Definition at line 417 of file wifi-radio-energy-model.h.
Referenced by ChangeState(), DoDispose(), GetMaximumTimeInState(), GetTotalEnergyConsumption(), and SetEnergySource().
|
private |
switching current
Definition at line 424 of file wifi-radio-energy-model.h.
Referenced by ChangeState(), DoGetCurrentA(), GetMaximumTimeInState(), GetSwitchingCurrentA(), GetTotalEnergyConsumption(), and SetSwitchingCurrentA().
|
private |
switch to off event
Definition at line 446 of file wifi-radio-energy-model.h.
Referenced by ChangeState(), HandleEnergyChanged(), and SetEnergySource().
|
private |
This variable keeps track of the total energy consumed by this model.
Definition at line 429 of file wifi-radio-energy-model.h.
Referenced by ChangeState(), GetTotalEnergyConsumption(), and GetTypeId().
|
private |
transmit current
Definition at line 420 of file wifi-radio-energy-model.h.
Referenced by ChangeState(), DoGetCurrentA(), GetMaximumTimeInState(), GetTotalEnergyConsumption(), GetTxCurrentA(), SetTxCurrentA(), and SetTxCurrentFromModel().
|
private |
current model
Definition at line 426 of file wifi-radio-energy-model.h.
Referenced by GetTypeId(), SetTxCurrentFromModel(), SetTxCurrentModel(), and ~WifiRadioEnergyModel().