queuenotify.hh

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

HH
60
字号
#ifndef QUEUENOTIFY_HH#define QUEUENOTIFY_HH#include <click/element.hh>#include <click/bitvector.hh>#include <click/glue.hh>#include "../../elements/standard/queue.hh"/* * =c * QueueNotify * QueueNotify(CAPACITY) * =s storage * stores packets in a FIFO queue * =d * Stores incoming packets in a first-in-first-out queue. * Drops incoming packets if the queue already holds CAPACITY packets. * The default for CAPACITY is 1000. * =h length read-only * Returns the current number of packets in the queue. * =h highwater_length read-only * Returns the maximum number of packets that have ever been in the queue at once. * =h capacity read/write * Returns or sets the queue's capacity. * =h drops read-only * Returns the number of packets dropped by the Queue so far. * =h reset_counts write-only * When written, resets the C<drops> and C<highwater_length> counters. * =h reset write-only * When written, drops all packets in the Queue. * =a Queue, RED, FrontDropQueue */class NotifiedElement { public:  virtual void notify(int i);};class QueueNotify : public Queue { public:  static const int NODATA = 0;  static const int DATAREADY = 1;  QueueNotify();  const char *class_name() const { return "QueueNotify";}  void *cast(const char *);  void subscribe_notification(NotifiedElement *e);  void notify_subscribers(int signal);  void push(int port, Packet *);  Packet *pull(int port);protected:  Vector<NotifiedElement*> _subscribers;  };#endif

⌨️ 快捷键说明

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