📄 sched.h
字号:
#ifndef SCHED_H
#define SCHED_H
#include "gen.h"
#include "sev.h"
#include "event.h"
#include "link.h"
#include "stcs.h"
#include "para.h"
class Sched
{
public:
Sched();
void ProcNxt();
void Start();
Gen* gen;
Sev* sev[MAX_SEV];
Stcs* sts[MAX_SEV];
list<Mess> sch;
//protected:
Mess* ms;
};
Sched::Sched()
{
gen=new Gen((double)LAMBDA);
gen->sch=&sch;
gen->sts=sts;
for(int i=0;i<MAX_SEV;i++)
{
if(i<MAX_SEV-EXP_SEV)
sev[i]=new Sev((double)MU,i); //create server
else
sev[i]=new Sev((double)EX_MU,i);
sev[i]->sch=&sch; //connect
gen->que[i]=new list<Event>(); //queue
sts[i]=new Stcs(gen->que[i],sev[i]);
sev[i]->que=gen->que[i];
}
}
void Sched::ProcNxt()
{
ms=sch.getHead();
int type=ms->getType();
double tim=ms->getTim();
if(type==GEN)
{
int seq=gen->genEvt();
sts[seq]->calStcs(GEN,tim); //cal statistics
}
if(type>=0)
{
sev[type]->sevEvt();
sts[type]->calStcs(type,tim); //cal statistics
}
}
void Sched::Start()
{
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -