# HG changeset patch # User Gustavo J. A. M. Carneiro # Date 1245865384 -3600 # Node ID a720292fcd24e55dd5dcffc8912d5614ce0fb194 # Parent 7f4ee7f84b199debe6f546cac204d0ba5142ad5d# Parent 9c5c28319c734104d376b8dc534e28cdfdba860c merge diff -r 7f4ee7f84b19 -r a720292fcd24 examples/stats/wifi-example-apps.cc --- a/examples/stats/wifi-example-apps.cc Wed Jun 24 18:42:07 2009 +0100 +++ b/examples/stats/wifi-example-apps.cc Wed Jun 24 18:43:04 2009 +0100 @@ -250,11 +250,14 @@ } TimestampTag timestamp; - packet->FindFirstMatchingByteTag(timestamp); - Time tx = timestamp.GetTimestamp(); + // Should never not be found since the sender is adding it, but + // you never know. + if (packet->FindFirstMatchingByteTag(timestamp)) { + Time tx = timestamp.GetTimestamp(); - if (m_delay != 0) { - m_delay->Update(Simulator::Now() - tx); + if (m_delay != 0) { + m_delay->Update(Simulator::Now() - tx); + } } if (m_calc != 0) { diff -r 7f4ee7f84b19 -r a720292fcd24 examples/stats/wifi-example-sim.cc --- a/examples/stats/wifi-example-sim.cc Wed Jun 24 18:42:07 2009 +0100 +++ b/examples/stats/wifi-example-sim.cc Wed Jun 24 18:43:04 2009 +0100 @@ -54,9 +54,8 @@ void TxCallback(Ptr > datac, - std::string path, Ptr packet, - Mac48Address realto) { - NS_LOG_INFO("Sent frame to " << realto << "; counted in " << + std::string path, Ptr packet) { + NS_LOG_INFO("Sent frame counted in " << datac->GetKey()); datac->Update(); // end TxCallback @@ -201,7 +200,7 @@ Ptr > totalTx = CreateObject >(); totalTx->SetKey("wifi-tx-frames"); - Config::Connect("/NodeList/0/DeviceList/*/$ns3::WifiNetDevice/Tx", + Config::Connect("/NodeList/0/DeviceList/*/$ns3::WifiNetDevice/Mac/MacTx", MakeBoundCallback(&TxCallback, totalTx)); data.AddDataCalculator(totalTx); @@ -212,9 +211,9 @@ Ptr totalRx = CreateObject(); totalRx->SetKey("wifi-rx-frames"); - Config::Connect("/NodeList/1/DeviceList/*/$ns3::WifiNetDevice/Rx", - MakeCallback(&PacketCounterCalculator::FrameUpdate, - totalRx)); + Config::Connect("/NodeList/1/DeviceList/*/$ns3::WifiNetDevice/Mac/MacRx", + MakeCallback(&PacketCounterCalculator::PacketUpdate, + totalRx)); data.AddDataCalculator(totalRx); diff -r 7f4ee7f84b19 -r a720292fcd24 src/contrib/stats/data-output-interface.cc --- a/src/contrib/stats/data-output-interface.cc Wed Jun 24 18:42:07 2009 +0100 +++ b/src/contrib/stats/data-output-interface.cc Wed Jun 24 18:43:04 2009 +0100 @@ -45,3 +45,15 @@ Object::DoDispose(); // end DataOutputInterface::DoDispose } + +void +DataOutputInterface::SetFilePrefix(const std::string prefix) +{ + m_filePrefix = prefix; +} + +std::string +DataOutputInterface::GetFilePrefix() const +{ + return m_filePrefix; +} diff -r 7f4ee7f84b19 -r a720292fcd24 src/contrib/stats/data-output-interface.h --- a/src/contrib/stats/data-output-interface.h Wed Jun 24 18:42:07 2009 +0100 +++ b/src/contrib/stats/data-output-interface.h Wed Jun 24 18:43:04 2009 +0100 @@ -37,9 +37,14 @@ virtual void Output(DataCollector &dc) = 0; + void SetFilePrefix(const std::string prefix); + std::string GetFilePrefix() const; + protected: virtual void DoDispose(); + std::string m_filePrefix; + // end class DataOutputInterface }; diff -r 7f4ee7f84b19 -r a720292fcd24 src/contrib/stats/omnet-data-output.cc --- a/src/contrib/stats/omnet-data-output.cc Wed Jun 24 18:42:07 2009 +0100 +++ b/src/contrib/stats/omnet-data-output.cc Wed Jun 24 18:43:04 2009 +0100 @@ -34,9 +34,10 @@ //-------------------------------------------------------------- //---------------------------------------------- -OmnetDataOutput::OmnetDataOutput() : - m_filePrefix("data") +OmnetDataOutput::OmnetDataOutput() { + m_filePrefix = "data"; + NS_LOG_FUNCTION_NOARGS(); } OmnetDataOutput::~OmnetDataOutput() @@ -52,17 +53,6 @@ // end OmnetDataOutput::DoDispose } -void -OmnetDataOutput::SetFilePrefix(const std::string prefix) -{ - m_filePrefix = prefix; -} -std::string -OmnetDataOutput::GetFilePrefix() const -{ - return m_filePrefix; -} - //---------------------------------------------- void OmnetDataOutput::Output(DataCollector &dc) diff -r 7f4ee7f84b19 -r a720292fcd24 src/contrib/stats/omnet-data-output.h --- a/src/contrib/stats/omnet-data-output.h Wed Jun 24 18:42:07 2009 +0100 +++ b/src/contrib/stats/omnet-data-output.h Wed Jun 24 18:43:04 2009 +0100 @@ -37,9 +37,6 @@ virtual void Output(DataCollector &dc); - void SetFilePrefix(const std::string prefix); - std::string GetFilePrefix() const; - protected: virtual void DoDispose(); @@ -73,7 +70,6 @@ // end class OmnetOutputCallback }; - std::string m_filePrefix; // end class OmnetDataOutput }; diff -r 7f4ee7f84b19 -r a720292fcd24 src/contrib/stats/sqlite-data-output.cc --- a/src/contrib/stats/sqlite-data-output.cc Wed Jun 24 18:42:07 2009 +0100 +++ b/src/contrib/stats/sqlite-data-output.cc Wed Jun 24 18:43:04 2009 +0100 @@ -35,9 +35,9 @@ //-------------------------------------------------------------- //---------------------------------------------- -SqliteDataOutput::SqliteDataOutput() : - m_dbFile("data.db") +SqliteDataOutput::SqliteDataOutput() { + m_filePrefix = "data"; NS_LOG_FUNCTION_NOARGS(); } SqliteDataOutput::~SqliteDataOutput() @@ -53,17 +53,6 @@ // end SqliteDataOutput::DoDispose } -void -SqliteDataOutput::SetDBFile(const std::string file) -{ - m_dbFile = file; -} -std::string -SqliteDataOutput::GetDBFile() const -{ - return m_dbFile; -} - int SqliteDataOutput::Exec(std::string exe) { int res; @@ -111,6 +100,7 @@ void SqliteDataOutput::Output(DataCollector &dc) { + std::string m_dbFile = m_filePrefix + ".db"; if (sqlite3_open(m_dbFile.c_str(), &m_db)) { NS_LOG_ERROR("Could not open sqlite3 database \"" << m_dbFile << "\""); diff -r 7f4ee7f84b19 -r a720292fcd24 src/contrib/stats/sqlite-data-output.h --- a/src/contrib/stats/sqlite-data-output.h Wed Jun 24 18:42:07 2009 +0100 +++ b/src/contrib/stats/sqlite-data-output.h Wed Jun 24 18:43:04 2009 +0100 @@ -40,9 +40,6 @@ virtual void Output(DataCollector &dc); - void SetDBFile(const std::string file); - std::string GetDBFile() const; - protected: virtual void DoDispose(); @@ -82,7 +79,6 @@ sqlite3 *m_db; int Exec(std::string exe); - std::string m_dbFile; // end class SqliteDataOutput };