SDC C-Project CF Review 프로그램
LYW
2021-07-01 668b40db8e394058c7e0abad2fbe539a631043c2
ReviewSystem/ReviewSystem/SequenceProcessor_CPJT.cpp
@@ -964,7 +964,7 @@
   //   m_pSP2P->ISP2P_DisplayMessage(_T("[SequenceProcessor::Loading] Revolver Set GoHome Success!"));
   //}
   //210330 kyh Align Image 초기화
   //#3357 KYH Align Image 초기화 ADD START
   CCameraControlAlign* pAlignCameraControl = m_pSP2P->ISP2P_GetAlignCameraControl();
   if (pAlignCameraControl != NULL)
   {
@@ -972,6 +972,7 @@
      g_pLog->DisplayMessage(_T("[Align] Align Image Clear"));
   }
   //#3357 KYH Align Image 초기화 ADD END
    // get transfer data
    int nResultCode = 0;
@@ -1026,6 +1027,10 @@
            
         }
         // #3381 LYW CF AOI Review 전설비 FDC TackTime 오보고 현상 개선 ADD START
         pDitRawClient->GetGlassData()->m_tmReviewLoading = CTime::GetCurrentTime();
         // #3381 LYW CF AOI Review 전설비 FDC TackTime 오보고 현상 개선 ADD END
         
         CString strGlassIDTemp = NULL;
@@ -1042,8 +1047,9 @@
         m_pSP2P->ISP2P_DisplayMessage(_T("[SequenceProcessor::GlassLoading] Send Loading Success Signal!"));
         strFileName.Format(_T("%s_%s"), strGlassIDTemp, strGlassStepIdTemp);
         bFileFind = FindRawBinFile(strFileName);
         //bFileFind = TRUE;
         //업데이트시
         //bFileFind = FindRawBinFile(strFileName);
         bFileFind = TRUE;
         pDitRawClient->SetReviewStart();
         Sleep(1000);
@@ -1238,6 +1244,7 @@
         if(pAlignCameraControl->AlignCameraDisconnectCheck() == FALSE)
         {
            SendResultToSignalControl(PCControlSendData_AlignResult_CPJT, SIGNAL_SEND_RESULT_FAIL);
            m_pSP2P->ISP2P_DisplayMessage(_T("[SequenceProcessor::AlignStart] Send Align Fail! Align Cam Disconnect"));
            m_pSP2P->ISP2P_DisplayMessage(_T("[SequenceProcessor::AlignStart] Algin Camera Disconnect!!!!"));
         }
      }      
@@ -1507,6 +1514,9 @@
{
   m_pSP2P->ISP2P_DisplayMessage(_T("[SequenceProcessor::IN] ReviewEnd!"));
   if (SendSignalToSignalControl(PCControlSendSignalIndex_Ack, PCControlSend_ReviewEndAck_CPJT))
      m_pSP2P->ISP2P_DisplayMessage(_T("[SequenceProcessor::ReviewEnd] Send Review End Ack!"));
   CDitGlassRawClient* m_pDitGlassRaw = CDitGlassRawClient::GetInstance();
   if (m_pSP2P->ISP2P_GetWSIControl(0)!=NULL)
   {
@@ -1523,9 +1533,6 @@
   
   m_pDitGlassRaw->GetGlassData()->m_nReviewNum = m_pSP2P->ISP2P_GetReviewProcessor()->GetPlanReviewCount();
    //SendDVDataToSignalControl();// 안쓰쥬
   if (SendSignalToSignalControl(PCControlSendSignalIndex_Ack, PCControlSend_ReviewEndAck_CPJT))
      m_pSP2P->ISP2P_DisplayMessage(_T("[SequenceProcessor::ReviewEnd] Send Review End Ack!"));
   //OverTime 발생시 제어에서 END ACK를 기다리는게 아니라 걍 Conplete를 기다린다.
   //음 ... 로직  오류인데일단 추가 
@@ -3121,7 +3128,7 @@
               strReadData = pTransferData->strRerferData;
               break;
            }
            //m_pSP2P->ISP2P_DisplayMessage(_T("[ReadTransferData] Name: %s, Addr: %s, Size: %d, Data: %s"), pInfo->strName, strReadAddress, nReadSize, strReadData); //0517
            m_pSP2P->ISP2P_DisplayMessage(_T("[ReadTransferData] Name: %s, Addr: %s, Size: %d, Data: %s"), pInfo->strName, strReadAddress, nReadSize, strReadData); //0517
      }
   }
@@ -4494,7 +4501,7 @@
   SetWsiType(0);
   WSIAllReadySignal(1);
   Sleep(500);
   Sleep(1000);
   if(!WSIAllStartSignal())
   {
      g_pLog->DisplayMessage(_T("[WSI] WSI Start Fail!!"));
@@ -4570,6 +4577,9 @@
   VectorDouble vectorCollisionPosX;
   vectorCollisionPosX.clear();
   //WSI 좌우 겐트리 동시이동
   pMotorControl->GantrySetTwoGantrySyncModeSend(1);
   
   // WSI result count
@@ -4617,8 +4627,7 @@
            return 0;
         }
      }
      //WSI 좌우 겐트리 동시이동
      pMotorControl->GantrySetTwoGantrySyncModeSend(1);
      // get result index
      int nStartIdx = pWsiResult->GetStartSReviewResultIndex();
@@ -4690,7 +4699,7 @@
         //3360 LYW_ CF AOI QD Review WSI XY MotorMoving Error 알람 발생 원인 분석 및 조치 START
         g_pLog->DisplayMessage(_T("[GantryAutoGo] No Exist Send Point,TwoGantrySyncMode OFF!"), vectorPosX.size());
         g_pLog->DisplayMessage(_T("[GantryAutoGo] (%d)Gantry Path Send Fail"), pModuleStatus->GetGantryIndex()); //taek 210128
         pMotorControl->GantrySetTwoGantrySyncModeSend(1);
         pMotorControl->GantrySetTwoGantrySyncModeSend(0);
         //3360 LYW_ CF AOI QD Review WSI XY MotorMoving Error 알람 발생 원인 분석 및 조치 END
      }
      else
@@ -6076,6 +6085,7 @@
   pReviewScheduler->GetPathSchedulerParam()->SetSelectModuleType(type);
   
   nSchedulingCount = pReviewScheduler->PathScheduling(vecPathData, vecStartPathData);
   if (nSchedulingCount>0)
   {
@@ -7727,7 +7737,8 @@
   pSignalControl->WritePacketData(_T("15100"), sizeof(DVDataPack_CPJT), (short*)&DVData);*/
}
void CSequenceProcessor_CPJT::MakeDVData2() //210325 kyh FDC
//#3358 KYH FDC 데이터 전송 시점 개선 ADD START
void CSequenceProcessor_CPJT::MakeDVData2()
{
   const CRsRcpReviewInfo* pRsRcpReviewInfo = m_pSP2P->ISP2P_Recipe_GetRsRcpReviewInfo();
@@ -7981,8 +7992,6 @@
   pSignalControl->WritePacketData(_T("16128"), sizeof(nWSI1_PC_HDD_CHECK), (short*)&nWSI1_PC_HDD_CHECK);
   pSignalControl->WritePacketData(_T("16132"), sizeof(nWSI2_PC_HDD_CHECK), (short*)&nWSI2_PC_HDD_CHECK);
   pSignalControl->WritePacketData(_T("16136"), sizeof(nReviewVersion), (short*)&nReviewVersion);
   pSignalControl->WritePacketData(_T("16140"), sizeof(nWSI00Version), (short*)&nWSI00Version);
   pSignalControl->WritePacketData(_T("16144"), sizeof(nWSI01Version), (short*)&nWSI01Version);
@@ -7990,6 +7999,7 @@
   return;
}
//#3358 KYH FDC 데이터 전송 시점 개선 ADD END
DWORD CSequenceProcessor_CPJT::GetDiskUsage()
{