亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? elevator1.cpp

?? ??荚O(shè)計題
?? CPP
字號:
// Elevator1.cpp: implementation of the CElevator class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "Elevator.h"
#include "Elevator1.h"

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CElevator* CElevator::pThis ;

CElevator::CElevator():m_stayAtFloor(16),m_door(4),m_move(8),m_space(0.125)
{
	//初始化定時器ID號
	m_timerID=0;
	m_aim =0;
	m_bStay =false;
	m_direction =0;
	for(int i=0;i<9;i++)
	{
	m_upRequest [i]=0;
	m_downRequest [i]=0;
	m_destRequest [i]=0;
	};
	m_destRequest [9]=0;
	m_upRequestTime =0;
	m_downRequestTime =0;
	m_destRequestTime =0;
	m_location =FLOOR_1;
	m_nextFloor =0;
	m_stayTime =0;
	
}

CElevator::~CElevator()
{

}

//接收某個樓層發(fā)出的向上呼叫請求
//floor代表發(fā)出呼叫的樓層
void CElevator::RequestUp(int floor)
{	
	if (m_upRequest  [floor-1] ==0 )
	{
		switch (m_direction)
		{
		case 1 :
			{
				if (m_location+1<=floor+1000)
				{
					m_upRequestTime +=1;
					m_upRequest[floor-1]=1;
				}
				else
				{
					StopHighLight(UP_1+floor-1);
				}
			}break;
		case 0 :
			{
				if (m_location <floor+1000)
				{
					m_direction =1;
					m_upRequestTime +=1;
					m_upRequest[floor-1]=1;
				}
				if (m_location >floor+1000)
				{
					m_direction =-1;
					m_upRequestTime +=1;
					m_upRequest[floor-1]=1;
				}
				if (m_location ==floor+1000)
				{
					StopHighLight (UP_1+floor-1);
				}
			}break;
		case -1 :
			{
				m_upRequestTime +=1;
				m_upRequest[floor-1]=1;
			}break;
		}
	}
}

//接收某個樓層發(fā)出的向下呼叫請求
//floor代表發(fā)出呼叫的樓層
void CElevator::RequestDown(int floor)
{
	if (m_downRequest  [floor-1] ==0 )
	{
		switch (m_direction)
		{
		case -1 :
			{
				if (m_location+1>floor+1000)
				{
					m_downRequestTime +=1;
					m_downRequest[floor-1]=1;
				}
				else
				{
					StopHighLight(DOWN_2+floor-2);
				}
			}break;
		case 0 :
			{
				if (m_location <floor+1000)
				{
					m_direction =1;
					m_downRequestTime +=1;
					m_downRequest[floor-1]=1;
				}
				if (m_location >floor+1000)
				{
					m_direction =-1;
					m_downRequestTime +=1;
					m_downRequest[floor-1]=1;
				}
				if (m_location ==floor+1000)
				{
					StopHighLight (DOWN_2+floor-2);
				}
			}break;
		case 1 :
			{
				m_downRequestTime +=1;
				m_downRequest[floor-1]=1;
			}break;
		}
	}
	
}

//接收電梯內(nèi)部乘客發(fā)出的到達某一目標(biāo)樓層的呼叫請求
//floor代表發(fā)出的目標(biāo)樓層呼叫
void CElevator::RequestDest(int floor)
{
	if (m_destRequest  [floor-1] ==0 )
	{
		switch (m_direction)
		{
		case -1 :
			{
				if (m_location+1>=floor+1000)
				{
					m_destRequestTime +=1;
					m_destRequest[floor-1]=1;
				}
				else
				{
					StopHighLight(DEST_1+floor-1);
				}
			}break;
		case 0 :
			{
				if (m_location <floor+1000)
				{
					m_direction =1;
					m_destRequestTime +=1;
					m_destRequest[floor-1]=1;
				}
				if (m_location >floor+1000)
				{
					m_direction =-1;
					m_destRequestTime +=1;
					m_destRequest[floor-1]=1;
				}
				if (m_location ==floor+1000)
				{
					StopHighLight (DEST_1+floor-1);
				}
			}break;
		case 1 :
			{
				if (m_location+1<=floor+1000)
				{
					m_destRequestTime +=1;
					m_destRequest[floor-1]=1;
				}
				else
				{
					StopHighLight(DEST_1+floor-1);
				}
			}break;
		}
	}
}

//處理用戶按下電梯轎廂內(nèi)的“Go”按鈕請求
void CElevator::CloseDoor()
{
	m_stayTime=12;
}

//電梯的運行邏輯
void CElevator::Move()
{
	switch (m_aim)
	{
	case 1 : 	{
		HighLight(LIGHT_UP);
		m_location +=m_space;
		StopHighLight((int)m_location-1);
		HighLight((int)m_location);
				}
		break;
	case 0 :	{
		StopHighLight(LIGHT_UP);
		StopHighLight(LIGHT_DOWN);
		m_location +=0;
				}
		break;
	case -1	:	{
		HighLight(LIGHT_DOWN);
		m_location -=m_space ;
		StopHighLight((int)m_location+1);
		HighLight((int)m_location);
				}
		break;
	}
/*						if  ((m_destRequestTime ==0)){HighLight(GO);}
						else {StopHighLight (GO);}
						if  ((m_destRequestTime ==-1)){HighLight(UP_1);}
						else {StopHighLight (UP_1);}
						if  ((m_destRequestTime ==1)){HighLight(UP_2);}
						else {StopHighLight (UP_2);}
						if  ((m_direction==0)){HighLight(DOWN_2);}
						else {StopHighLight (DOWN_2);} */
}

//獲取當(dāng)前電梯所處的位置
float CElevator::GetLocation()
{
	return m_location;
}

//獲取電梯的運行狀態(tài)
int CElevator::GetStatus()
{
	return m_direction;
}


//電梯運行的中央控制邏輯
//主要功能是確定電梯運行的下一個目標(biāo)樓層
void CElevator::CentralControl()
{
	switch (m_direction)
	{
	case 1 :
		{
			if ((m_upRequestTime ==0)&&(m_destRequestTime ==0))
			{
				if (m_downRequestTime ==0)
				{
					m_direction=0;
				}
				else
					for (int i=9;i>0;i--)
					{
						if (m_downRequest [i-1] ==1)
						{
							if (m_location <1000+i)
							{
								m_direction=1;
							}
							if (m_location >1000+i)
							{
								m_direction=-1;
							}
							i=1;
						}
					}
			}
		}break;
	case -1 :
		{
			if ((m_downRequestTime ==0)&&(m_destRequestTime ==0))
			{
				if (m_upRequestTime ==0)
				{
					m_direction=0;
				}
				else
					for (int i=1;i<9;i++)
					{
						if (m_upRequest [i-1] ==1)
						{
							if (m_location <1000+i)
							{
								m_direction=1;
							}
							if (m_location >1000+i)
							{
								m_direction=-1;
							}
							i=9;
						}
					}
			}
		}break;
	}
}

int CElevator::IsStay()
{
	if (m_location==(int)m_location) 
	{
		switch (m_direction )
		{
		case 1 :
			{
				if ((m_downRequest [(int)m_location-1001]==1)&&(m_upRequestTime==0)&&(m_destRequestTime==0))
				{
					m_bStay=true;
					m_downRequest [(int)m_location-1001]=0;
					m_downRequestTime -=1;
					StopHighLight (DOWN_2+(int)m_location-1002);
				}
				if (m_upRequest [(int)m_location-1001]==1)
				{
					m_bStay=true;
					m_upRequest [(int)m_location-1001]=0;
					m_upRequestTime -=1;
					StopHighLight (UP_1+(int)m_location-1001);
				}
				if (m_destRequest [(int)m_location-1001]==1)
				{	
					m_bStay=true;
					m_destRequest [(int)m_location -1001]=0;
					m_destRequestTime -=1;
					StopHighLight (DEST_1+(int)m_location-1001);
				}	
			}break;
		case -1 :
			{
				if ((m_upRequest [(int)m_location-1001]==1)&&(m_downRequestTime==0)&&(m_destRequestTime==0))
				{
					m_bStay=true;
					m_upRequest [(int)m_location-1001]=0;
					m_upRequestTime -=1;
					StopHighLight (UP_1+(int)m_location-1001);
				}
				if (m_downRequest [(int)m_location-1001]==1)
				{
					m_bStay=true;
					m_downRequest [(int)m_location-1001]=0;
					m_downRequestTime -=1;
					StopHighLight (DOWN_2+(int)m_location-1002);
				}
				if (m_destRequest [(int)m_location-1001]==1)
				{
					m_bStay=true;
					m_destRequest [(int)m_location -1001]=0;
					m_destRequestTime -=1;
					StopHighLight (DEST_1+(int)m_location-1001);
				}
			}break;
		}
		if (m_bStay==true)
		{
			m_aim=0;
			m_stayTime +=1;
			if (m_stayTime ==16)
			{
				m_stayTime =0;
				m_bStay=false;
			}
		}
		else
		{
			StopHighLight(GO);
			m_aim =m_direction;
		}
	}
	return m_stayTime;
}

//設(shè)置定時器
//參數(shù)表示設(shè)置的定時器時間間隔,單位為毫秒
void CElevator::SetMyTimer(UINT nElapse)
{
	m_timerID = ::SetTimer(NULL,NULL,nElapse,MyTimerProc);
    pThis=this;
	
}

//取消定時器
void CElevator::KillMyTimer()
{
	KillTimer (NULL,m_timerID);
}

//定時器觸發(fā)事件
//后面的參數(shù)是預(yù)定義的,與邏輯無關(guān)。
void CALLBACK CElevator::MyTimerProc(HWND hwnd, UINT uMsg, UINT idEvent, DWORD dwTime)
{
//
	pThis->CentralControl ();
	pThis->IsStay ();
	pThis->Move ();
	

}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人理论电影网| 午夜精彩视频在线观看不卡| 欧美在线短视频| 97久久人人超碰| www.在线成人| 91丝袜美腿高跟国产极品老师 | 日本一区二区三区视频视频| www国产精品av| 国产偷国产偷亚洲高清人白洁| www欧美成人18+| 欧美国产欧美综合| 中文字幕免费不卡| 亚洲欧美激情小说另类| 亚洲在线视频网站| 美腿丝袜亚洲一区| 国产福利91精品| 在线精品视频免费播放| 在线中文字幕一区二区| 欧美高清你懂得| 欧美tickle裸体挠脚心vk| 欧美一级搡bbbb搡bbbb| 欧美日韩国产高清一区| 欧美无砖砖区免费| 日韩一区二区免费视频| 欧美一级在线视频| 国产精品美女久久久久久久久| 亚洲综合小说图片| 久久超碰97中文字幕| gogogo免费视频观看亚洲一| 欧美日本精品一区二区三区| 国产日韩欧美高清在线| 亚洲一区二区高清| 国产九色精品成人porny| 一道本成人在线| 久久综合色鬼综合色| 亚洲与欧洲av电影| 国产电影一区在线| 555夜色666亚洲国产免| 中文乱码免费一区二区| 免费在线观看成人| 91久久国产最好的精华液| 26uuu国产日韩综合| 亚洲精品视频观看| 国产精品一区二区在线看| 欧美欧美午夜aⅴ在线观看| 国产精品午夜电影| 久久66热偷产精品| 欧美三级午夜理伦三级中视频| 久久精品亚洲一区二区三区浴池| 亚洲一区二区三区四区五区中文| 国产成人免费视频精品含羞草妖精| 欧美色涩在线第一页| 国产精品久久久久三级| 国产主播一区二区| 91精品啪在线观看国产60岁| 夜夜操天天操亚洲| 97精品久久久午夜一区二区三区 | 91免费视频大全| 国产欧美精品一区二区色综合 | 不卡av免费在线观看| 日韩精品一区二区三区四区视频| 亚洲精品写真福利| 久久成人久久鬼色| 91黄色激情网站| 国产日韩在线不卡| 美女精品自拍一二三四| 欧美日韩亚洲国产综合| 国产精品国产a| 狠狠色丁香久久婷婷综合丁香| 欧美视频完全免费看| 国产精品久久国产精麻豆99网站| 日本成人在线不卡视频| 欧美性一区二区| 亚洲电影一级黄| 欧美电影在哪看比较好| 日韩av一二三| 欧美va日韩va| 国产成人午夜精品影院观看视频| 久久伊99综合婷婷久久伊| 国产又粗又猛又爽又黄91精品| 久久综合狠狠综合久久激情| 国产精品一区专区| 中文在线一区二区| 91在线国内视频| 亚洲精品国久久99热| 欧美色精品在线视频| 免费高清在线一区| 久久精品日韩一区二区三区| 99精品一区二区三区| 夜夜操天天操亚洲| 欧美mv日韩mv国产| 成人av动漫在线| 亚洲成人av中文| 久久综合九色综合欧美98| 成人做爰69片免费看网站| 亚洲免费观看视频| 日韩三级在线免费观看| 国产不卡一区视频| 一区二区三区中文在线| 日韩欧美亚洲一区二区| 高清不卡一二三区| 亚洲国产一区二区视频| 日韩情涩欧美日韩视频| 色综合久久中文字幕| 蜜臀久久99精品久久久久久9| 欧美一区二区三区免费在线看| 蜜臀久久99精品久久久画质超高清| 欧美va亚洲va香蕉在线| 国产不卡视频在线播放| 玉米视频成人免费看| 欧美色图免费看| 日韩va欧美va亚洲va久久| 国产亚洲欧美日韩在线一区| 91在线porny国产在线看| 日韩激情在线观看| 国产精品电影一区二区三区| 91视频在线观看免费| 国产揄拍国内精品对白| 国产精品久线在线观看| 色婷婷亚洲精品| 麻豆国产精品一区二区三区| 中文字幕一区免费在线观看| 欧美在线播放高清精品| 国产精品香蕉一区二区三区| 亚洲精品视频自拍| 精品日韩成人av| 91九色最新地址| 国产一区二区不卡在线| 亚洲码国产岛国毛片在线| 日韩欧美亚洲国产精品字幕久久久| 国产大片一区二区| 日韩不卡一区二区| 中文乱码免费一区二区| 久久先锋资源网| 精品国产乱码久久| 欧美一级一区二区| 欧美一卡2卡3卡4卡| 欧美精品三级在线观看| 色久综合一二码| 99精品欧美一区二区三区综合在线| 国产成人精品综合在线观看| 国产美女在线观看一区| 麻豆91在线播放| 精品一区二区在线免费观看| 日本人妖一区二区| 美脚の诱脚舐め脚责91| 蜜桃av一区二区在线观看| 蜜桃久久精品一区二区| 免费成人美女在线观看.| 免费高清在线一区| 国内精品伊人久久久久av影院 | 麻豆精品久久精品色综合| 日韩精品一二区| 另类小说综合欧美亚洲| 麻豆专区一区二区三区四区五区| 麻豆91在线观看| 国产美女在线观看一区| 成人app下载| 91日韩一区二区三区| 欧美在线一区二区| 7878成人国产在线观看| 欧美精品一区二区三区久久久| 久久久久国产精品麻豆| 国产精品美女久久久久久2018| 亚洲免费观看高清| 性做久久久久久久久| 久草精品在线观看| 成人激情免费网站| 欧美日韩一区精品| 欧美xxxxxxxxx| 亚洲色图视频网站| 日韩高清在线一区| 国产精品白丝jk黑袜喷水| 91免费版pro下载短视频| 欧美精品一卡二卡| 国产视频在线观看一区二区三区| 国产精品美女www爽爽爽| 亚洲第一福利一区| 老司机免费视频一区二区| 成人免费的视频| 欧美男男青年gay1069videost| 精品久久久久久久人人人人传媒| 国产精品免费aⅴ片在线观看| 五月天网站亚洲| 成人动漫一区二区在线| 欧美日韩黄色一区二区| 欧美激情综合在线| 亚洲成a人片综合在线| 国产麻豆成人精品| 欧美天堂亚洲电影院在线播放| 久久综合五月天婷婷伊人| 亚洲电影你懂得| 成人开心网精品视频| 精品少妇一区二区三区免费观看| 国产精品久久久久久久裸模| 免费视频最近日韩| 欧美视频完全免费看| 综合在线观看色| 国产成人免费视频一区| 欧美一级电影网站|