⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 measure.cc.cc

📁 在网络的边缘路由器中并不能完全接受所到的包
💻 CC
字号:
//MEASURE.CC
//Member function defenitions for Measure class

#include <iostream.h>
#include "measure.h"

//Measure constructor initializes each datamember to zero

Measure::Measure()
{
     bind("off_cmn_",&off_cmn_);
     bind("off_ip_",&off_ip_);
     bind("off_rtp_",&off_rtp_);
     seqno = 0;
     flowid = 0;
     uniqueid = 0;
     size = 0;
     arrivaltime = 0.0;
     servicetime = 0.0;
     classofpacket = -1;
}

// create the list of packets arrived into the network

void Measure::createPacketinfolist(Packet* p)
{
   hdr_cmn* hdr = (hdr_cmn*)p->access(off_cmn_);
   hdr_ip* iph = (hdr_ip*)p->access(off_ip_);
   hdr_rtp* rh = (hdr_rtp*)p->access(off_rtp_);

   seqno = rh->seqno();
   flowid = iph->flowid();
   uniqueid = hdr->uid();
   size = hdr->size();
   arrivaltime = hdr->arrivaltimestamp();
   servicetime = hdr->servicetimestamp();
   classofpacket = hdr->classofpacket();

}

void Measure::deletePacketinfolist()
{
   seqno = 0;
   flowid = 0;
   uniqueid = 0;
   size = 0;
   arrivaltime = 0.0;
   servicetime = 0.0;
   classofpacket = -1;
}

void Measure::printPacketinfolist()
{
  printf(" The sequenceno = %d, flowid = %d, uniqueid = %d, size = %d, arrivaltime
= %f, servicetime = %f, classofpacket = %d \n",seqno,flowid,uniqueid,size,arrivaltime,servicetime,classofpacket);
}

int Measure::getseqno()
{
  return(seqno);
}

int Measure::getflowid()
{
  return(flowid);
}

int Measure::getuniqueid()
{
  return(uniqueid);
}

int Measure::getsize()
{
  return(size);
}

double Measure::getarrivaltime()
{
  return(arrivaltime);
}

double Measure::getservicetime()
{
  return(servicetime);
}

int Measure::getclassofpacket()
{
  return(classofpacket);
}  


static class MeasureClass : public TclClass {
 public:
        MeasureClass() : TclClass("Measure") {}
        TclObject* create(int, const char*const*) {
                return (new Measure());
        }
} measure_class;

int Measure::command(int argc, const char*const* argv)
{
  Tcl& tcl = Tcl::instance();

  return TclObject::command(argc, argv); 
}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -