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

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

?? netsdkdemodlg.cpp

?? 它是一個(gè)可以實(shí)時(shí)交互的嵌入式軟件系統(tǒng)
?? CPP
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
		{
			LastError();
			MessageBox(MSG_DEMODLG_PLAYCTRLFAILED);
		}
		else
		{
			if(pParam->iStatus == STATUS_PAUSE)
			{
				pParam->iStatus = STATUS_PLAY;
			}
			else
			{
				pParam->iStatus = STATUS_PAUSE;
			}
		}
	}
	else if(siNode.Type == SPLIT_TYPE_PBBYTIME)
	{
		SplitPBByTimeParam *pbParam = (SplitPBByTimeParam *)siNode.Param;
		if(pbParam->iStatus == STATUS_STEP)
		{
			ret = CLIENT_StepPlayBack(siNode.iHandle, TRUE);
			if (!ret)
			{
				LastError();
				goto out;
			}
			pbParam->iStatus = STATUS_STOP;
		}

		if(pbParam->iStatus != STATUS_PAUSE)
		{
			isPause = true;	
		}
		
		ret = CLIENT_PausePlayBack(siNode.iHandle, isPause);
		if(!ret)
		{
			LastError();
			MessageBox(MSG_DEMODLG_PLAYCTRLFAILED);
		}	
		else
		{
			if(pbParam->iStatus == STATUS_PAUSE)
			{
				pbParam->iStatus = STATUS_PLAY;
			}
			else
			{
				pbParam->iStatus = STATUS_PAUSE;
			}
		}
	}
	else
	{
		MessageBox(MSG_DEMODLG_NOTPLAYING);
	}

out:
	return ret;
}

int CNetSDKDemoDlg::PlayStop(int iScreen, BOOL bDis)
{
	SplitInfoNode siNode;
	memset(&siNode, 0, sizeof(siNode));
	BOOL ret = GetSplitInfo_Main(iScreen, &siNode);
	if (!ret)
	{
		MessageBox("error while getting split info");
		goto e_clear;
	}

	CPlayWnd *plWnd;
	if(siNode.Type == SPLIT_TYPE_NETPLAY)
	{
		SplitNetPlayParam *pParam = (SplitNetPlayParam *)siNode.Param;
		//如果處于單幀播放狀態(tài),需先恢復(fù)
		if(pParam->iStatus == STATUS_STEP)
		{
			ret = CLIENT_StepPlayBack(siNode.iHandle, TRUE);
			if (!ret)
			{
				LastError();
				goto e_clear;
			}
		}
		m_playctrlPannel.StopPlay();
		ret = CLIENT_StopPlayBack(siNode.iHandle);
		if (!ret)
		{
			LastError();
			if (!bDis)
			{
				MessageBox(MSG_DEMODLG_STOPPLAYFAILED);
				goto e_clear;
			}
		}
		FileInfoNode *pFile = ((SplitNetPlayParam *)siNode.Param)->pFileInfo;
		delete pFile;
		delete (SplitNetPlayParam *)siNode.Param;
		siNode.Param = NULL;
		siNode.Type = SPLIT_TYPE_NULL;
		ret = SetSplitInfo_Main(iScreen, &siNode);
		if (!ret)
		{
			MessageBox("error while setting split info");
		}

		if (m_curSoundSplit == iScreen)
		{
			//m_advanceBtnPannel.SetCheckSound(0);
			m_curSoundSplit = -1;
		}
	}
	else if (siNode.Type == SPLIT_TYPE_PBBYTIME)
	{
		SplitPBByTimeParam *pbParam = (SplitPBByTimeParam *)siNode.Param;
		//如果處于單幀播放狀態(tài),需先恢復(fù)
		if(pbParam->iStatus == STATUS_STEP)
		{
			ret = CLIENT_StepPlayBack(siNode.iHandle, TRUE);
			if (!ret)
			{
				LastError();
				goto e_clear;
			}
		}
		m_playctrlPannel.StopPlay();
		ret = CLIENT_StopPlayBack(siNode.iHandle);
		if (!ret)
		{
			LastError();
			if (!bDis)
			{
				MessageBox(MSG_DEMODLG_STOPPLAYFAILED);
				goto e_clear;
			}
		}
		delete (SplitPBByTimeParam *)siNode.Param;
		//add by zhaojs 2006-12-06
		siNode.Param = NULL;
		siNode.Type = SPLIT_TYPE_NULL;
		ret = SetSplitInfo_Main(iScreen, &siNode);
		if (!ret)
		{
			MessageBox("error while setting split info");
		}

		if (m_curSoundSplit == iScreen)
		{
			//m_advanceBtnPannel.SetCheckSound(0);
			m_curSoundSplit = -1;
		}
	}
	else
	{
		MessageBox(MSG_DEMODLG_NOTPLAYING);
		goto e_clear;
	}

	// repaint the play window
	plWnd = (CPlayWnd *)m_screenPannel.GetPage(iScreen);
	if (plWnd)
	{
		plWnd->PostMessage(VIDEO_REPAINT);
	}

	return 0;
e_clear:
	return -1;
}

//對(duì)當(dāng)前監(jiān)視通道進(jìn)行抓圖,對(duì)播放通道是否能抓圖有待驗(yàn)證
void CNetSDKDemoDlg::CaptureScreen() 
{
	SplitInfoNode siNode;
	memset(&siNode, 0, sizeof(siNode));
	BOOL ret = GetSplitInfo_Main(m_curScreen, &siNode);
	if (!ret)
	{
		MessageBox("error while getting split info");
		return;
	}

	CString strName = "pct.bmp";
	
	//支持多種圖像的抓圖
	if(siNode.Type == SPLIT_TYPE_NULL)
	{
		MessageBox(MSG_DEMODLG_CANTCAPTURE);
		return;
	}

	//抓圖保存文件名的輸入
	CFileDialog dlg(FALSE,"*.bmp","pct.bmp",OFN_OVERWRITEPROMPT|OFN_HIDEREADONLY,
		"All File(*.bmp)|*.*||",this);

	if(dlg.DoModal() == IDOK)
	{
		strName = dlg.GetPathName();		
	}

	ret = CLIENT_CapturePicture(siNode.iHandle, strName.GetBuffer(0));
	if(!ret)
	{
		LastError();
		MessageBox(MSG_DEMODLG_CAPTUREFAILED);
	}
}

//強(qiáng)制I幀
void CNetSDKDemoDlg::SetIframe() 
{
	SplitInfoNode siNode;
	memset(&siNode, 0, sizeof(siNode));
	BOOL ret = GetSplitInfo_Main(m_curScreen, &siNode);
	if (!ret)
	{
		MessageBox("error while getting split info");
		return;
	}

	if(siNode.Type != SPLIT_TYPE_MONITOR)
	{
		MessageBox(MSG_DEMODLG_CANTFORCE_I);
		return;
	}
	
	SplitMonitorParam *mParam = (SplitMonitorParam *)siNode.Param;

	ret = CLIENT_MakeKeyFrame(mParam->pDevice->LoginID, mParam->iChannel);
	if(!ret)
	{
		LastError();
		MessageBox(MSG_DEMODLG_FAILEDFORCE_I);
	}
}

//是否打開聲音
BOOL CNetSDKDemoDlg::OpenSound(BOOL bOpen) 
{
	SplitInfoNode siNode;
	memset(&siNode, 0, sizeof(siNode));
	BOOL ret = GetSplitInfo_Main(m_curScreen, &siNode);
	if (!ret)
	{
		MessageBox("error while getting split info");
		return FALSE;
	}

	if(bOpen)
	{
		if (m_curSoundSplit >= 0 && 
			(siNode.Type == SPLIT_TYPE_MONITOR || 
			siNode.Type == SPLIT_TYPE_NETPLAY || 
			siNode.Type == SPLIT_TYPE_PBBYTIME))
		{
			if (FALSE == CLIENT_CloseSound())
			{
				LastError();
				MessageBox(MSG_CLOSESOUNDFAILED);
				return FALSE;
			}
		}
		m_curSoundSplit = m_curScreen;
		if (siNode.Type == SPLIT_TYPE_MONITOR || 
			siNode.Type == SPLIT_TYPE_NETPLAY ||
			siNode.Type == SPLIT_TYPE_PBBYTIME)
		{
			if (FALSE == CLIENT_OpenSound(siNode.iHandle))
			{
				LastError();
				MessageBox(MSG_OPENSOUNDFAILED);
				return FALSE;
			}
		}
	}
	else
	{
		if (siNode.Type == SPLIT_TYPE_MONITOR || 
			siNode.Type == SPLIT_TYPE_NETPLAY ||
			siNode.Type == SPLIT_TYPE_PBBYTIME)
		{
			if (FALSE == CLIENT_CloseSound())
			{
				LastError();
				MessageBox(MSG_CLOSESOUNDFAILED);
				return FALSE;
			}
		}
		m_curSoundSplit = -1;
	}
	
	return TRUE;
}

//是否保存實(shí)時(shí)數(shù)據(jù)數(shù)據(jù)
void CNetSDKDemoDlg::SaveRealdata(int nCheck) 
{
	SplitInfoNode siNode;
	memset(&siNode, 0, sizeof(siNode));
	BOOL ret = GetSplitInfo_Main(m_curScreen, &siNode);
	if (!ret)
	{
		MessageBox("error while getting split info");
		return;
	}

	CString strName = "save.dav";
	if(nCheck > 0)
	{
		siNode.isSaveData = 1;
		if (siNode.Type == SPLIT_TYPE_MONITOR || siNode.Type == SPLIT_TYPE_MULTIPLAY)
		{
			//文件名的輸入
			CFileDialog dlg(FALSE,"*.dav","save.dav",OFN_OVERWRITEPROMPT|OFN_HIDEREADONLY,
			"All File(*.dav)|*.*||",this);
			if(dlg.DoModal() == IDOK)
			{
				strName = dlg.GetPathName();		
			}
			else
			{
				return;
			}
			BOOL ret = CLIENT_SaveRealData(siNode.iHandle, strName.GetBuffer(0));
			if(!ret)
			{
				LastError();
				MessageBox (MSG_DEMODLG_SAVEDATAFAILED);
			}
		}
	}
	else
	{
		siNode.isSaveData = 0;
		if(siNode.Type == SPLIT_TYPE_MONITOR || siNode.Type == SPLIT_TYPE_MULTIPLAY)
		{
			BOOL stop = CLIENT_StopSaveRealData(siNode.iHandle);
			if (stop)
			{
				MessageBox(MSG_DEMODLG_REALSAVE_STOPPED);
			}
			else
			{
				LastError();
				MessageBox("stop save file failed");
			}
		}
	}
}

//用來(lái)打開顯示畫面分割各顯示區(qū)域的信息
void CNetSDKDemoDlg::ShowFluxInfo() 
{
	
	CSplitInfoDlg dlg;
	m_runtimeMsgPannel.EnableShowFlux(FALSE);
	dlg.DoModal();
	m_runtimeMsgPannel.EnableShowFlux(TRUE);
}

/*
//刷新畫面分割模式
void CNetSDKDemoDlg::OnSelchangeSplittesel() 
{
	UpdateScreen();
}
*/

//關(guān)閉監(jiān)視圖像
void CNetSDKDemoDlg::CloseScreen() 
{
	BOOL ret = ProcessCloseScreen(m_curScreen);

	//m_playWnd[m_curScreen].ShowWindow(SW_HIDE);
	//m_playWnd[m_curScreen].ShowWindow(SW_NORMAL);
	UpdateCurScreenInfo();
}


void CNetSDKDemoDlg::PtzControl(int type, BOOL stop)
{
	BOOL ret;
	DWORD nData ;
	SplitMonitorParam *nParam ;
	BOOL upRet;
	
	LONG lHandle;
	int iChannel;

	if (stop) 
	{
		if (!m_bPTZCtrl)
		{
			goto exitPTZCtrl;
		}
	}

	switch(type) {
	//在主頁(yè)面的控制
	case PTZ_UP_CONTROL  :    //上           
	case PTZ_DOWN_CONTROL:		//下
	case PTZ_LEFT_CONTROL:	//左
	case PTZ_RIGHT_CONTROL:		//右
	case PTZ_ZOOM_ADD_CONTROL:		//變倍
	case PTZ_ZOOM_DEC_CONTROL:		
	case PTZ_FOCUS_ADD_CONTROL:	//調(diào)焦
	case PTZ_FOCUS_DEC_CONTROL:	
	case PTZ_APERTURE_ADD_CONTROL:	//光圈
	case PTZ_APERTURE_DEC_CONTROL:
	case EXTPTZ_LEFTTOP :
	case EXTPTZ_RIGHTTOP :
	case EXTPTZ_LEFTDOWN :
	case EXTPTZ_RIGHTDOWN:
		upRet = UpdateData(true);
		if (!upRet) 
		{
			goto exitPTZCtrl;
		}
		nData = m_ptz_data;
		break;
	case PTZ_POINT_MOVE_CONTROL  :   //轉(zhuǎn)至
	case PTZ_POINT_SET_CONTROL   :   //設(shè)置
	case PTZ_POINT_DEL_CONTROL   :   //刪除
	case PTZ_POINT_LOOP_CONTROL :   //點(diǎn)間輪循
	case PTZ_LAMP_CONTROL:            //燈
	default:
		MessageBox(MSG_DEMODLG_PTZCMDFAILED);
		goto exitPTZCtrl;
	}

	SplitInfoNode siNode;
	memset(&siNode, 0, sizeof(siNode));

	ret = GetSplitInfo_Main(m_curScreen, &siNode);
	if (!ret)
	{
		MessageBox("error while getting split info");
		return;
	}

	if(siNode.Type != SPLIT_TYPE_MONITOR)
	{
		goto exitPTZCtrl;
	}
	nParam = (SplitMonitorParam *)siNode.Param;
	lHandle = nParam->pDevice->LoginID;
	iChannel = nParam->iChannel;
	if(type >= EXTPTZ_LEFTTOP)
	{
		ret = CLIENT_DHPTZControl(lHandle,iChannel, type, (BYTE)nData, (BYTE)nData,0, stop);
		if (!ret)
		{
			LastError();
		}
		m_bPTZCtrl = !stop;
	}
	else
	{
//		ret = CLIENT_DHPTZControl(iHandle,iChannel, type, 0, (BYTE)nData,0, stop);
		ret = CLIENT_PTZControl(lHandle,iChannel, type, nData, stop);
		if (!ret)
		{
			LastError();
		}
		m_bPTZCtrl = !stop;
	}
	if(!ret)
	{
		MessageBox(MSG_DEMODLG_PTZCTRLFAILED);
		goto exitPTZCtrl;
	}

	return;

exitPTZCtrl:
	m_bPTZCtrl = FALSE;
	return;
}

/*
//處理點(diǎn)擊到當(dāng)前分割區(qū)域時(shí)的顯示,并確定刷新當(dāng)前顯示畫面
void CNetSDKDemoDlg::OnLButtonDown(UINT nFlags, CPoint point) 
{
	CRect nRect, subRect;
	int nSplit, spWide, spHight, i, j;

	//m_mywindows 的客戶區(qū)域位置
	GetDlgItem(IDC_MYWINDOW)->GetClientRect(&nRect);
	GetDlgItem(IDC_MYWINDOW)->ClientToScreen(&nRect);
	ScreenToClient(&nRect);

	//當(dāng)不在顯示的區(qū)域時(shí)直接返回
	if(point.x < nRect.left || point.x > nRect.right)
	{
		return;		
	}
	if(point.y < nRect.top || point.y > nRect.bottom)
	{
		return;
	}

	nSplit = m_splittesel.GetCurSel() + 1;     //分割畫面類型確定分割行列數(shù)
	
	spWide = nRect.Width()/nSplit;
	spHight = nRect.Height()/nSplit;

	//確定當(dāng)前畫面序號(hào)和當(dāng)前區(qū)域
	j = (point.x - nRect.left)/spWide;
	i = (point.y - nRect.top)/spHight;

	m_curScreen = i * nSplit + j + GetCurSplitStart(m_curScreen, nSplit);   

	subRect.left = nRect.left + j * spWide;
	subRect.top = nRect.top + i * spHight;
	
	subRect.right = subRect.left + spWide;
	subRect.bottom = subRect.top + spHight;

	//當(dāng)前畫面更新顯示
//	GetDlgItem(IDC_CURWIN)->ShowWindow(SW_HIDE);
//	GetDlgItem(IDC_CURWIN)->MoveWindow(&subRect,false);
//	GetDlgItem(IDC_CURWIN)->ShowWindow(SW_NORMAL);

	UpdateCurScreenInfo();
}
*/

/*
//雙擊切換到單畫面
void CNetSDKDemoDlg::OnLButtonDblClk(UINT nFlags, CPoint point) 
{
	CRect nRect, subRect;
	int nSplit, spWide, spHight, i, j;
	
	if(m_splittesel.GetCurSel() == SPLIT1)
	{
		m_splittesel.SetCurSel(m_previousSplit);
		UpdataScreen();
		return;
	}
	//m_mywindows 的客戶區(qū)域位置
	GetDlgItem(IDC_MYWINDOW)->GetClientRect(&nRect);
	GetDlgItem(IDC_MYWINDOW)->ClientToScreen(&nRect);
	ScreenToClient(&nRect);

	//當(dāng)不在顯示的區(qū)域時(shí)直接返回
	if(point.x < nRect.left || point.x > nRect.right)
	{
		return;
	}
	if(point.y < nRect.

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产亚洲一区二区三区在线观看| 亚洲美女屁股眼交3| 成人av电影在线观看| 亚洲成人福利片| 久久久久国产精品人| 欧美日韩亚洲综合一区| 懂色av一区二区三区免费观看| 亚洲不卡一区二区三区| 国产精品超碰97尤物18| 欧美大片免费久久精品三p | www.综合网.com| 免费成人在线影院| 亚洲国产精品一区二区久久 | 欧美一区二区在线观看| 在线日韩国产精品| www.成人网.com| 国产精品一区二区三区网站| 日韩成人一级片| 亚洲免费观看高清完整版在线| 久久人人爽人人爽| 日韩精品自拍偷拍| 88在线观看91蜜桃国自产| 欧美影视一区二区三区| 成人精品小蝌蚪| 国产宾馆实践打屁股91| 久草中文综合在线| 日本亚洲天堂网| 爽好久久久欧美精品| 一区二区三区欧美在线观看| 国产精品欧美一区喷水| 国产女同性恋一区二区| www国产精品av| 精品免费视频.| 精品国产乱码久久久久久免费| 欧美一卡二卡在线观看| 67194成人在线观看| 欧美日韩国产三级| 欧美美女视频在线观看| 欧美精品日日鲁夜夜添| 91精品国产一区二区三区香蕉 | 91视频.com| 粉嫩av一区二区三区粉嫩| 成人黄页毛片网站| 成人教育av在线| av在线不卡免费看| 色综合久久天天| 欧美日韩中文国产| 91精品福利在线一区二区三区| 91精品国产福利在线观看| 欧美不卡一区二区三区四区| 精品国产乱码久久久久久久久 | 欧美日韩一区二区三区不卡| 日本韩国一区二区三区| 欧美揉bbbbb揉bbbbb| 欧美日韩和欧美的一区二区| 欧美日韩和欧美的一区二区| 日韩欧美中文字幕一区| 精品久久久久一区二区国产| 久久精品一区二区三区四区| 国产精品午夜春色av| 一级中文字幕一区二区| 午夜视黄欧洲亚洲| 狠狠色丁香久久婷婷综合_中 | 欧美国产1区2区| 亚洲色图在线播放| 亚洲成a人片综合在线| 蜜臀av性久久久久av蜜臀妖精| 国产在线精品免费| 成人avav影音| 911精品国产一区二区在线| 久久综合资源网| 亚洲欧美日韩人成在线播放| 天堂影院一区二区| 国产999精品久久久久久绿帽| 色婷婷综合在线| 精品国产网站在线观看| 中文字幕视频一区| 日韩在线一二三区| 福利电影一区二区| 欧美精品久久99| 国产午夜精品在线观看| 亚洲一二三区在线观看| 成人av网站免费| 欧美一区二区三区啪啪| 国产欧美日韩久久| 天堂一区二区在线| 豆国产96在线|亚洲| 欧美精品一二三区| 国产精品高清亚洲| 激情成人午夜视频| 欧美日韩一区二区三区高清 | 国产精品无遮挡| 丝袜美腿亚洲一区| 91日韩一区二区三区| 精品捆绑美女sm三区| 一区二区三区久久久| 国产精品原创巨作av| 欧美日本国产视频| 136国产福利精品导航| 久久福利资源站| 欧美亚洲动漫另类| 国产精品传媒在线| 国产原创一区二区| 欧美久久久一区| 亚洲精品国产高清久久伦理二区| 精品夜夜嗨av一区二区三区| 欧美日韩高清不卡| 国产精品美女久久久久aⅴ| 日韩中文字幕不卡| 欧美三级电影精品| 亚洲人成伊人成综合网小说| 国产成人亚洲综合a∨婷婷| 91超碰这里只有精品国产| 亚洲免费在线观看视频| 成人国产精品视频| 久久久久久久一区| 蜜桃一区二区三区在线| 欧美日韩国产另类不卡| 亚洲乱码日产精品bd| 成人毛片老司机大片| 久久久精品免费免费| 国产真实乱偷精品视频免| 日韩一区二区免费视频| 亚洲高清免费在线| 91激情在线视频| 一区二区三区在线免费| 99国产精品国产精品久久| 国产精品久久久久久久久搜平片| 国产精品伊人色| 国产区在线观看成人精品| 国产尤物一区二区| 欧美精品一区二区三区四区| 久久99最新地址| 精品国产电影一区二区| 六月丁香婷婷色狠狠久久| 日韩欧美一级片| 国产综合色精品一区二区三区| 精品三级av在线| 国产精品91xxx| 国产欧美一区二区在线| eeuss鲁片一区二区三区 | 免费成人在线播放| 日韩一区二区三区视频在线| 精品综合免费视频观看| 精品电影一区二区| 国产美女精品在线| 亚洲国产精品精华液ab| 99久久国产综合精品色伊| 亚洲天天做日日做天天谢日日欢 | 极品美女销魂一区二区三区免费| 日韩天堂在线观看| 国产一区二区伦理| 国产精品美女久久久久久2018| 91网站黄www| 亚洲大尺度视频在线观看| 日韩亚洲欧美高清| 国产综合久久久久影院| 国产精品久久久久精k8| 欧美性受极品xxxx喷水| 麻豆91免费观看| 中文字幕欧美激情一区| 91成人看片片| 麻豆freexxxx性91精品| 国产精品色婷婷| 欧美日韩高清一区二区| 国产一区 二区| 一区二区三国产精华液| 日韩美女在线视频| 成人午夜碰碰视频| 性感美女极品91精品| 久久众筹精品私拍模特| 色av综合在线| 精品亚洲国产成人av制服丝袜| 国产精品成人一区二区三区夜夜夜| 色8久久精品久久久久久蜜| 麻豆91在线播放免费| 中文字幕亚洲一区二区av在线 | 中文av一区二区| 欧美专区在线观看一区| 久久99国内精品| 亚洲男女一区二区三区| 欧美成人一区二区三区| 色悠悠亚洲一区二区| 奇米一区二区三区av| 17c精品麻豆一区二区免费| 91精品久久久久久久91蜜桃| 成人教育av在线| 久久综合综合久久综合| 亚洲精品菠萝久久久久久久| 精品国产乱码久久久久久免费| 在线免费精品视频| 粉嫩久久99精品久久久久久夜| 午夜伦理一区二区| 国产精品久久久久毛片软件| 日韩午夜精品视频| 欧美亚洲国产怡红院影院| 成人在线视频一区| 久久成人免费电影| 亚洲va欧美va天堂v国产综合| 国产色91在线|