资源简介
ns2.34可以使用的leach文件
代码片段和文件信息
/*************************************************************************
*
* This code was developed as part of the MIT SPIN project. (June 1999)
*
*************************************************************************/
#include
#include
#define SUCCESS 0
#define SUCCESS_STRING “success“
#define FAIL -1
#define FAIL_STRING “fail“
#define ALARM 1
#define ALARM_STRING “alarm“
static class EnergyResourceClass : public TclClass {
public:
EnergyResourceClass() : TclClass(“Resource/Energy“) {}
Tclobject* create(int const char*const*) {
return (new EnergyResource);
}
} class_EnergyResource;
EnergyResource::EnergyResource()
{
energy_level_ = 0;
alarm_level_ = 0;
bind(“energyLevel_“&energy_level_);
bind(“alarmLevel_“&alarm_level_);
bind(“expended_“&expended_);
}
int EnergyResource::command(int argc const char*const* argv)
{
Tcl& tcl = Tcl::instance();
if (argc == 2) {
if (strcmp(argv[1] “query“) == 0) {
double val = EnergyResource::query();
tcl.resultf(“%f“val);
return TCL_OK;
}
}
else
if (argc == 3) {
if (strcmp(argv[1] “add“) == 0) {
EnergyResource::add(atof(argv[2]));
return TCL_OK;
}
else
if (strcmp(argv[1] “remove“) == 0) {
int val = EnergyResource::remove(atof(argv[2]));
tcl.resultf(“%s“EnergyResource::resulttostring(val));
return TCL_OK;
}
else
if (strcmp(argv[1] “acquire“) == 0) {
double val = EnergyResource::acquire(atof(argv[2]));
tcl.resultf(“%f“EnergyResource::resulttostring((int)val));
return TCL_OK;
}
}
return Resource::command(argc argv);
}
void EnergyResource::add(double amount)
{
energy_level_ += amount;
}
int EnergyResource::remove(double amount)
{
double new_level = energy_level_ - amount;
energy_level_ = new_level;
expended_ += amount;
if (new_level < 0)
{
return FAIL;
}
if (new_level < alarm_level_)
{
return ALARM;
}
return SUCCESS;
}
int EnergyResource::acquire(double amount)
{
if ((energy_level_ - alarm_level_) < amount)
{
return FAIL;
}
return SUCCESS;
}
char *EnergyResource::resulttostring(int result)
{
switch (result)
{
case SUCCESS:
return SUCCESS_STRING;
case FAIL:
return FAIL_STRING;
case ALARM:
return ALARM_STRING;
default:
return NULL;
}
return NULL;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2013-04-25 00:01 直接覆盖的leach\
目录 0 2013-04-24 23:55 直接覆盖的leach\app\
文件 4169 2012-02-22 15:11 直接覆盖的leach\app\app.cc
文件 2626 2012-02-22 15:12 直接覆盖的leach\app\app.h
目录 0 2013-04-24 23:56 直接覆盖的leach\common\
文件 15898 2012-02-22 15:13 直接覆盖的leach\common\mobilenode.cc
文件 5107 2012-02-22 15:16 直接覆盖的leach\common\packet.cc
文件 24587 2012-02-22 15:29 直接覆盖的leach\common\packet.h
目录 0 2013-04-24 23:59 直接覆盖的leach\mac\
文件 21033 2012-02-22 15:37 直接覆盖的leach\mac\channel.cc
文件 4475 2012-02-22 15:38 直接覆盖的leach\mac\ll.h
文件 1791 2004-03-30 03:35 直接覆盖的leach\mac\mac-sensor-timers.cc
文件 1707 2004-03-30 03:42 直接覆盖的leach\mac\mac-sensor-timers.h
文件 9344 2004-04-16 22:30 直接覆盖的leach\mac\mac-sensor.cc
文件 3477 2004-03-30 03:42 直接覆盖的leach\mac\mac-sensor.h
文件 5243 2012-02-22 15:39 直接覆盖的leach\mac\mac.cc
文件 5750 2012-02-22 15:41 直接覆盖的leach\mac\phy.cc
文件 5286 2012-02-22 15:43 直接覆盖的leach\mac\phy.h
文件 20580 2012-02-22 15:56 直接覆盖的leach\mac\wireless-phy.cc
文件 6058 2012-02-22 15:55 直接覆盖的leach\mac\wireless-phy.h
目录 0 2013-04-25 00:00 直接覆盖的leach\mit\
目录 0 2013-04-25 00:00 直接覆盖的leach\mit\leach_sims\
文件 290 2011-05-19 19:04 直接覆盖的leach\mit\leach_sims\TDMAschedule.0.txt
文件 290 2011-05-19 19:04 直接覆盖的leach\mit\leach_sims\TDMAschedule.100.txt
文件 290 2011-05-19 19:04 直接覆盖的leach\mit\leach_sims\TDMAschedule.120.txt
文件 290 2011-05-19 19:04 直接覆盖的leach\mit\leach_sims\TDMAschedule.140.txt
文件 290 2011-05-19 19:05 直接覆盖的leach\mit\leach_sims\TDMAschedule.160.txt
文件 290 2011-05-19 19:05 直接覆盖的leach\mit\leach_sims\TDMAschedule.180.txt
文件 290 2011-05-19 19:04 直接覆盖的leach\mit\leach_sims\TDMAschedule.20.txt
文件 290 2011-05-19 19:05 直接覆盖的leach\mit\leach_sims\TDMAschedule.200.txt
文件 290 2011-05-19 19:05 直接覆盖的leach\mit\leach_sims\TDMAschedule.220.txt
............此处省略110个文件信息
- 上一篇:ns2 leach
- 下一篇:基于8086的多功能电子密码锁的设计
相关资源
- ns2 leach
- leach协议的MIT源码及详细仿真过程亲测
- LEACH协议源码及NS2下安装教程
- ns-2.34 leach和mflood协议的添加详细笔记
- LEACH的改进算法,LEACH-C
- WSN仿真-Leach分簇+能量消耗控制
- 基于NS2的leach路由协议及其改进的仿真
- 修正版ns2.35上移植leach协议
- 无限传感器网络中LEACH算法在NS2中的源
- NS2.35 实现 Leach分簇 代码
- ns-leach.tcl详细注解
- OMNeT++ 5.1 leach 可运行
- omnet++ 5.1版本下 Leach协议仿真代码
- Leach协议仿真的nam动画实现
- leach源代码改进
- mit.tar.gz
- Energy-Efficient Communication Protocol for Wi
- 论文仿真实验无错误的LEACH改进算法源
- mit235移植版_运行补丁
- mit235移植版.tar.gz
- ns2.34补丁
- NS2网络模拟简介以及MTE、LEACH、LEACH
- LEACH和DD协议的结合
- 无线传感网leach路由算法优化
评论
共有 条评论