A Discrete-Event Network Simulator
API
Classes | Namespaces | Macros | Functions | Variables
traced-callback-typedef-test-suite.cc File Reference
#include <iostream>
#include <sstream>
#include <set>
#include <string>
#include "ns3/test.h"
#include "ns3/core-module.h"
#include "ns3/dsr-module.h"
#include "ns3/internet-module.h"
#include "ns3/lr-wpan-mac.h"
#include "ns3/lte-module.h"
#include "ns3/mesh-module.h"
#include "ns3/mobility-module.h"
#include "ns3/network-module.h"
#include "ns3/olsr-module.h"
#include "ns3/sixlowpan-module.h"
#include "ns3/spectrum-module.h"
#include "ns3/stats-module.h"
#include "ns3/uan-module.h"
#include "ns3/wifi-phy-state-helper.h"

Go to the source code of this file.

Classes

class  TracedCallbackTypedefTestCase::Checker< T1, T2, T3, T4, T5 >
 Callback checkers. More...
 
class  TracedCallbackTypedefTestCase::Checker< T1, T2, T3, T4, T5 >
 Callback checkers. More...
 
class  TracedCallbackTypedefTestCase::Checker< T1, empty, empty, empty, empty >
 
class  TracedCallbackTypedefTestCase::Checker< T1, T2, empty, empty, empty >
 
class  TracedCallbackTypedefTestCase::Checker< T1, T2, T3, empty, empty >
 
class  TracedCallbackTypedefTestCase::Checker< T1, T2, T3, T4, empty >
 
class  TracedCallbackTypedefTestCase::CheckerBase< T1, T2, T3, T4, T5 >
 Invoker boilerplate. More...
 
class  TracedCallbackTypedefTestCase::CheckerBase< T1, T2, T3, T4, T5 >
 Invoker boilerplate. More...
 
class  TracedCallbackTypedefTestCase
 
class  TracedCallbackTypedefTestSuite
 
class  anonymous_namespace{traced-callback-typedef-test-suite.cc}::TracedCbSink< T1, T2, T3, T4, T5 >
 Sink functions. More...
 
class  anonymous_namespace{traced-callback-typedef-test-suite.cc}::TracedCbSink< T1, empty, empty, empty, empty >
 
class  anonymous_namespace{traced-callback-typedef-test-suite.cc}::TracedCbSink< T1, T2, empty, empty, empty >
 
class  anonymous_namespace{traced-callback-typedef-test-suite.cc}::TracedCbSink< T1, T2, T3, empty, empty >
 
class  anonymous_namespace{traced-callback-typedef-test-suite.cc}::TracedCbSink< T1, T2, T3, T4, empty >
 

Namespaces

 anonymous_namespace{traced-callback-typedef-test-suite.cc}
 

Macros

#define CHECK(U, T1, T2, T3, T4, T5)   CreateObject< Checker<T1, T2, T3, T4, T5> > ()->Invoke<U> ()
 
#define DUPE(U, T1)
 
#define TYPENAME(T)
 

Functions

std::set< std::string > anonymous_namespace{traced-callback-typedef-test-suite.cc}::Duplicates (void)
 Record typedefs which are identical to previously declared. More...
 
void anonymous_namespace{traced-callback-typedef-test-suite.cc}::SinkIt (unsigned int N)
 Log that a callback was invoked. More...
 
template<typename T >
std::string anonymous_namespace{traced-callback-typedef-test-suite.cc}::TypeName (int N)
 Stringify the known TracedCallback type names. More...
 
Stringify known typename.
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (dsr::DsrOptionSRHeader::TracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (EpcUeNas::StateTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (Ipv4L3Protocol::DropTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (Ipv4L3Protocol::SentTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (Ipv4L3Protocol::TxRxTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (Ipv6L3Protocol::DropTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (Ipv6L3Protocol::SentTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (Ipv6L3Protocol::TxRxTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (LrWpanMac::SentTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (LrWpanMac::StateTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (LrWpanPhy::StateTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (LteEnbMac::UlSchedulingTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (LteEnbPhy::ReportInterferenceTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (LteEnbPhy::ReportUeSinrTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (LteEnbRrc::ConnectionHandoverTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (LteEnbRrc::HandoverStartTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (LteEnbRrc::NewUeContextTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (LteEnbRrc::ReceiveReportTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (LtePdcp::PduRxTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (LtePdcp::PduTxTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (LteUePhy::StateTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (LteUePhy::RsrpSinrTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (LteUeRrc::CellSelectionTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (LteUeRrc::StateTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (Mac48Address::TracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (MobilityModel::TracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (olsr::RoutingProtocol::PacketTxRxTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (olsr::RoutingProtocol::TableChangeTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (Packet::AddressTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (Packet::Mac48AddressTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (Packet::SinrTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (Packet::SizeTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (Packet::TracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (PacketBurst::TracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (dot11s::PeerManagementProtocol::LinkOpenCloseTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (PhyReceptionStatParameters::TracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (PhyTransmissionStatParameters::TracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (SixLowPanNetDevice::DropTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (SixLowPanNetDevice::RxTxTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (SpectrumChannel::LossTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (SpectrumValue::TracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (TimeSeriesAdaptor::OutputTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (UanMac::PacketModeTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (UanMacCw::QueueTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (UanMacRc::QueueTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (UanNetDevice::RxTxTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (UanPhy::TracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (UeManager::StateTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (WifiMacHeader::TracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (WifiPhyStateHelper::RxOkTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (WifiPhyStateHelper::StateTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (WifiPhyStateHelper::TxTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (WifiRemoteStationManager::PowerChangeTracedCallback)
 
 anonymous_namespace{traced-callback-typedef-test-suite.cc}::TYPENAME (WifiRemoteStationManager::RateChangeTracedCallback)
 

Variables

std::set< std::string > anonymous_namespace{traced-callback-typedef-test-suite.cc}::g_dupes = Duplicates ()
 Container for duplicate types. More...
 
static TracedCallbackTypedefTestSuite tracedCallbackTypedefTestSuite
 

Macro Definition Documentation

◆ CHECK

#define CHECK (   U,
  T1,
  T2,
  T3,
  T4,
  T5 
)    CreateObject< Checker<T1, T2, T3, T4, T5> > ()->Invoke<U> ()

◆ DUPE

#define DUPE (   U,
  T1 
)
Value:
if (g_dupes.find ( # U ) == g_dupes.end ()) { \
NS_TEST_ASSERT_MSG_NE (0, 1, \
"expected to find " << # U << " in dupes."); } \
if (TypeName<U> (0) == TypeName<T1> (0)) { \
std::cout << # U << " matches " << # T1 << std::endl; } \
else \
NS_TEST_ASSERT_MSG_EQ \
(TypeName<U> (0), TypeName<T1> (0), \
"the typedef " << # U << \
" used to match the typedef " << # T1 << \
" but no longer does. Please add a new CHECK call.")
std::set< std::string > g_dupes
Container for duplicate types.

Referenced by TracedCallbackTypedefTestCase::DoRun().

◆ TYPENAME

#define TYPENAME (   T)
Value:
template <> \
inline std::string \
TypeName < T > (int N) \
{ \
std::stringstream ss; \
ss << # T << "(" << N << ")"; \
return ss.str (); \
}

Definition at line 133 of file traced-callback-typedef-test-suite.cc.

Variable Documentation

◆ tracedCallbackTypedefTestSuite

TracedCallbackTypedefTestSuite tracedCallbackTypedefTestSuite
static

Definition at line 686 of file traced-callback-typedef-test-suite.cc.