对GPSR代码的理解——gpsr_sinklist.h

sink表维护一个数据接收器表,应用于多个数据接收器。并不是所有节点都要去维护一个数据接收器表,只有数据源节点才可能需要做这个工作。

#ifndef GPSR_SINK_LIST_H_
#define GPSR_SINK_LIST_H_

#include "config.h"

struct sink_entry{  //数据接收器
  nsaddr_t id_;
  double x_;
  double y_;
  nsaddr_t lasthop_;
  int hops_;
  int seqno_;
  struct sink_entry *next_;
};

class Sinks {  //Sink表维护一个数据接收器列表,它用于多个数据接收器,这不是GPSR设计的一部分
  struct sink_entry *sinklist_;
 public:
  Sinks();
  bool new_sink(nsaddr_t, double, double, nsaddr_t, int, int); //创建新的数据接收器
  bool remove_sink(nsaddr_t);  //删除数据接收器
  void getLocbyID(nsaddr_t, double&, double&, int&);//通过id获取节点位置
  void dump(); //转储
};

#endif

你可能感兴趣的:(对GPSR代码的理解——gpsr_sinklist.h)