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

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

?? iec103_sf.cpp

?? 四方公司103規(guī)約
?? CPP
?? 第 1 頁 / 共 5 頁
字號:


#include "IEC103_SF.h"

namespace IEC103Ptl_SF
{

	//初始化節(jié)點(diǎn)運(yùn)行參數(shù)
	BOOL CIEC103_SFPtl::CreateRealRunIED(CIED *pIED)
	{
		if(pIED == NULL)
			return FALSE;

		BOOL bRtn = TRUE;
		BYTE byNodeId = pIED->m_IEDConfig.byNodeID;
		RealRunIED *pDevRun = m_IEC103Data.m_RunIed[byNodeId];
		if (!pDevRun)
		{	//如果pDevRun為空,則動態(tài)分配內(nèi)存,并把其賦值給規(guī)約數(shù)據(jù)中的參數(shù)
			pDevRun = new RealRunIED;//規(guī)約退出是要釋放
			if (pDevRun)
				m_IEC103Data.m_RunIed[byNodeId] = pDevRun;
		}

		if (!pDevRun)
			return FALSE;

		memset(pDevRun, 0, sizeof(RealRunIED));

		pDevRun->pDevData = pIED; 
		pDevRun->byNodeId = byNodeId;
		pDevRun->mode = 0;	
		pDevRun->fcb = 0;	
		pDevRun->acd = 0;	
		pDevRun->sendCode = pDevRun->recvCode = 0;
		pDevRun->linkQuery	= 0;	
		pDevRun->linkRes= 1;
		pDevRun->query	= 0;
		pDevRun->queryFull= 0;
		pDevRun->sin = 0;
		pDevRun->lnkNoRecvCnt = 0;
		pDevRun->bCommInitFlag = TRUE;
		pDevRun->bQuryEnd = FALSE;
		pDevRun->bGenGroupQury = FALSE;
		pDevRun->bDdQury = FALSE;
		pDevRun->nASDU5Cnt = 0;
		pDevRun->step = eInitStart;

		int i = 0;					//初始化自定義參數(shù)--組號與類型
		USERPARA para;
		for (i=0; i<IED_USER_SIZE;i++)
		{
			GinGrouptoType* ptype = &pDevRun->Grouptotype[i];
			ptype->gintype = (eGinGroupType)0;
			ptype->gingroup = 0;
			if (pIED->GetDataPara(dataUserPara,0,i,(void*)&para))
			{
				ptype->gintype = (eGinGroupType)para.wUPara0;
				ptype->gingroup = para.wUPara1;
				//printf("ptype->gintype = %d,para.wUPara0 = %d\n",ptype->gintype,para.wUPara0);
				//printf("ptype->gingroup = %d,para.wUPara1 = %d\n",ptype->gingroup,para.wUPara1);
			}
		}
		return bRtn;
	}

	// 得到 fun+inf=>nIndex 的映射關(guān)系
	int	CIEC103_SFPtl::GetnIndexbyFuninf(CIED *pIED, eDataSort datatype, FunInf &funInf)
	{
		//printf("datatype = %d,fun = %d,inf = %d\n",datatype,funInf.fun,funInf.inf);
		int nIndex = -1;
		int nSize = 0, i = 0,j;
		//得到fun+inf對應(yīng)的nindex
		switch(datatype)
		{
		case dataYc:
			{
				YC_PARA para;
				for(i=0; i<pIED->m_IEDConfig.nYcNum; i++)

				{
					if(pIED->GetDataPara(dataYc,0,i, (void*)&para))
					{
						if(para.nFun == funInf.fun && para.nInfo == funInf.inf)
							nIndex = i;
					}
				}
			}
			break;
		case dataBhAc:
			{
				YC_PARA para;
				for(i=0; i<pIED->m_IEDConfig.nBhAcLoopNum; i++)

				{
					for(j=ac_Ia; j<ac_Sum; j++)
					{
						if(pIED->GetDataPara(dataBhAc,i, (eAcycItem)j,(void*)&para))
						{
							if(para.nFun == funInf.fun && para.nInfo == funInf.inf)
								nIndex = i*16 + j;
						}
					}
				}
			}
			break;
		case dataYx:
			{
				YX_PARA para;
				for(i=0; i<pIED->m_IEDConfig.nYxNum; i++)

				{
					if(pIED->GetDataPara(dataYx,0,i, (void*)&para))
					{
						if(para.nFun == funInf.fun && para.nInfo == funInf.inf)
							nIndex = i;
					}
				}
			}
			break;
		case dataBhYx:
			{
				YX_PARA para;
				for(i=0; i<pIED->m_IEDConfig.nBhNum; i++)

				{
					if(pIED->GetDataPara(dataBhYx,0,i, (void*)&para))
					{
						if(para.nFun == funInf.fun && para.nInfo == funInf.inf)
							nIndex = i;
					}
				}
			}
			break;
		case dataDd:
			{
				DD_PARA para;
				for(i=0; i<pIED->m_IEDConfig.nDdNum; i++)

				{
					if(pIED->GetDataPara(dataDd,0,i, (void*)&para))
					{
						if(para.nFun == funInf.fun && para.nInfo == funInf.inf)
							nIndex = i;
					}
				}
			}
			break;
		case dataYk:
			{
				YK_PARA para;
				for(i=0; i<pIED->m_IEDConfig.nYkNum; i++)

				{
					if(pIED->GetDataPara(dataYk,0,i, (void*)&para))
					{
						if(para.nFun == funInf.fun && para.nInfo == funInf.inf)
							nIndex = i;
					}
				}
			}
			break;
		case dataYt:
			break;
		case dataBhDz:
			break;
		default:
			break;
		}
		return nIndex;
	}

	//根據(jù)IED、數(shù)據(jù)類型和數(shù)據(jù)點(diǎn)號得到fun+inf
	BOOL CIEC103_SFPtl::GetFunInf(CIED *pIED, eDataSort datatype, INT nDataID, FunInf &funinf)
	{
		BOOL bRet = FALSE;
		switch(datatype)
		{
		case dataYk:
			{
				YK_PARA para;
				if(pIED->GetDataPara(dataYk,0,nDataID,(void*)&para))
				{
					funinf.fun = para.nFun;
					funinf.inf = para.nInfo;
					bRet = TRUE;
				}
			} 
			break;
		default:
			break;
		}
		return bRet;
	}

	//得到通用分類服務(wù)組個(gè)數(shù)和各個(gè)通用分類服務(wù)組號
	void CIEC103_SFPtl::GetGininf(CIED *pIED, TASK* pTask, eDataSort datatype, BYTE &byGrpnum, BYTE* pbyGrpID)
	{
		switch(datatype)
		{
		case dataBhAc:				//保護(hù)模擬量
			{
				byGrpnum = pTask->iUserData[0];			//得到要召喚的模擬量包含的通用分類服務(wù)組個(gè)數(shù)
				for(BYTE i=0; i<byGrpnum; i++)
					pbyGrpID[i] = pTask->iUserData[i+1];//把數(shù)據(jù)區(qū)中得通用分類組號考到pbyGrpID中
			}
			break;
		case dataSetting:
			{
				byGrpnum = pTask->iUserData[2];			//得到要召喚的定值組包含的通用分類服務(wù)組個(gè)數(shù)
				for(BYTE i=0; i<byGrpnum; i++)
					pbyGrpID[i] = pTask->iUserData[i+3];//把數(shù)據(jù)區(qū)中得通用分類組號考到pbyGrpID中
			}
			break;					//保護(hù)定值
		default:
			break;
		}
	}

	//得到定值組個(gè)數(shù)
	BYTE CIEC103_SFPtl::GetSettingGrpNum(CIED *pIED, TASK* pTask)
	{
		BYTE byNum = 0;
		byNum = pTask->iUserData[1];		//所有的定值組個(gè)數(shù)
		return byNum;
	}

	//得到保護(hù)定值組號gin
	//pTask->iUserData[0]:要設(shè)置的定值組號;pTask->iUserData[1]:組號; pTask->iUserData[2]:條目號
	void CIEC103_SFPtl::GetProtSetGrpGin(TASK* pTask, GIN &gin)
	{
		gin.group = pTask->iUserData[1];
		gin.entry = pTask->iUserData[2];
	}

	//得到保護(hù)復(fù)歸fun+inf
	void CIEC103_SFPtl::GetProtResetFuninf(TASK* pTask, FunInf &funinf)
	{
		funinf.fun = pTask->iUserData[0];
		funinf.inf = pTask->iUserData[1];
	}

	//從規(guī)約參數(shù)中得到保護(hù)復(fù)歸fun+inf以及地址
	BOOL CIEC103_SFPtl::GetProtResetFuninfFromPara(RealRunIED *pDevRun,FunInf &funinf,BYTE &addr)
	{
		USERPARA para;
		CIED *pIED = pDevRun->pDevData;
		if(!pIED)
			return FALSE;
		if(!pIED->GetDataPara(dataUserPara,0,0,(void*)&para))
			return FALSE;
		funinf.fun = para.wUPara0;		//FUN
		funinf.inf = para.wUPara1;		//INF
		addr = para.wUPara2;		//(選擇)單元地址或者廣播地址
		return TRUE;
	}
	//存儲相應(yīng)任務(wù)數(shù)據(jù)幀
	/*
	* 
	*=======================================================
	*	描述					偏移量				占位空間	
	*-------------------------------------------------------
	*	相應(yīng)數(shù)據(jù)總長度			0~1				2
	*	**103數(shù)據(jù)幀總個(gè)數(shù)N		2~3				2
	*-------------------------------------------------------
	*	**103數(shù)據(jù)幀1總長度L1	4					1
	*	**103數(shù)據(jù)幀1			5~L1+5				L1
	*	**103數(shù)據(jù)幀2總長度L2	L1+6				1
	*	**103數(shù)據(jù)幀2			L1+7~L1+7+8 	L2
	*	**。。。	。。。	。。。
	*	**103數(shù)據(jù)幀2總長度LN 	X					1
	*	**103數(shù)據(jù)幀N			X~X+LN			LN
	*/
	BOOL CIEC103_SFPtl::SaveTaskRespFmt(BYTE* buf, WORD wLen, TASK* pTask)
	{
		if(!pTask->pbyBuff)
			return FALSE;
		BYTE *pbyData = pTask->pbyBuff;
		TaskRespHead *pRespHead = (TaskRespHead *)(pbyData);

		if(pTask->nDataBufLen == 0)
		{
			pRespHead->bufLen = 0;
			pRespHead->fmtNum = 0;
		}
		pRespHead->bufLen += (wLen + 1);
		pRespHead->fmtNum ++;

		*(pbyData + 4 + pTask->nDataBufLen) = lobyte(wLen);
		memcpy(pbyData + 4 + pTask->nDataBufLen + 1, buf, wLen);
		pTask->nDataBufLen += (wLen + 1);
		return TRUE;
	}

	//存儲測控遙信
	void CIEC103_SFPtl::SaveCeKongYaoXin(RealRunIED *pRunIed, FunInf funInf,BYTE yxBit, TIME_4 tm)
	{
		eDataSort data;
		CIED *pIED = pRunIed->pDevData;
		int nIndex = GetnIndexbyFuninf(pIED, dataYx, funInf);//先取實(shí)遙信的索引;
		data = dataYx;
		if(nIndex == -1)
		{
			nIndex = GetnIndexbyFuninf(pIED, dataBhYx, funInf);//取保護(hù)虛遙信索引
			data = dataBhYx;
		}
		if (nIndex >= 0)
		{
			BYTE byYXRecvVal = pIED->GetDataRecvVal(data,0,nIndex);
			if(byYXRecvVal != yxBit)
			{
				//設(shè)置遙信值
				pIED->SetDataRecvVal(data,0,nIndex,yxBit);
				// 事項(xiàng)存儲
				EVENT_STRUCT bhent;
				TIME_STRUCT sysTime;
				g_pMainApp->GetSystime(&sysTime);

				bhent.eDS		 = (eDataSource)m_pCH->m_ChConfig.eDS;	// 數(shù)據(jù)源
				bhent.eEventType = data;					// 事項(xiàng)類型(開關(guān)類)
				bhent.nEventNode = nIndex;					// 事項(xiàng)點(diǎn)

				bhent.nEventVal  = 0x10;					// 事項(xiàng)值
				if(yxBit == 1)
					bhent.nEventVal = 0x01;
				bhent.nNode      = pIED->m_IEDConfig.byNodeID;// 設(shè)備節(jié)點(diǎn)
				WB_UNION wb;
				wb.bwUnion.byVal[1] = tm.byLowMs;
				wb.bwUnion.byVal[0] = tm.byHighMs;
				bhent.TimeStamp.nMs = wb.bwUnion.wVal % 1000;
				bhent.TimeStamp.bySecond = wb.bwUnion.wVal / 1000;
				bhent.TimeStamp.byMinute = tm.Minutes;
				bhent.TimeStamp.byHour	 = tm.Hours;
				bhent.TimeStamp.byDay   = sysTime.byDay;
				bhent.TimeStamp.byMonth  = sysTime.byMonth;
				bhent.TimeStamp.nYear    = sysTime.nYear;

				//m_pCH->m_pYxbwSoeQue->Add(bhent);
				m_pCH->m_pYxSoeQue->Add(bhent);	
			}
		}
	}

	void CIEC103_SFPtl::SaveCeKongYaoXin(RealRunIED *pRunIed, FunInf funInf,BYTE yxBit)
	{
		//int iCnt = 1; printf("已經(jīng)進(jìn)入SaveCeKongYaoXin函數(shù):%d\n",iCnt);
		eDataSort data;
		CIED *pIED = pRunIed->pDevData;
		int nIndex = GetnIndexbyFuninf(pIED, dataYx, funInf);//先取實(shí)遙信的索引;
		//printf("nIndex = %d\n",nIndex);
		data = dataYx;
		if(nIndex == -1)
		{
			nIndex = GetnIndexbyFuninf(pIED, dataBhYx, funInf);//取保護(hù)虛遙信索引
			data = dataBhYx;
		}
		if (nIndex >= 0)
		{
			BYTE byYXRecvVal = pIED->GetDataRecvVal(data,0,nIndex);
			if(byYXRecvVal != yxBit)
			{
				//設(shè)置遙信值
				pIED->SetDataRecvVal(data,0,nIndex,yxBit);
				// 事項(xiàng)存儲
				EVENT_STRUCT bhent;
				TIME_STRUCT sysTime;
				g_pMainApp->GetSystime(&sysTime);

				bhent.eDS		 = (eDataSource)m_pCH->m_ChConfig.eDS;	// 數(shù)據(jù)源
				bhent.eEventType = data;					// 事項(xiàng)類型(開關(guān)類)
				bhent.nEventNode = nIndex;					// 事項(xiàng)點(diǎn)

				bhent.nEventVal  = 0x10;					// 事項(xiàng)值
				if(yxBit == 1)
					bhent.nEventVal = 0x01;
				bhent.nNode      = pIED->m_IEDConfig.byNodeID;// 設(shè)備節(jié)點(diǎn)
				bhent.TimeStamp.nMs		 = sysTime.nMs;
				bhent.TimeStamp.bySecond = sysTime.bySecond;
				bhent.TimeStamp.byMinute = sysTime.byMinute;
				bhent.TimeStamp.byHour	 = sysTime.byHour;
				bhent.TimeStamp.byDay	 = sysTime.byDay;
				bhent.TimeStamp.byMonth  = sysTime.byMonth;
				bhent.TimeStamp.nYear    = sysTime.nYear;

				//	m_pCH->m_pYxbwSoeQue->Add(bhent);
				//	m_pCH->m_pYxSoeQue->Add(bhent);	
			}
		}
	}

	//波特率
	DWORD CIEC103_SFPtl::GetChRatio(void)
	{
		DWORD dwRate = m_pCH->m_ChConfig.dwBaudRate;
		DWORD dwVal = 1200;

		if (110 == dwRate)
			dwVal = 110;
		else if (300 == dwRate)
			dwVal = 300;
		else if (600 == dwRate)
			dwVal = 600;
		else if (1200 == dwRate)
			dwVal = 1200;
		else if (2400 == dwRate)
			dwVal = 2400;
		else if (4800 == dwRate)
			dwVal = 4800;
		else if (9600 == dwRate)
			dwVal = 9600;
		else if (14400 == dwRate)
			dwVal = 14400;
		else if (19200 == dwRate)
			dwVal = 19200;
		else if (38400 == dwRate)
			dwVal = 38400;
		else if (56000 == dwRate)
			dwVal = 56000;
		else if (57600 == dwRate)
			dwVal = 57600;
		else if (115200 == dwRate)
			dwVal = 115200;
		else if (128000 == dwRate)
			dwVal = 128000;
		else if (256000 == dwRate)
			dwVal = 256000;

		return dwVal;
	}

	//參數(shù)轉(zhuǎn)換函數(shù),從flash參數(shù)轉(zhuǎn)換為規(guī)約參數(shù)
	void CIEC103_SFPtl::FlashParaToPtlPara(FlashPara103 * pPara)
	{
		//先調(diào)用默認(rèn)參數(shù)
		DafaultPtlPara();
		// 保護(hù)遙信復(fù)歸
		if(pPara->bOrdAfmReset > 0)
			m_IEC103PtlPara.bOrdAfmReset = 1;				// 確認(rèn)復(fù)歸(復(fù)歸命令肯定確認(rèn)時(shí),保護(hù)信號復(fù)歸)
		if(pPara->bOrderReset > 0)
			m_IEC103PtlPara.bOrderReset = 1;				// 命令復(fù)歸(復(fù)歸命令毋須確認(rèn),保護(hù)信號即可復(fù)歸)

		if(pPara->bEventVirtualYX > 0)
			m_IEC103PtlPara.bEventVirtualYX = 1;			// 故障事項(xiàng)虛遙信

		// 通用參數(shù)	
		if(pPara->byInitNum > 0)
			m_IEC103PtlPara.byInitNum = pPara->byInitNum;	// 初始化重傳次數(shù)
		if(pPara->dwFrameOver > 0)
			m_IEC103PtlPara.dwFrameOver = pPara->dwFrameOver;	// 幀超時(shí)間隔,ms

		if(pPara->dwQuery > 0)
			m_IEC103PtlPara.dwQuery = pPara->dwQuery;		// 總查詢間隔,s
		if(pPara->wTimeOver > 0)
			m_IEC103PtlPara.wTimeOver = pPara->wTimeOver;	// 校時(shí)間隔

		if(pPara->bCommAddr > 0 || pPara->bCommAddr == 0)
			m_IEC103PtlPara.bCommAddr = pPara->bCommAddr;

		if(pPara->byBHCPUAddr > 0)
			m_IEC103PtlPara.byBHCPUAddr = pPara->byBHCPUAddr;
		if(pPara->byCKCPUAddr > 0)
			m_IEC103PtlPara.byCKCPUAddr = pPara->byCKCPUAddr;
		if (pPara->bGenSelect > 0)
			m_IEC103PtlPara.bGenSel = pPara->bGenSelect;
		//if(pPara->byBhResetFun > 0)
		//	m_IEC103PtlPara.byBhResetFun = pPara->byBhResetFun;
		//if(pPara->byBhResetInf > 0)
		//	m_IEC103PtlPara.byBhResetInf = pPara->byBhResetInf;
	}

	//規(guī)約默認(rèn)參數(shù)設(shè)置

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩视频中午一区| 色婷婷综合五月| 国产精品另类一区| 91免费精品国自产拍在线不卡| 亚洲狼人国产精品| 麻豆国产精品777777在线| 日本在线播放一区二区三区| 91啪在线观看| 日韩在线一二三区| 国产欧美日韩卡一| 欧美三级电影在线看| 激情深爱一区二区| 在线免费观看日本欧美| 国产精品久久久久久久久久免费看| 色婷婷激情综合| 久久99国内精品| 亚洲欧洲成人精品av97| 波多野结衣中文字幕一区 | 黄页视频在线91| 国产亚洲一区字幕| 国内成+人亚洲+欧美+综合在线| 国产精品福利av| 欧美大片拔萝卜| 国产毛片精品视频| 亚洲欧洲三级电影| 日韩欧美亚洲一区二区| 国内精品免费在线观看| 亚洲一卡二卡三卡四卡无卡久久| 久久精品亚洲一区二区三区浴池| 国产精品一区二区在线看| 亚洲国产一区二区在线播放| 日本一区二区免费在线 | 开心九九激情九九欧美日韩精美视频电影 | 91 com成人网| 色综合久久综合网| 国产成人av网站| 国产精品久久福利| 91年精品国产| 亚洲国产中文字幕在线视频综合| 欧美丰满少妇xxxxx高潮对白| 99热精品国产| 美脚の诱脚舐め脚责91| 亚洲va天堂va国产va久| 精品国产三级电影在线观看| 丁香婷婷深情五月亚洲| 久久99九九99精品| 国产精品毛片大码女人| 久久久久久久一区| 欧美tk丨vk视频| 91精品国产综合久久福利| 欧美日韩日本视频| 国模无码大尺度一区二区三区| 久久婷婷久久一区二区三区| 9久草视频在线视频精品| 懂色中文一区二区在线播放| 伊人色综合久久天天人手人婷| 国产精品免费观看视频| 久久久久青草大香线综合精品| 日韩欧美自拍偷拍| 99视频超级精品| 成人avav影音| 精品中文字幕一区二区小辣椒| 日韩精品电影在线| 国产精品初高中害羞小美女文| 亚洲国产精品黑人久久久| 欧洲一区二区三区在线| 欧美综合色免费| 国产精品亚洲专一区二区三区| 国产一区二区日韩精品| 一区二区三区日韩欧美| 精品久久久久久久久久久久久久久 | 在线观看视频一区| 丰满少妇久久久久久久| 国产精品免费看片| 亚洲男人天堂一区| 久久精品一区二区三区av| 在线播放91灌醉迷j高跟美女| 在线欧美一区二区| 成人一区二区三区中文字幕| 成人深夜在线观看| 91成人免费在线视频| 成人午夜免费视频| 国产一区二区免费视频| 欧美a级理论片| 亚洲丶国产丶欧美一区二区三区| 中文字幕视频一区| 亚洲一区二区三区精品在线| 久久品道一品道久久精品| 欧美高清视频一二三区 | 日韩一区在线免费观看| 久久综合狠狠综合久久综合88| 欧美午夜一区二区| 91视频你懂的| 不卡视频在线观看| 成人免费毛片高清视频| 国产成人丝袜美腿| 国产一区二区三区| 色婷婷精品久久二区二区蜜臀av| 欧美一区二区女人| 国产精品久久久爽爽爽麻豆色哟哟 | 欧美日韩国产一区| 欧美国产一区二区| 免费视频一区二区| 日韩影院精彩在线| 日本不卡不码高清免费观看| 成人av免费在线观看| 欧美一区二区三区四区五区| 欧美α欧美αv大片| 国产亲近乱来精品视频| 成人欧美一区二区三区黑人麻豆| 亚洲日本乱码在线观看| 激情图片小说一区| 欧美一区二区三区在线视频| 亚洲精品伦理在线| 亚洲成人免费视| 91免费国产在线| 中文字幕视频一区| 成人在线视频一区二区| 26uuu欧美| 麻豆成人久久精品二区三区红| 国产高清久久久| 欧美大尺度电影在线| 婷婷丁香久久五月婷婷| 欧美性猛交xxxx黑人交| 精品88久久久久88久久久| 亚洲色图欧洲色图婷婷| 顶级嫩模精品视频在线看| 精品国产精品网麻豆系列| 国产精品久久影院| 日本中文一区二区三区| 欧美日韩国产一级| 亚洲电影一区二区| 懂色av一区二区在线播放| 久久久久久久久99精品| 激情综合色丁香一区二区| 91原创在线视频| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 国产三级欧美三级日产三级99| 久久99精品久久久久久国产越南| 精品国产乱码久久久久久蜜臀| 国产一区在线看| 欧美午夜视频网站| 亚洲成人精品一区二区| 国产经典欧美精品| 国产网站一区二区| 成人国产视频在线观看 | 精品制服美女久久| av不卡在线观看| 欧美xingq一区二区| 一区二区三区四区在线免费观看| 色欧美片视频在线观看在线视频| 亚洲欧美日韩中文播放| 国模大尺度一区二区三区| 成人久久18免费网站麻豆| 国产精品久久久久久久久果冻传媒| 亚洲二区在线视频| 不卡一二三区首页| 日韩欧美中文字幕制服| 韩国理伦片一区二区三区在线播放| 久久日韩精品一区二区五区| 国产成人综合在线观看| 亚洲美女少妇撒尿| 国产成人三级在线观看| 欧美va日韩va| 毛片av一区二区| 国产亚洲va综合人人澡精品 | 成人天堂资源www在线| 日韩美女啊v在线免费观看| 欧美色图激情小说| 精品在线亚洲视频| 亚洲欧美国产77777| 欧美精品 日韩| 一区二区三区在线视频观看| 欧美群妇大交群的观看方式| 亚洲青青青在线视频| 欧美肥胖老妇做爰| 亚洲精品免费播放| 日韩欧美国产1| 91小视频在线观看| 最新国产成人在线观看| 欧美精品三级日韩久久| 一区二区不卡在线播放| av一二三不卡影片| 日韩av午夜在线观看| 欧美视频你懂的| 国产精品69毛片高清亚洲| 亚洲精品一区二区三区精华液 | 日韩欧美视频在线| 三级亚洲高清视频| 国产精品区一区二区三| 欧美男人的天堂一二区| 成人av电影在线| 日韩av不卡在线观看| 国产精品高清亚洲| 成人av先锋影音| 蜜臀av一区二区在线免费观看 | 大胆亚洲人体视频| 国产日韩视频一区二区三区| 欧美疯狂做受xxxx富婆| 91小视频在线免费看|