#include <IPTrafGen.h>
Protected Member Functions | |
virtual void | printPacket (cPacket *msg) |
virtual void | processPacket (cPacket *msg) |
virtual void | initialize () |
virtual void | handleMessage (cMessage *msg) |
Protected Attributes | |
int | numReceived |
void IPTrafSink::printPacket | ( | cPacket * | msg | ) | [protected, virtual] |
Referenced by processPacket(), and IPTrafGen::sendPacket().
00050 { 00051 IPvXAddress src, dest; 00052 int protocol = -1; 00053 if (dynamic_cast<IPControlInfo *>(msg->getControlInfo())!=NULL) 00054 { 00055 IPControlInfo *ctrl = (IPControlInfo *)msg->getControlInfo(); 00056 src = ctrl->getSrcAddr(); 00057 dest = ctrl->getDestAddr(); 00058 protocol = ctrl->getProtocol(); 00059 } 00060 else if (dynamic_cast<IPv6ControlInfo *>(msg->getControlInfo())!=NULL) 00061 { 00062 IPv6ControlInfo *ctrl = (IPv6ControlInfo *)msg->getControlInfo(); 00063 src = ctrl->getSrcAddr(); 00064 dest = ctrl->getDestAddr(); 00065 protocol = ctrl->getProtocol(); 00066 } 00067 00068 ev << msg << endl; 00069 ev << "Payload length: " << msg->getByteLength() << " bytes" << endl; 00070 if (protocol!=-1) 00071 ev << "src: " << src << " dest: " << dest << " protocol=" << protocol << "\n"; 00072 }
void IPTrafSink::processPacket | ( | cPacket * | msg | ) | [protected, virtual] |
Referenced by IPTrafGen::handleMessage(), and handleMessage().
00075 { 00076 EV << "Received packet: "; 00077 printPacket(msg); 00078 delete msg; 00079 00080 numReceived++; 00081 }
void IPTrafSink::initialize | ( | ) | [protected, virtual] |
Referenced by IPTrafGen::initialize().
00031 { 00032 numReceived = 0; 00033 WATCH(numReceived); 00034 }
void IPTrafSink::handleMessage | ( | cMessage * | msg | ) | [protected, virtual] |
Reimplemented in IPTrafGen.
00037 { 00038 processPacket(check_and_cast<cPacket *>(msg)); 00039 00040 if (ev.isGUI()) 00041 { 00042 char buf[32]; 00043 sprintf(buf, "rcvd: %d pks", numReceived); 00044 getDisplayString().setTagArg("t",0,buf); 00045 } 00046 00047 }
int IPTrafSink::numReceived [protected] |
Referenced by IPTrafGen::handleMessage(), handleMessage(), initialize(), and processPacket().