innerwaitqueue.h
来自「电梯调度模拟,有mfc界面展现5部电梯的相互调度」· C头文件 代码 · 共 65 行
H
65 行
#pragma once
#include "MyVariousState.h"
//处理电梯内部活动消息的数据结构,把要求装换成位串,从而实现电梯内部的任务要求
class CInnerReqStruNode
{
public:
CInnerReqStruNode();
CInnerReqStruNode(int iStrLen);
virtual ~CInnerReqStruNode();
void setFloor(int index);//将有消息的楼层置1
bool getFloor(int index);//获得楼层消息
void clrMessage(int index);//清除消息
CString showBitString();
private:
int m_iStrLen;
DWORD m_dBitString;
};
class CInnerWaitQueue
{
public:
CInnerWaitQueue(void);
CInnerWaitQueue(int iMaxQueueLen);
~CInnerWaitQueue(void);
void addElement(int iDestFloor);
void removeElement(int iDestFloor);
int getNextAvail();
protected:
int m_iCurPos;
int m_iMaxQueueLen;
CInnerReqStruNode* m_cBitString;
};
//上行等待队列
class CUpInnerWaitQueue : public CInnerWaitQueue
{
public:
CUpInnerWaitQueue();
CUpInnerWaitQueue(int iMaxQueueLen);
~CUpInnerWaitQueue();
int getNextAvail();//如果当前位置后面再也没有请求,则返回-1
};
//下行等待队列
class CDownInnerWaitQueue : public CInnerWaitQueue
{
public:
CDownInnerWaitQueue();
CDownInnerWaitQueue(int iMaxQueueLen);
~CDownInnerWaitQueue();
int getNextAvail();//如果当前位置后面再也没有请求,则返回-1
};
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?