25 #include "ns3/packet.h" 
   27 #include "ns3/lte-rlc-am-header.h" 
   54     uint32_t psize = pkt->
GetSize ();
 
   55     uint8_t buffer[psize];
 
   56     std::ostringstream oss (std::ostringstream::out);
 
   58     for (uint32_t i = 0; i < psize; i++)
 
   60         oss << std::setfill (
'0') << std::setw (2) << std::hex << (uint32_t) buffer[i];
 
   72     uint32_t psize = pkt->
GetSize ();
 
   73     uint8_t buffer[psize];
 
   74     std::ostringstream oss (std::ostringstream::out);
 
   76     for (uint32_t i = 0; i < psize; i++)
 
   78         oss << (std::bitset<8> (buffer[i]));
 
   80     return std::string (oss.str () + 
"\n");
 
   89     NS_LOG_DEBUG (
"---- SERIALIZED PACKET CONTENTS (HEX): -------");
 
  102     NS_LOG_DEBUG (
"--------- " << s.data () << 
" INFO: -------");
 
  103     std::ostringstream oss (std::ostringstream::out);
 
  127               std::list<SequenceNumber10> nackSnList,
 
  131   virtual void DoRun (
void);
 
  141                         std::list<SequenceNumber10> nackSnList ,
 
  145     m_nackSnList (nackSnList),
 
  161   for (std::list<SequenceNumber10>::iterator it = 
m_nackSnList.begin ();
 
  165       h.PushNack (it->GetValue ());
 
  178   for (std::list<SequenceNumber10>::iterator it = 
m_nackSnList.begin ();
 
  210     std::list<SequenceNumber10> nackSnList;
 
  211     std::string hex (
"0020");
 
  217     std::list<SequenceNumber10> nackSnList;
 
  218     std::string hex (
"0da4");
 
  224     std::list<SequenceNumber10> nackSnList;
 
  226     std::string hex (
"000bb480");
 
  233     std::list<SequenceNumber10> nackSnList;
 
  236     std::string hex (
"000bfed790");
 
  243     std::list<SequenceNumber10> nackSnList;
 
  247     std::string hex (
"000bfed795d980");
 
  254     std::list<SequenceNumber10> nackSnList;
 
  259     std::string hex (
"000bfed795d9cad8");
 
uint32_t RemoveHeader(Header &header)
Deserialize and remove the header from the internal buffer. 
 
#define NS_LOG_FUNCTION(parameters)
If log level LOG_FUNCTION is enabled, this macro will output all input parameters separated by "...
 
Rlc Am Status Pdu Test Case. 
 
ns3::LteRlcHeaderTestSuite staticLteRlcHeaderTestSuiteInstance
the test suite 
 
static void LogPacketContents(Ptr< Packet > pkt)
Function to log packet contents. 
 
static void LogPacketInfo(T source, std::string s)
Log packet infor function. 
 
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name. 
 
uint32_t GetSize(void) const 
Returns the the size in bytes of the packet (including the zero-filled initial payload). 
 
static std::string sprintPacketContentsHex(Ptr< Packet > pkt)
Function to convert packet contents in hex format. 
 
void AddTestCase(TestCase *testCase, TestDuration duration=QUICK)
Add an individual child TestCase to this test suite. 
 
#define NS_TEST_ASSERT_MSG_EQ(actual, limit, msg)
Test that an actual and expected (limit) value are equal and report and abort if not. 
 
Every class exported by the ns3 library is enclosed in the ns3 namespace. 
 
RlcAmStatusPduTestCase(SequenceNumber10 ackSn, std::list< SequenceNumber10 > nackSnList, std::string hex)
Constructor. 
 
SequenceNumber10 m_ackSn
ack sequence number 
 
#define NS_LOG_DEBUG(msg)
Use NS_LOG to output a message of level LOG_DEBUG. 
 
uint32_t CopyData(uint8_t *buffer, uint32_t size) const 
Copy the packet contents to a byte buffer. 
 
virtual void DoRun(void)
Implementation to actually run this TestCase. 
 
#define NS_TEST_ASSERT_MSG_GT(actual, limit, msg)
Test that an actual value is greater than a limit and report and abort if not. 
 
static std::string sprintPacketContentsBin(Ptr< Packet > pkt)
Function to convert packet contents in binary format. 
 
std::list< SequenceNumber10 > m_nackSnList
list of nack sequence numbers 
 
#define NS_TEST_ASSERT_MSG_LT(actual, limit, msg)
Test that an actual value is less than a limit and report and abort if not. 
 
void AddHeader(const Header &header)
Add header to this packet. 
 
std::string m_hex
hex string