delayunqueue.hh

来自「COPE the first practical network coding 」· HH 代码 · 共 59 行

HH
59
字号
#ifndef CLICK_DELAYUNQUEUE_HH#define CLICK_DELAYUNQUEUE_HH#include <click/element.hh>#include <click/task.hh>#include <click/timer.hh>#include <click/notifier.hh>CLICK_DECLS/*=cDelayUnqueue(DELAY)=s packet schedulingdelay inducing pull-to-push converter=dPulls packets from the single input port. Delays them for at least DELAYseconds, with microsecond precision. A packet with timestamp T will be emittedno earlier than time (T + DELAY). On output, the packet's timestamp is set tothe current time.DelayUnqueue listens for upstream notification, such as that available fromQueue.=a Queue, Unqueue, RatedUnqueue, BandwidthRatedUnqueue, LinkUnqueue,DelayShaper, SetTimestamp */class DelayUnqueue : public Element { public:      DelayUnqueue();    ~DelayUnqueue();    const char *class_name() const	{ return "DelayUnqueue"; }    const char *processing() const	{ return PULL_TO_PUSH; }    int configure(Vector<String> &, ErrorHandler *);    int initialize(ErrorHandler *);    void cleanup(CleanupStage);    void add_handlers();      bool run_task();    static String read_param(Element *e, void *);  private:    Packet *_p;    Timestamp _delay;    Task _task;    Timer _timer;    NotifierSignal _signal;  };CLICK_ENDDECLS#endif

⌨️ 快捷键说明

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