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

📄 macros.h

📁 omnet++ 平台下的flood 我弄了好久
💻 H
字号:
//macros availaable within a sensor node are defined here
/* * @name node ID
  * @ingroup group_macros
*/
//@{

/* * macro that returns a node's ID(value ranges from 0 to NNODES-1)
  * @hideinitializer
  */
//@}

#define ID (int)parentModule()->index()

#define KIND (int)(parentModule()->par("KIND"))

#define COLOR (int)(parentModule()->par("COLOR"))

#define UPDATECOLOR(color){
\parentModule()->par("COLOR")=color;\
char tempstring[30];\
sprintf(tempstring,"p=%d,%d,exact;i=snode_%d_%d",PX+MX,PY+MY,COLOR%MAXCOLOR,KIND%MAXKIND);\
parentModule()->setDisplayString(tempstring);
}

#define UPDAREKIND(kind){\
parentModule()->par("KIND")=kind;\
 char tempstring[30];\
  sprintf(tempstring,"p=%d,%d,exact;i=snode_%d_%d",PX+MX,PY+MY,COLOR%MAXCOLOR,KIND%MAXKIND);\
  parentModule()->setDisplayString(tempstring);
}


#define UPDATEGRAPHICS(color,kind){\
parentModule()->par("COLOR")=color;\
parentModule()->par("KIND")=kind;\
char tempstring[30];\
sprintf(tempstring,"p=%d,%d,exact;i=snode_%d_%d",PX+MX,PY+MY,COLOR%MAXCOLOR,KIND%MAXKIND);\
  parentModule()->setDisplayString(tempstring);

}

#define REFRESHIMAGE{\
char tempstring[30];\
sprintf(tempstring,"p=%d,%d,exact;i=snode_%d_%d",PX+MX,PY+MY,COLOR%MAXCOLOR,KIND%MAXKIND);\
  parentModule()->setDisplayString(tempstring);
}


#define PX (int)parentModule()->par("PX")

#define PY (int)parentModule()->par("PY")

#define SSTRENGTH (int)parentModule()->par("sstrength")

 

#define UPDATESSTRENGTH(sstrength){\};

#define NRJ *(double *)lookup("gv_energy")

#define NRJ_CONSUMED *(double *)lookup("gv_energyconsumed")


#define NRJ_CONSUME(nrj){
\
double energy=0.0,energyconsumed=0.0;\
  if(lookup("gv_energy")!=NULL)\
     energy=NRJ;\
   if(lookup("gv_energyconsumed")!=NULL)\
     energyconsumed=NRJ_CONSUMED;\
    publish("gv_energy",energy-nrj);\
  publish("gv_energyconsumed",energyconsumed+nrj);
}




#define NRJ_ADD(nrj){
publish("gv_energy",NRJ+nrj);
}


#define NRJ_LIFETIME(simtime_t)(simTime()*NRJ/NRJ_CONSUMED))










⌨️ 快捷键说明

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