📄 unqueue.hh
字号:
#ifndef CLICK_UNQUEUE_HH#define CLICK_UNQUEUE_HH#include <click/element.hh>#include <click/task.hh>#include <click/notifier.hh>CLICK_DECLS/*=cUnqueue([BURST, I<KEYWORDS>])=s shapingpull-to-push converter=dPulls packets whenever they are available, then pushes them outits single output. Pulls a maximum of BURST packets every timeit is scheduled. Default BURST is 1. If BURSTis less than 0, pull until nothing comes back.Keyword arguments are:=over 4=item ACTIVEIf false, does nothing (doesn't pull packets). One possible useis to set ACTIVE to false in the configuration, and laterchange it to true with a handler from DriverManager element.The default value is true.=back=h count read-onlyReturns the count of packets that have passed through Unqueue.=h active read/writeThe same as ACTIVE keyword.=a RatedUnqueue, BandwidthRatedUnqueue*/class Unqueue : public Element { public: Unqueue(); ~Unqueue(); const char *class_name() const { return "Unqueue"; } const char *port_count() const { return PORTS_1_1; } const char *processing() const { return PULL_TO_PUSH; } int configure(Vector<String> &, ErrorHandler *); int initialize(ErrorHandler *); void add_handlers(); bool run_task(Task *); static String read_param(Element *e, void *); static int write_param(const String &, Element *, void *, ErrorHandler *); private: bool _active; int32_t _burst; unsigned _count; Task _task; NotifierSignal _signal;};CLICK_ENDDECLS#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -