A Discrete-Event Network Simulator
API
NodeStatistics Class Reference
+ Collaboration diagram for NodeStatistics:

Public Member Functions

 NodeStatistics (NetDeviceContainer aps, NetDeviceContainer stas)
 
 NodeStatistics (NetDeviceContainer aps, NetDeviceContainer stas)
 
 NodeStatistics (NetDeviceContainer aps, NetDeviceContainer stas)
 
void AdvancePosition (Ptr< Node > node, int stepsSize, int stepsTime)
 
void AdvancePosition (Ptr< Node > node, int stepsSize, int stepsTime)
 
void CheckStatistics (double time)
 
void CheckStatistics (double time)
 
Gnuplot2dDataset GetBusyDatafile ()
 
double GetBusyTime ()
 
Gnuplot2dDataset GetDatafile ()
 
Gnuplot2dDataset GetDatafile ()
 
Gnuplot2dDataset GetDatafile ()
 
Gnuplot2dDataset GetIdleDatafile ()
 
Vector GetPosition (Ptr< Node > node)
 
Vector GetPosition (Ptr< Node > node)
 
Gnuplot2dDataset GetPowerDatafile ()
 
Gnuplot2dDataset GetPowerDatafile ()
 
Gnuplot2dDataset GetRxDatafile ()
 
Gnuplot2dDataset GetTxDatafile ()
 
void PhyCallback (std::string path, Ptr< const Packet > packet, double powerW)
 
void PhyCallback (std::string path, Ptr< const Packet > packet, double powerW)
 
void PowerCallback (std::string path, double oldPower, double newPower, Mac48Address dest)
 
void PowerCallback (std::string path, double oldPower, double newPower, Mac48Address dest)
 
void RateCallback (std::string path, DataRate oldRate, DataRate newRate, Mac48Address dest)
 
void RateCallback (std::string path, DataRate oldRate, DataRate newRate, Mac48Address dest)
 
void RxCallback (std::string path, Ptr< const Packet > packet, const Address &from)
 
void RxCallback (std::string path, Ptr< const Packet > packet, const Address &from)
 
void RxCallback (std::string path, Ptr< const Packet > packet, const Address &from)
 
void SetPosition (Ptr< Node > node, Vector position)
 
void SetPosition (Ptr< Node > node, Vector position)
 
void StateCallback (std::string path, Time init, Time duration, WifiPhyState state)
 

Private Types

typedef std::vector< std::pair< Time, DataRate > > TxTime
 
typedef std::vector< std::pair< Time, DataRate > > TxTime
 

Private Member Functions

Time GetCalcTxTime (DataRate rate)
 
Time GetCalcTxTime (DataRate rate)
 
void SetupPhy (Ptr< WifiPhy > phy)
 
void SetupPhy (Ptr< WifiPhy > phy)
 

Private Attributes

double busyTime
 
std::map< Mac48Address, double > currentPower
 
std::map< Mac48Address, DataRatecurrentRate
 
double idleTime
 
uint32_t m_bytesTotal
 
Gnuplot2dDataset m_output
 
Gnuplot2dDataset m_output_busy
 
Gnuplot2dDataset m_output_idle
 
Gnuplot2dDataset m_output_power
 
Gnuplot2dDataset m_output_rx
 
Gnuplot2dDataset m_output_tx
 
Ptr< WifiPhymyPhy
 
double rxTime
 
TxTime timeTable
 
double totalBusyTime
 
double totalEnergy
 
double totalIdleTime
 
double totalRxTime
 
double totalTime
 
double totalTxTime
 
double txTime
 

Detailed Description

Definition at line 115 of file wifi-power-adaptation-distance.cc.

Member Typedef Documentation

◆ TxTime [1/2]

typedef std::vector<std::pair<Time, DataRate> > NodeStatistics::TxTime
private

Definition at line 109 of file wifi-power-adaptation-interference.cc.

◆ TxTime [2/2]

typedef std::vector<std::pair<Time, DataRate> > NodeStatistics::TxTime
private

Definition at line 133 of file wifi-power-adaptation-distance.cc.

Constructor & Destructor Documentation

◆ NodeStatistics() [1/3]

NodeStatistics::NodeStatistics ( NetDeviceContainer  aps,
NetDeviceContainer  stas 
)

◆ NodeStatistics() [2/3]

NodeStatistics::NodeStatistics ( NetDeviceContainer  aps,
NetDeviceContainer  stas 
)

◆ NodeStatistics() [3/3]

NodeStatistics::NodeStatistics ( NetDeviceContainer  aps,
NetDeviceContainer  stas 
)

Member Function Documentation

◆ AdvancePosition() [1/2]

void NodeStatistics::AdvancePosition ( Ptr< Node node,
int  stepsSize,
int  stepsTime 
)

◆ AdvancePosition() [2/2]

void NodeStatistics::AdvancePosition ( Ptr< Node node,
int  stepsSize,
int  stepsTime 
)

Definition at line 252 of file wifi-power-adaptation-distance.cc.

References GetPosition(), ns3::Simulator::Now(), NS_LOG_INFO, ns3::Simulator::Schedule(), ns3::Seconds(), and SetPosition().

+ Here is the call graph for this function:

◆ CheckStatistics() [1/2]

void NodeStatistics::CheckStatistics ( double  time)

◆ CheckStatistics() [2/2]

void NodeStatistics::CheckStatistics ( double  time)

Definition at line 262 of file wifi-power-adaptation-interference.cc.

References ns3::Simulator::Now(), ns3::Simulator::Schedule(), and ns3::Seconds().

+ Here is the call graph for this function:

◆ GetBusyDatafile()

Gnuplot2dDataset NodeStatistics::GetBusyDatafile ( )

Definition at line 303 of file wifi-power-adaptation-interference.cc.

◆ GetBusyTime()

double NodeStatistics::GetBusyTime ( )

Definition at line 321 of file wifi-power-adaptation-interference.cc.

◆ GetCalcTxTime() [1/2]

Time NodeStatistics::GetCalcTxTime ( DataRate  rate)
private

◆ GetCalcTxTime() [2/2]

Time NodeStatistics::GetCalcTxTime ( DataRate  rate)
private

Definition at line 192 of file wifi-power-adaptation-distance.cc.

References NS_ASSERT, and ns3::Seconds().

+ Here is the call graph for this function:

◆ GetDatafile() [1/3]

Gnuplot2dDataset NodeStatistics::GetDatafile ( )

◆ GetDatafile() [2/3]

Gnuplot2dDataset NodeStatistics::GetDatafile ( )

◆ GetDatafile() [3/3]

Gnuplot2dDataset NodeStatistics::GetDatafile ( )

Definition at line 269 of file wifi-power-adaptation-distance.cc.

◆ GetIdleDatafile()

Gnuplot2dDataset NodeStatistics::GetIdleDatafile ( )

Definition at line 297 of file wifi-power-adaptation-interference.cc.

◆ GetPosition() [1/2]

Vector NodeStatistics::GetPosition ( Ptr< Node node)

◆ GetPosition() [2/2]

Vector NodeStatistics::GetPosition ( Ptr< Node node)

Definition at line 245 of file wifi-power-adaptation-distance.cc.

References ns3::Object::GetObject(), and third::mobility.

+ Here is the call graph for this function:

◆ GetPowerDatafile() [1/2]

Gnuplot2dDataset NodeStatistics::GetPowerDatafile ( )

◆ GetPowerDatafile() [2/2]

Gnuplot2dDataset NodeStatistics::GetPowerDatafile ( )

Definition at line 275 of file wifi-power-adaptation-distance.cc.

◆ GetRxDatafile()

Gnuplot2dDataset NodeStatistics::GetRxDatafile ( )

Definition at line 309 of file wifi-power-adaptation-interference.cc.

◆ GetTxDatafile()

Gnuplot2dDataset NodeStatistics::GetTxDatafile ( )

Definition at line 315 of file wifi-power-adaptation-interference.cc.

◆ PhyCallback() [1/2]

void NodeStatistics::PhyCallback ( std::string  path,
Ptr< const Packet packet,
double  powerW 
)

◆ PhyCallback() [2/2]

void NodeStatistics::PhyCallback ( std::string  path,
Ptr< const Packet packet,
double  powerW 
)

Definition at line 206 of file wifi-power-adaptation-distance.cc.

References ns3::WifiMacHeader::GetAddr1(), ns3::WifiMacHeader::GetType(), ns3::Packet::PeekHeader(), and ns3::WIFI_MAC_DATA.

+ Here is the call graph for this function:

◆ PowerCallback() [1/2]

void NodeStatistics::PowerCallback ( std::string  path,
double  oldPower,
double  newPower,
Mac48Address  dest 
)

◆ PowerCallback() [2/2]

void NodeStatistics::PowerCallback ( std::string  path,
double  oldPower,
double  newPower,
Mac48Address  dest 
)

Definition at line 220 of file wifi-power-adaptation-distance.cc.

◆ RateCallback() [1/2]

void NodeStatistics::RateCallback ( std::string  path,
DataRate  oldRate,
DataRate  newRate,
Mac48Address  dest 
)

◆ RateCallback() [2/2]

void NodeStatistics::RateCallback ( std::string  path,
DataRate  oldRate,
DataRate  newRate,
Mac48Address  dest 
)

Definition at line 226 of file wifi-power-adaptation-distance.cc.

◆ RxCallback() [1/3]

void NodeStatistics::RxCallback ( std::string  path,
Ptr< const Packet packet,
const Address from 
)

◆ RxCallback() [2/3]

void NodeStatistics::RxCallback ( std::string  path,
Ptr< const Packet packet,
const Address from 
)

◆ RxCallback() [3/3]

void NodeStatistics::RxCallback ( std::string  path,
Ptr< const Packet packet,
const Address from 
)

Definition at line 232 of file wifi-power-adaptation-distance.cc.

References ns3::Packet::GetSize().

+ Here is the call graph for this function:

◆ SetPosition() [1/2]

void NodeStatistics::SetPosition ( Ptr< Node node,
Vector  position 
)

◆ SetPosition() [2/2]

void NodeStatistics::SetPosition ( Ptr< Node node,
Vector  position 
)

Definition at line 238 of file wifi-power-adaptation-distance.cc.

References ns3::Object::GetObject(), and third::mobility.

+ Here is the call graph for this function:

◆ SetupPhy() [1/2]

void NodeStatistics::SetupPhy ( Ptr< WifiPhy phy)
private

◆ SetupPhy() [2/2]

◆ StateCallback()

void NodeStatistics::StateCallback ( std::string  path,
Time  init,
Time  duration,
WifiPhyState  state 
)

Definition at line 231 of file wifi-power-adaptation-interference.cc.

References CCA_BUSY, ns3::Time::GetSeconds(), IDLE, RX, and TX.

+ Here is the call graph for this function:

Member Data Documentation

◆ busyTime

double NodeStatistics::busyTime
private

Definition at line 118 of file wifi-power-adaptation-interference.cc.

◆ currentPower

std::map< Mac48Address, double > NodeStatistics::currentPower
private

Definition at line 137 of file wifi-power-adaptation-distance.cc.

◆ currentRate

std::map< Mac48Address, DataRate > NodeStatistics::currentRate
private

Definition at line 138 of file wifi-power-adaptation-distance.cc.

◆ idleTime

double NodeStatistics::idleTime
private

Definition at line 119 of file wifi-power-adaptation-interference.cc.

◆ m_bytesTotal

uint32_t NodeStatistics::m_bytesTotal
private

Definition at line 139 of file wifi-power-adaptation-distance.cc.

◆ m_output

Gnuplot2dDataset NodeStatistics::m_output
private

Definition at line 144 of file wifi-power-adaptation-distance.cc.

◆ m_output_busy

Gnuplot2dDataset NodeStatistics::m_output_busy
private

Definition at line 131 of file wifi-power-adaptation-interference.cc.

◆ m_output_idle

Gnuplot2dDataset NodeStatistics::m_output_idle
private

Definition at line 130 of file wifi-power-adaptation-interference.cc.

◆ m_output_power

Gnuplot2dDataset NodeStatistics::m_output_power
private

Definition at line 145 of file wifi-power-adaptation-distance.cc.

◆ m_output_rx

Gnuplot2dDataset NodeStatistics::m_output_rx
private

Definition at line 132 of file wifi-power-adaptation-interference.cc.

◆ m_output_tx

Gnuplot2dDataset NodeStatistics::m_output_tx
private

Definition at line 133 of file wifi-power-adaptation-interference.cc.

◆ myPhy

Ptr< WifiPhy > NodeStatistics::myPhy
private

Definition at line 142 of file wifi-power-adaptation-distance.cc.

◆ rxTime

double NodeStatistics::rxTime
private

Definition at line 121 of file wifi-power-adaptation-interference.cc.

◆ timeTable

TxTime NodeStatistics::timeTable
private

Definition at line 143 of file wifi-power-adaptation-distance.cc.

◆ totalBusyTime

double NodeStatistics::totalBusyTime
private

Definition at line 122 of file wifi-power-adaptation-interference.cc.

◆ totalEnergy

double NodeStatistics::totalEnergy
private

Definition at line 140 of file wifi-power-adaptation-distance.cc.

◆ totalIdleTime

double NodeStatistics::totalIdleTime
private

Definition at line 123 of file wifi-power-adaptation-interference.cc.

◆ totalRxTime

double NodeStatistics::totalRxTime
private

Definition at line 125 of file wifi-power-adaptation-interference.cc.

◆ totalTime

double NodeStatistics::totalTime
private

Definition at line 141 of file wifi-power-adaptation-distance.cc.

◆ totalTxTime

double NodeStatistics::totalTxTime
private

Definition at line 124 of file wifi-power-adaptation-interference.cc.

◆ txTime

double NodeStatistics::txTime
private

Definition at line 120 of file wifi-power-adaptation-interference.cc.


The documentation for this class was generated from the following files: