agent.h

来自「模拟器提供了一个简单易用的平台」· C头文件 代码 · 共 92 行

H
92
字号
/* * File: agent.h * Author: Suman Banerjee <suman@cs.umd.edu> * Date: July 31, 2001 * Terms: GPL * * myns simulator */#ifndef _AGENT_H_#define _AGENT_H_#include <packet.h>class Node;enum SourceDistributionType {  DIST_CONSTANT,  DIST_UNIFORM,  DIST_EXPONENTIAL};enum AgentType {  AGENT_NONE,  AGENT_ROUTING,  AGENT_APPLICATION_RP,  AGENT_APPLICATION_MC,  AGENT_APPLICATION_BSE,  AGENT_APPLICATION_COOP,  AGENT_APPLICATION_BEACON,  AGENT_APPLICATION_QUERY};enum AgentEventType {  AGENT_START,  AGENT_STOP,  AGENT_SOURCE};struct AgentInfo {  int agent_id;  int node_id;  AgentInfo () {}  AgentInfo (int aid, int nid) { agent_id = aid; node_id = nid; }};struct AgentEvent {  AgentEventType t;  SourceDistributionType sdt;  int source_burst;  double source_gap;  AgentEvent (AgentEventType type) { t = type; }};class Agent {public :  AgentType t;  int id;  int index;  Node *n;  bool started;  Agent (void) {};  Agent (int Id, int Index, Node *N);  virtual ~Agent (void) {};  virtual void init (int Id, int Index, Node *N);  virtual void start (void);  virtual void stop (void);  void send_pkt (Packet *p, int dst_ag, int dst_node);  void generic_rx_pkt_handler (Packet *p);  virtual void specific_rx_pkt_handler (Packet *p);   /* This is called by generic */  void generic_send_data_pkt (SourceDistributionType sdt, int burst_size, double burst_gap);  virtual void specific_send_data_pkt (void);  void EventHandler (AgentEvent *ae);};void init_random_for_pkt_sources (unsigned int seed);long int get_pkt_source_random (void);#endif

⌨️ 快捷键说明

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