|
Lines 545-570
WimaxHelper::EnableAsciiInternal (Ptr<Ou
|
Link Here
|
|---|
|
| 545 |
|
545 |
|
| 546 |
} |
546 |
} |
| 547 |
|
547 |
|
| 548 |
static void PcapSniffTxEvent (Ptr<PcapFileWrapper> file, |
548 |
static void PcapSniffTxRxEvent (Ptr<PcapFileWrapper> file, |
| 549 |
Ptr<const PacketBurst> burst) |
549 |
Ptr<const PacketBurst> burst) |
| 550 |
{ |
550 |
{ |
| 551 |
std::list<Ptr<Packet> > packets = burst->GetPackets (); |
551 |
std::list<Ptr<Packet> > packets = burst->GetPackets (); |
| 552 |
for (std::list<Ptr<Packet> >::iterator iter = packets.begin (); iter != packets.end (); ++iter) |
552 |
for (std::list<Ptr<Packet> >::iterator iter = packets.begin (); iter != packets.end (); ++iter) |
| 553 |
{ |
553 |
{ |
| 554 |
WimaxMacToMacHeader m2m ((*iter)->GetSize ()); |
554 |
Ptr<Packet> p = (*iter)->Copy (); |
| 555 |
(*iter)->AddHeader (m2m); |
555 |
WimaxMacToMacHeader m2m (p->GetSize ()); |
| 556 |
file->Write (Simulator::Now (), (*iter)); |
556 |
p->AddHeader (m2m); |
| 557 |
} |
557 |
file->Write (Simulator::Now (), p); |
| 558 |
} |
|
|
| 559 |
|
| 560 |
static void PcapSniffRxEvent (Ptr<PcapFileWrapper> file, Ptr<const PacketBurst> burst) |
| 561 |
{ |
| 562 |
std::list<Ptr<Packet> > packets = burst->GetPackets (); |
| 563 |
for (std::list<Ptr<Packet> >::iterator iter = packets.begin (); iter != packets.end (); ++iter) |
| 564 |
{ |
| 565 |
WimaxMacToMacHeader m2m ((*iter)->GetSize ()); |
| 566 |
(*iter)->AddHeader (m2m); |
| 567 |
file->Write (Simulator::Now (), (*iter)); |
| 568 |
} |
558 |
} |
| 569 |
} |
559 |
} |
| 570 |
|
560 |
|
|
Lines 597-604
WimaxHelper::EnablePcapInternal (std::st
|
Link Here
|
|---|
|
| 597 |
|
587 |
|
| 598 |
Ptr<PcapFileWrapper> file = pcapHelper.CreateFile (filename, std::ios::out, PcapHelper::DLT_EN10MB); |
588 |
Ptr<PcapFileWrapper> file = pcapHelper.CreateFile (filename, std::ios::out, PcapHelper::DLT_EN10MB); |
| 599 |
|
589 |
|
| 600 |
phy->TraceConnectWithoutContext ("Tx", MakeBoundCallback (&PcapSniffTxEvent, file)); |
590 |
phy->TraceConnectWithoutContext ("Tx", MakeBoundCallback (&PcapSniffTxRxEvent, file)); |
| 601 |
phy->TraceConnectWithoutContext ("Rx", MakeBoundCallback (&PcapSniffRxEvent, file)); |
591 |
phy->TraceConnectWithoutContext ("Rx", MakeBoundCallback (&PcapSniffTxRxEvent, file)); |
| 602 |
} |
592 |
} |
| 603 |
|
593 |
|
| 604 |
} // namespace ns3 |
594 |
} // namespace ns3 |