📄 netctlpalarmdlg.cpp
字号:
nProbeOutput |= 1 ;
if (m_ProbeInput2)
nProbeOutput |= (1<<1) ;
if (m_ProbeInput3)
nProbeOutput |= (1<<2) ;
if (m_ProbeInput4)
nProbeOutput |= (1<<3) ;
/* if (m_ProbeInput5)
nProbeOutput |= (1<<4) ;
if (m_ProbeInput6)
nProbeOutput |= (1<<5) ;
if (m_ProbeInput7)
nProbeOutput |= (1<<6) ;
if (m_ProbeInput8)
nProbeOutput |= (1<<7) ;
*/
if(m_ProbeRec)
{
if(nWeek==7)
{
nSelDay=1<<7;
}
else
{
nSelDay &= 0x7f; //去除每天标志
nSelDay |= 1<<nWeek;
}
}
else
{
if(nWeek==7)
{
nSelDay &= 0x7f;
}
else
{
nSelDay &= (~(1<<nWeek));
}
}
if(nWeek==7)
nWeek=0;
else
nWeek++;
if ((pNetRemoteCtlDlg->m_nDVRType <= 0) ||
(pNetRemoteCtlDlg->m_nDVRType == 3) ||
(pNetRemoteCtlDlg->m_nDVRType == 7))
{// 83系列主机最多8个探头
pNetRemoteCtlDlg->SetNetRemotePAlarmRecSet(nInput, nWeek, m_BgnTime1, m_EndTime1, m_BgnTime2, m_EndTime2, m_ProbeTime, nProbeOutput, nRecPort,(unsigned char)m_ContactRec,nSelDay,nProbePreset,8);
}
else
{// 88系列主机最多16个探头
pNetRemoteCtlDlg->SetNetRemotePAlarmRecSet(nInput, nWeek, m_BgnTime1, m_EndTime1, m_BgnTime2, m_EndTime2, m_ProbeTime, nProbeOutput, nRecPort,(unsigned char)m_ContactRec,nSelDay,nProbePreset,16);
}
//-------------------------
if(Con_pDVRPara!=NULL)
{
int j,k;
int nFirstInput,nLastInput;
if(nWeek!=0)
{
nFirstInput = nInput==0?0:(nInput-1);
nLastInput = nInput==0?16:nInput;
//for(j=0;j<()16;j++)
for(j=nFirstInput;j<nLastInput;j++)
{
Con_pDVRPara->contactPara[j].tContactAlarmRecTable1[nWeek-1].nBgnHour=m_BgnTime1.GetHour();
Con_pDVRPara->contactPara[j].tContactAlarmRecTable1[nWeek-1].nBgnMinute=m_BgnTime1.GetMinute();
Con_pDVRPara->contactPara[j].tContactAlarmRecTable1[nWeek-1].nEndHour=m_EndTime1.GetHour();
Con_pDVRPara->contactPara[j].tContactAlarmRecTable1[nWeek-1].nEndMinute=m_EndTime1.GetMinute();
Con_pDVRPara->contactPara[j].tContactAlarmRecTable2[nWeek-1].nBgnHour=m_BgnTime2.GetHour();
Con_pDVRPara->contactPara[j].tContactAlarmRecTable2[nWeek-1].nBgnMinute=m_BgnTime2.GetMinute();
Con_pDVRPara->contactPara[j].tContactAlarmRecTable2[nWeek-1].nEndHour=m_EndTime2.GetHour();
Con_pDVRPara->contactPara[j].tContactAlarmRecTable2[nWeek-1].nEndMinute=m_EndTime2.GetMinute();
for(k=0;k<m_LstRecPort.GetItemCount();k++)
Con_pDVRPara->contactPara[j].nPreSetPort[k]=nProbePreset[k];
Con_pDVRPara->contactPara[j].nContactAlarmPort=nRecPort;
Con_pDVRPara->contactPara[j].nContactAlarmOut=nProbeOutput;
Con_pDVRPara->contactPara[j].nContactAlarmTime=m_ProbeTime;
Con_pDVRPara->contactPara[j].nContactAlarmStatus=m_ContactRec;
Con_pDVRPara->contactPara[j].ContactAlarmRecDefendDayTag=nSelDay;
}
}
else
{
nFirstInput = nInput==0?0:(nInput-1);
nLastInput = nInput==0?16:nInput;
//for(j=0;j<()16;j++)
for(j=nFirstInput;j<nLastInput;j++)
{
Con_pDVRPara->contactPara[j].tContactAlarmRecEveryday1.nBgnHour=m_BgnTime1.GetHour();
Con_pDVRPara->contactPara[j].tContactAlarmRecEveryday1.nBgnMinute=m_BgnTime1.GetMinute();
Con_pDVRPara->contactPara[j].tContactAlarmRecEveryday1.nEndHour=m_EndTime1.GetHour();
Con_pDVRPara->contactPara[j].tContactAlarmRecEveryday1.nEndMinute=m_EndTime1.GetMinute();
Con_pDVRPara->contactPara[j].tContactAlarmRecEveryday2.nBgnHour=m_BgnTime2.GetHour();
Con_pDVRPara->contactPara[j].tContactAlarmRecEveryday2.nBgnMinute=m_BgnTime2.GetMinute();
Con_pDVRPara->contactPara[j].tContactAlarmRecEveryday2.nEndHour=m_EndTime2.GetHour();
Con_pDVRPara->contactPara[j].tContactAlarmRecEveryday2.nEndMinute=m_EndTime2.GetMinute();
for(k=0;k<m_LstRecPort.GetItemCount();k++)
Con_pDVRPara->contactPara[j].nPreSetPort[k]=nProbePreset[k];
Con_pDVRPara->contactPara[j].nContactAlarmPort=nRecPort;
Con_pDVRPara->contactPara[j].nContactAlarmOut=nProbeOutput;
Con_pDVRPara->contactPara[j].nContactAlarmTime=m_ProbeTime;
Con_pDVRPara->contactPara[j].nContactAlarmStatus=m_ContactRec;
Con_pDVRPara->contactPara[j].ContactAlarmRecDefendDayTag=nSelDay;
}
}
}//if(Con_pDVRPara!=NULL)
}
void CNetCtlPAlarmDlg::OnDeltaposRprobealarmTimeSpin(NMHDR* pNMHDR, LRESULT* pResult)
{
if(Con_pDVRPara==NULL)
return;
NM_UPDOWN* pNMUpDown = (NM_UPDOWN*)pNMHDR;
UpdateData(TRUE) ;
if (pNMUpDown->iDelta > 0)
{
if (m_ProbeTime > 1)
m_ProbeTime-- ;
}
else
{
if (m_ProbeTime < 255)
m_ProbeTime++ ;
}
UpdateData(FALSE) ;
*pResult = 0;
}
void CNetCtlPAlarmDlg::OnSelchangeWeekTab(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
if (pNetRemoteCtlDlg->m_nDVRType <= 0)
{
BYTE weekno;
BYTE hour,minute;
UpdateData(TRUE) ;
weekno = m_weekTab.GetCurSel() ;
if(weekno<0)
weekno=0;
if(weekno==7)
{
hour=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday1.nBgnHour;
minute=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday1.nBgnMinute;
CTime time(2002,10,16,hour,minute,0,0);
m_BgnTime1=time;
hour=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday1.nEndHour;
minute=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday1.nEndMinute;
CTime time1(2002,10,16,hour,minute,0,0);
m_EndTime1=time1;
hour=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday2.nBgnHour;
minute=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday2.nBgnMinute;
CTime time2(2002,10,16,hour,minute,0,0);
m_BgnTime2=time2;
hour=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday2.nEndHour;
minute=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday2.nEndMinute;
CTime time3(2002,10,16,hour,minute,0,0);
m_EndTime2=time3;
}
else
{
hour=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecTable1[weekno].nBgnHour;
minute=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecTable1[weekno].nBgnMinute;
CTime time(2002,10,16,hour,minute,0,0);
m_BgnTime1=time;
hour=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecTable1[weekno].nEndHour;
minute=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecTable1[weekno].nEndMinute;
CTime time1(2002,10,16,hour,minute,0,0);
m_EndTime1=time1;
hour=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecTable2[weekno].nBgnHour;
minute=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecTable2[weekno].nBgnMinute;
CTime time2(2002,10,16,hour,minute,0,0);
m_BgnTime2=time2;
hour=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecTable2[weekno].nEndHour;
minute=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecTable2[weekno].nEndMinute;
CTime time3(2002,10,16,hour,minute,0,0);
m_EndTime2=time3;
}
if(nSelDay&(1<<weekno))
m_ProbeRec=TRUE;
else
m_ProbeRec=FALSE;
UpdateData(FALSE) ;
}
else
{
BYTE weekno;
BYTE hour,minute;
UpdateData(TRUE) ;
weekno = m_weekTab.GetCurSel() ;
if(weekno<0)
weekno=0;
pNetRemoteCtlDlg->GetDvrParam(m_ProbeInput+1,weekno+1,PARA_TYPE_ALARM_PROBE,&m_ProbeAlarmParam,sizeof(Contact_Alarm_Parameter));
//hour=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday1.nBgnHour;
//minute=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday1.nBgnMinute;
hour = m_ProbeAlarmParam.DefendStartHour1;
minute = m_ProbeAlarmParam.DefendStartMinute1;
CTime time(2002,10,16,hour,minute,0,0);
m_BgnTime1=time;
//hour=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday1.nEndHour;
//minute=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday1.nEndMinute;
hour = m_ProbeAlarmParam.DefendEndHour1;
minute = m_ProbeAlarmParam.DefendEndMinute1;
CTime time1(2002,10,16,hour,minute,0,0);
m_EndTime1=time1;
//hour=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday2.nBgnHour;
//minute=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday2.nBgnMinute;
hour = m_ProbeAlarmParam.DefendStartHour2;
minute = m_ProbeAlarmParam.DefendStartMinute2;
CTime time2(2002,10,16,hour,minute,0,0);
m_BgnTime2=time2;
//hour=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday2.nEndHour;
//minute=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday2.nEndMinute;
hour = m_ProbeAlarmParam.DefendEndHour2;
minute = m_ProbeAlarmParam.DefendEndMinute2;
CTime time3(2002,10,16,hour,minute,0,0);
m_EndTime2=time3;
if(nSelDay&(1<<weekno))
m_ProbeRec=TRUE;
else
m_ProbeRec=FALSE;
UpdateData(FALSE) ;
}
*pResult = 0;
}
void CNetCtlPAlarmDlg::OnSelchangeRprobealarmInput()
{
// TODO: Add your control notification handler code here
char * l_None;
l_None=_T("无");
int i;
CString str;
UpdateData(TRUE);
if (pNetRemoteCtlDlg->m_nDVRType <= 0)
{
unsigned short Trigger;
Trigger=Con_pDVRPara->contactPara[m_ProbeInput].nContactAlarmPort;
for(i=0;i<m_LstRecPort.GetItemCount();i++)
{
if(Trigger&(1<<i))
ListView_SetCheckState(m_LstRecPort.m_hWnd,i,TRUE)
else
ListView_SetCheckState(m_LstRecPort.m_hWnd,i,FALSE)
}
Trigger=Con_pDVRPara->contactPara[m_ProbeInput].nContactAlarmOut;
if(Trigger&1)
m_ProbeInput1=TRUE;
else
m_ProbeInput1=FALSE;
if(Trigger&2)
m_ProbeInput2=TRUE;
else
m_ProbeInput2=FALSE;
if(Trigger&4)
m_ProbeInput3=TRUE;
else
m_ProbeInput3=FALSE;
if(Trigger&8)
m_ProbeInput4=TRUE;
else
m_ProbeInput4=FALSE;
// if(Trigger&16)
// m_ProbeInput5=TRUE;
// else
// m_ProbeInput5=FALSE;
// if(Trigger&32)
// m_ProbeInput6=TRUE;
// else
// m_ProbeInput6=FALSE;
// if(Trigger&64)
// m_ProbeInput7=TRUE;
// else
// m_ProbeInput7=FALSE;
// if(Trigger&128)
// m_ProbeInput8=TRUE;
// else
// m_ProbeInput8=FALSE;
m_ContactRec=Con_pDVRPara->contactPara[m_ProbeInput].nContactAlarmStatus;
m_ProbeTime=Con_pDVRPara->contactPara[m_ProbeInput].nContactAlarmTime;
//预置
for(i=0;i<m_LstRecPort.GetItemCount();i++)
{
if(Con_pDVRPara->contactPara[m_ProbeInput].nPreSetPort[i]==0xFF)
m_LstRecPort.SetItemText(i,1,l_None);
else
{
str.Format("%d",Con_pDVRPara->contactPara[m_ProbeInput].nPreSetPort[i]);
m_LstRecPort.SetItemText(i,1,str);
}
}
BYTE weekno;
BYTE hour,minute;
weekno = m_weekTab.GetCurSel() ;
if(weekno<0)
weekno=0;
nSelDay=Con_pDVRPara->contactPara[m_ProbeInput].ContactAlarmRecDefendDayTag;
if(nSelDay&(1<<7))
nSelDay=1<<7;
if(weekno==7)
{
hour=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday1.nBgnHour;
minute=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday1.nBgnMinute;
CTime time(2002,10,16,hour,minute,0,0);
m_BgnTime1=time;
hour=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday1.nEndHour;
minute=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday1.nEndMinute;
CTime time1(2002,10,16,hour,minute,0,0);
m_EndTime1=time1;
hour=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday2.nBgnHour;
minute=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday2.nBgnMinute;
CTime time2(2002,10,16,hour,minute,0,0);
m_BgnTime2=time2;
hour=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday2.nEndHour;
minute=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecEveryday2.nEndMinute;
CTime time3(2002,10,16,hour,minute,0,0);
m_EndTime2=time3;
}
else
{
hour=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecTable1[weekno].nBgnHour;
minute=Con_pDVRPara->contactPara[m_ProbeInput].tContactAlarmRecTable1[weekno].nBgnMinute;
CTime time(2002,10,16,hour,minute,0,0);
m_BgnTime1=time;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -