⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 routing.h

📁 tinyos-2.x.rar
💻 H
字号:
/*
 * Copyright (c) 2007 Romain Thouvenin <romain.thouvenin@gmail.com>
 * Published under the terms of the GNU General Public License (GPLv2).
 */

#ifndef _DYMO_ROUTING_H_
#define _DYMO_ROUTING_H_

#include "AM.h"

typedef am_addr_t addr_t;
typedef nx_am_addr_t nx_addr_t;
typedef uint16_t seqnum_t;
typedef nx_uint16_t nx_seqnum_t;

#ifndef MAX_TABLE_SIZE
#define MAX_TABLE_SIZE 5
#endif

#ifndef DYMO_HOPLIMIT
#define DYMO_HOPLIMIT 10
#endif

#ifndef DYMO_ROUTE_AGE_MAX
#define DYMO_ROUTE_AGE_MAX 300000
#endif

#ifndef DYMO_ROUTE_TIMEOUT
#define DYMO_ROUTE_TIMEOUT 10000
#endif

#ifndef DYMO_APPEND_INFO
#define DYMO_APPEND_INFO      0      //1 to append info to forwarded RMs
#endif

#ifndef DYMO_INTER_RREP
#define DYMO_INTER_RREP       1      //1 to allow intermediate RREP 
#endif

#ifndef DYMO_FORCE_INTER_RREP
#define DYMO_FORCE_INTER_RREP 1      //1 to send intermediate RREP even without target's seqnum in the RREQ
#endif

#ifndef DYMO_LINK_FEEDBACK
#define DYMO_LINK_FEEDBACK    1      //1 to use acks to detect broken links
#endif

enum {
  AM_MULTIHOP = 9,
  AM_DYMO = 8
};

typedef enum {
  DYMO_RREQ = 10,
  DYMO_RREP,
  DYMO_RERR
} dymo_msg_t;

//processing action
typedef enum {
  ACTION_KEEP,   //info is kept in the forwarded message
  //  ACTION_UPDATE, //info is kept, and updated with the provided info
  ACTION_DISCARD, //info is not kept in the forwarded message
  ACTION_DISCARD_MSG //The message won't be forwarded, no need to build a forwarded message anymore
} proc_action_t;

typedef enum {
  FW_SEND,      //Put the message in the sending queue
  FW_RECEIVE,   //Give the message to the upper layer
  FW_WAIT,      //Retry later
  FW_DISCARD,   //Discard the message
} fw_action_t;


#endif

⌨️ 快捷键说明

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