#include "StdAfx.h" #include "CHReviewSetting/Sys_SystemManager.h" CSys_SystemManager::CSys_SystemManager(void) { } CSys_SystemManager::~CSys_SystemManager(void) { } CSystemInfo* CSys_SystemManager::GetSystemInfo() { return &m_systemInfo; } const CSystemInfo* CSys_SystemManager::GetSystemInfo() const { return &m_systemInfo; } void CSys_SystemManager::SetProfile(CMacroFile& macroFile) { CString strItem = _T(""); // System Info strItem.Format(_T("SYS_SYSTEM_LINE_TYPE")); macroFile.SetItem(strItem, m_systemInfo.m_nLineType); strItem.Format(_T("SYS_SYSTEM_MACHINE_TYPE")); macroFile.SetItem(strItem, m_systemInfo.m_nMachineType); strItem.Format(_T("SYS_SYSTEM_EQP_ID")); macroFile.SetItem(strItem, m_systemInfo.m_strEqpID); strItem.Format(_T("SYS_SYSTEM_MONITOR_POSITION")); macroFile.SetItem(strItem, m_systemInfo.m_nMonitorPosition); strItem.Format(_T("SYS_SYSTEM_LONG_RUN")); macroFile.SetItem(strItem, m_systemInfo.m_bLongRun); strItem.Format(_T("SYS_SYSTEM_LONG_RUN_COUNT")); macroFile.SetItem(strItem, m_systemInfo.m_nLongRunCount); strItem.Format(_T("SYS_SYSTEM_USE_VISION_ALIGN")); macroFile.SetItem(strItem, m_systemInfo.m_bUseVisionAlign); strItem.Format(_T("SYS_SYSTEM_COLLISTION_DISTANCE")); macroFile.SetItem(strItem, m_systemInfo.m_dCollisionDistance); strItem.Format(_T("SYS_SYSTEM_AFM_ALIVE_COUNT")); macroFile.SetItem(strItem, 3); // Gantry Count int nGantryCount = (int)m_systemInfo.GetGantryInfoCount(); strItem.Format(_T("SYS_SYSTEM_GANTRY_COUNT")); macroFile.SetItem(strItem, nGantryCount); // Gantry Info for(int nGantryIdx=0; nGantryIdxm_bStandardGantry); strItem.Format(_T("SYS_SYSTEM_GANTRY_TYPE_%02d"), nGantryIdx); macroFile.SetItem(strItem, pGantryInfo->m_nGantryType); strItem.Format(_T("SYS_SYSTEM_GANTRY_X_AXIS_NAME_%02d"), nGantryIdx); macroFile.SetItem(strItem, pGantryInfo->m_strXAxisName); double dCollisionDistance = pGantryInfo->m_dCollisionDistance; strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_COLLISION_DISTANCE"), nGantryIdx); macroFile.SetItem(strItem, dCollisionDistance); // Header Count int nHeaderCount = pGantryInfo->GetHeaderInfoCount(); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_COUNT"), nGantryIdx); macroFile.SetItem(strItem, nHeaderCount); // Header Info for(int nHeaderIdx=0; nHeaderIdxGetHeaderInfo(nHeaderIdx); if (pHeaderInfo==NULL) continue; strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_MODULE_TYPE_%02d"), nGantryIdx, nHeaderIdx); macroFile.SetItem(strItem, pHeaderInfo->m_nModuleType); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_LENS_TYPE_%02d"), nGantryIdx, nHeaderIdx); macroFile.SetItem(strItem, pHeaderInfo->m_nLensType); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_STANDARD_%02d"), nGantryIdx, nHeaderIdx); macroFile.SetItem(strItem, (int)pHeaderInfo->m_bStandardHeader); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_Y_AXIS_NAME_%02d"), nGantryIdx, nHeaderIdx); macroFile.SetItem(strItem, pHeaderInfo->m_strYAxisName); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_Z_AXIS_NAME_%02d"), nGantryIdx, nHeaderIdx); macroFile.SetItem(strItem, pHeaderInfo->m_strZAxisName); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_LIGHT_INDEX_%02d"), nGantryIdx, nHeaderIdx); macroFile.SetItem(strItem, pHeaderInfo->m_nLightIndex); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_LIGHT_CHANNEL_%02d"), nGantryIdx, nHeaderIdx); macroFile.SetItem(strItem, pHeaderInfo->m_nLightChannel); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_REVOLVER_INDEX_%02d"), nGantryIdx, nHeaderIdx); macroFile.SetItem(strItem, pHeaderInfo->m_nRevolverIndex); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_REVOLVER_CHANNEL_%02d"), nGantryIdx, nHeaderIdx); macroFile.SetItem(strItem, pHeaderInfo->m_nRevolverChannel); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_AFM_INDEX_%02d"), nGantryIdx, nHeaderIdx); macroFile.SetItem(strItem, pHeaderInfo->m_nAFMIndex); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_AFM_CHANNEL_%02d"), nGantryIdx, nHeaderIdx); macroFile.SetItem(strItem, pHeaderInfo->m_nAFMChannel); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_WSI_INDEX_%02d"), nGantryIdx, nHeaderIdx); macroFile.SetItem(strItem, pHeaderInfo->m_nWSIIndex); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_WSI_CHANNEL_%02d"), nGantryIdx, nHeaderIdx); macroFile.SetItem(strItem, pHeaderInfo->m_nWSIChannel); // Camera Count int nCameraCount = pHeaderInfo->GetCameraInfoCount(); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_COUNT"), nGantryIdx, nHeaderIdx); macroFile.SetItem(strItem, nCameraCount); // Camera Info for(int nCameraIdx=0; nCameraIdxGetCameraInfo(nCameraIdx); if (pCameraInfo==NULL) continue; ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_INDEX_%02d"),nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetIndex()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_FRAME_CHANNELS_%02d"),nGantryIdx, nHeaderIdx, nCameraIdx) ; macroFile.SetItem(strItem,pCameraInfo->GetFrameChannels()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_GRAB_COUNT%02d"),nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetGrabCount()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_CONNECT_PORT%02d"),nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem,pCameraInfo->GetConnectionPort()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_FFC_FILE_NAME%02d"),nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem,pCameraInfo->GetFfcFilename()); //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_STANDARD_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, (int)pCameraInfo->GetStandardCamera()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_LIBRARY_TYPE_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetLibraryType()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_FLIP_TYPE_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetFlipType()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_FILE_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetCameraFilePath()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_NAME_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetName()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_CHANNEL_INDEX_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetChannelIndex()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_GRABBER_INDEX_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetGrabberIndex()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_FRAME_COUNT_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetFrameCount()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_FRAME_WIDTH_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetFrameWidth()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_FRAME_HEIGHT_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetFrameHeight()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_IMAGE_BUFFER_COUNT_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetImageBufferCount()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_X_AXIS_DIRECTION_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetAxisDirectionX()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_Y_AXIS_DIRECTION_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetAxisDirectionY()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_RESOLUTION_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetPixelResolution()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_DISTANCE_X_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetCameraDistanceX()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_DISTANCE_Y_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetCameraDistanceY()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_OFFSET_X_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetCameraOffsetX()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_OFFSET_Y_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetCameraOffsetY()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_GAIN_R_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetGainRed()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_GAIN_G_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetGainGreen()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_GAIN_B_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.SetItem(strItem, pCameraInfo->GetGainBlue()); } // Light Count int nLightCount = pHeaderInfo->GetLightInfoCount(); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_LIGHT_COUNT"), nGantryIdx, nHeaderIdx); macroFile.SetItem(strItem, nLightCount); // Light Info for(int nLightIdx=0; nLightIdxGetLightInfo(nLightIdx); if (pLightInfo==NULL) continue; //////////////////////////////////////////////////////////////////////////////////////////////////////////////// strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_INDEX_%02d"), nGantryIdx, nHeaderIdx, nLightIdx); macroFile.SetItem(strItem,pLightInfo->GetIndex()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_NAME_%02d"), nGantryIdx, nHeaderIdx, nLightIdx); macroFile.SetItem(strItem,pLightInfo->GetName()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_BAUD_RATE_%02d"), nGantryIdx, nHeaderIdx, nLightIdx); macroFile.SetItem(strItem, pLightInfo->GetBaudRate()); //////////////////////////////////////////////////////////////////////////////////////////////////////////////// strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_LIGHT_TYPE_%02d"), nGantryIdx, nHeaderIdx, nLightIdx); macroFile.SetItem(strItem, pLightInfo->GetControllerType()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_LIGHT_PORT_%02d"), nGantryIdx, nHeaderIdx, nLightIdx); macroFile.SetItem(strItem, pLightInfo->GetConnectionPort()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_LIGHT_DEFAULT_LEVEL_%02d"), nGantryIdx, nHeaderIdx, nLightIdx); macroFile.SetItem(strItem, pLightInfo->GetDefaultValue()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_LIGHT_MAX_LEVEL_%02d"), nGantryIdx, nHeaderIdx, nLightIdx); macroFile.SetItem(strItem, pLightInfo->GetMaxValue()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_LIGHT_MIN_LEVEL_%02d"), nGantryIdx, nHeaderIdx, nLightIdx); macroFile.SetItem(strItem, pLightInfo->GetMinValue()); } // Revolver Count int nRevolverCount = pHeaderInfo->GetRevolverInfoCount(); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_REVOLVER_COUNT"), nGantryIdx, nHeaderIdx); macroFile.SetItem(strItem, nRevolverCount); // Revolver Info for(int nRevolverIdx=0; nRevolverIdxGetRevolverInfo(nRevolverIdx); if (pRevolverInfo==NULL) continue; // Index strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_REVOLVER_INDEX_%02d"),nGantryIdx, nHeaderIdx, nRevolverIdx); macroFile.SetItem(strItem,pRevolverInfo->GetIndex()); //Name strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_REVOLVER_NAME_%02d"),nGantryIdx, nHeaderIdx, nRevolverIdx); macroFile.SetItem(strItem,pRevolverInfo->GetName()); //type strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_REVOLVER_TYPE_%02d"), nGantryIdx, nHeaderIdx, nRevolverIdx); macroFile.SetItem(strItem, pRevolverInfo->GetControllerType()); //Port strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_REVOLVER_PORT_%02d"), nGantryIdx, nHeaderIdx, nRevolverIdx); macroFile.SetItem(strItem, pRevolverInfo->GetConnectionPort()); // BaudRate strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_REVOLVER_BAUDRATE_%02d"), nGantryIdx, nHeaderIdx, nRevolverIdx); macroFile.SetItem(strItem, pRevolverInfo->GetBaudRate()); //Default Level strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_REVOLVER_DEFAULT_LEVEL_%02d"), nGantryIdx, nHeaderIdx, nRevolverIdx); macroFile.SetItem(strItem, pRevolverInfo->GetDefaultLevel()); // MAX Level strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_REVOLVER_MAX_LEVEL_%02d"), nGantryIdx, nHeaderIdx, nRevolverIdx); macroFile.SetItem(strItem, pRevolverInfo->GetMaxLevel()); // Min Level strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_REVOLVER_MIN_LEVEL_%02d"), nGantryIdx, nHeaderIdx, nRevolverIdx); macroFile.SetItem(strItem, pRevolverInfo->GetMinLevel()); } // Magnific Count int nMagnificCount = pHeaderInfo->GetMagnificInfoCount(); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_MAGNIFIC_COUNT"), nGantryIdx, nHeaderIdx); macroFile.SetItem(strItem, nMagnificCount); for (int nMagnificIdx=0; nMagnificIdxGetMagnificInfo(nMagnificIdx); if (pMagnificInfo==NULL) continue; strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_MAGNIFIC_DATA_%02d"), nGantryIdx, nHeaderIdx, nMagnificIdx); macroFile.SetItem(strItem, pMagnificInfo->m_dMagnification); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_MAGNIFIC_NAME_%02d"), nGantryIdx, nHeaderIdx, nMagnificIdx); macroFile.SetItem(strItem, pMagnificInfo->m_strMagnificName); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_MAGNIFIC_OFFSET_X_%02d"), nGantryIdx, nHeaderIdx, nMagnificIdx); macroFile.SetItem(strItem, pMagnificInfo->m_dMagnificOffsetX); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_MAGNIFIC_OFFSET_Y_%02d"), nGantryIdx, nHeaderIdx, nMagnificIdx); macroFile.SetItem(strItem, pMagnificInfo->m_dMagnificOffsetY); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_MSG_HOME_POSITION_%02d"), nGantryIdx, nHeaderIdx, nMagnificIdx); macroFile.SetItem(strItem, pMagnificInfo->m_nMsgHomePosition); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_MAGNIFIC_Test OFFSET_X_%02d"), nGantryIdx, nHeaderIdx, nMagnificIdx); //cmark macroFile.SetItem(strItem, pMagnificInfo->m_dTestOffsetX); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_MAGNIFIC_Test OFFSET_Y_%02d"), nGantryIdx, nHeaderIdx, nMagnificIdx); macroFile.SetItem(strItem, pMagnificInfo->m_dTestOffsetY); } // AFM Count int nAFMCount = pHeaderInfo->GetAFMInfoCount(); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_AFM_COUNT"), nGantryIdx, nHeaderIdx); macroFile.SetItem(strItem, nAFMCount); // AFM Info for(int nAFMIdx=0; nAFMIdxGetAFMInfo(nAFMIdx); if (pAFMInfo==NULL) continue; //////////////////////////////////////////////////////////////////////////////////////////////////////////////// strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_AFM_TYPE_INDEX_%02d"),nGantryIdx, nHeaderIdx, nAFMIdx); macroFile.SetItem(strItem,pAFMInfo->GetIndex()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_AFM_NAME_%02d"),nGantryIdx, nHeaderIdx, nAFMIdx); macroFile.SetItem(strItem,pAFMInfo->GetName()); /////////////////////////////////////////////////////////////////////////////////////////////////////////////// strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_AFM_TYPE_%02d"), nGantryIdx, nHeaderIdx, nAFMIdx); macroFile.SetItem(strItem, pAFMInfo->GetControllerType()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_AFM_PORT_%02d"), nGantryIdx, nHeaderIdx, nAFMIdx); macroFile.SetItem(strItem, pAFMInfo->GetConnectionPort()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_DEFAULT_JOG_SPPED%02d"),nGantryIdx, nHeaderIdx, nAFMIdx); macroFile.SetItem(strItem, pAFMInfo->GetDefaultJogSpeed()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_AFM_MAX_JOG_SPEED_%02d"),nGantryIdx, nHeaderIdx, nAFMIdx); macroFile.SetItem(strItem, pAFMInfo->GetMaxJogSpeed()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_AFM_MIN_JOG_SPEED_%02d"), nGantryIdx, nHeaderIdx, nAFMIdx); macroFile.SetItem(strItem, pAFMInfo->GetMinJogSpeed()); } // Wsi Count int nWsiCount = pHeaderInfo->GetWsiInfoCount(); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_WSI_COUNT"), nGantryIdx, nHeaderIdx); macroFile.SetItem(strItem, nWsiCount); // Wsi Info for(int nWSIIdx=0; nWSIIdxGetWsiInfo(nWSIIdx); if (pWSIInfo==NULL) continue; strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_WS_TYPE_%02d"), nGantryIdx, nHeaderIdx, nWSIIdx); macroFile.SetItem(strItem, pWSIInfo->GetControllerType()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_WSI_PORT_%02d"), nGantryIdx, nHeaderIdx, nWSIIdx); macroFile.SetItem(strItem, pWSIInfo->GetConnectionPort()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_WSI_OFFSET_X_%02d"), nGantryIdx, nHeaderIdx, nWSIIdx); macroFile.SetItem(strItem, pWSIInfo->GetOffsetX()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_WSI_OFFSET_Y_%02d"), nGantryIdx, nHeaderIdx, nWSIIdx); macroFile.SetItem(strItem, pWSIInfo->GetOffsetY()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_WSI_FOV_X_%02d"), nGantryIdx, nHeaderIdx, nWSIIdx); macroFile.SetItem(strItem, pWSIInfo->GetWSIFOVX()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_WSI_FOV_Y_%02d"), nGantryIdx, nHeaderIdx, nWSIIdx); macroFile.SetItem(strItem, pWSIInfo->GetWSIFOVY()); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_WSI_SCAN_DIR_%02d"), nGantryIdx, nHeaderIdx, nWSIIdx); macroFile.SetItem(strItem, pWSIInfo->GetWSIScanDir()); } } } } void CSys_SystemManager::GetProfile(CMacroFile& macroFile) { CString strItem = _T(""); strItem.Format(_T("SYS_SYSTEM_LINE_TYPE")); macroFile.GetItem(strItem, m_systemInfo.m_nLineType, -1); strItem.Format(_T("SYS_SYSTEM_MACHINE_TYPE")); macroFile.GetItem(strItem, m_systemInfo.m_nMachineType, -1); strItem.Format(_T("SYS_SYSTEM_EQP_ID")); macroFile.GetItem(strItem, m_systemInfo.m_strEqpID); strItem.Format(_T("SYS_SYSTEM_MONITOR_POSITION")); macroFile.GetItem(strItem, m_systemInfo.m_nMonitorPosition, 0); strItem.Format(_T("SYS_SYSTEM_LONG_RUN")); macroFile.GetItem(strItem, m_systemInfo.m_bLongRun); strItem.Format(_T("SYS_SYSTEM_LONG_RUN_COUNT")); macroFile.GetItem(strItem, m_systemInfo.m_nLongRunCount); strItem.Format(_T("SYS_SYSTEM_USE_VISION_ALIGN")); macroFile.GetItem(strItem, m_systemInfo.m_bUseVisionAlign, 1); strItem.Format(_T("SYS_SYSTEM_COLLISTION_DISTANCE")); macroFile.GetItem(strItem, m_systemInfo.m_dCollisionDistance); strItem.Format(_T("SYS_SYSTEM_AFM_ALIVE_COUNT")); macroFile.GetItem(strItem, m_systemInfo.m_nAfmAliveCount); int nGantryCount = 0; strItem.Format(_T("SYS_SYSTEM_GANTRY_COUNT")); macroFile.GetItem(strItem, nGantryCount); // set Gantry Count m_systemInfo.SetGantryInfoCount(nGantryCount); for(int nGantryIdx = 0; nGantryIdx < nGantryCount; nGantryIdx++) { CGantryInfo *pGantryInfo = m_systemInfo.GetGantryInfo(nGantryIdx); if (pGantryInfo==NULL) continue; strItem.Format(_T("SYS_SYSTEM_GANTRY_STANDARD_%02d"), nGantryIdx); macroFile.GetItem(strItem, (int)pGantryInfo->m_bStandardGantry); strItem.Format(_T("SYS_SYSTEM_GANTRY_TYPE_%02d"), nGantryIdx); macroFile.GetItem(strItem, pGantryInfo->m_nGantryType); strItem.Format(_T("SYS_SYSTEM_GANTRY_X_AXIS_NAME_%02d"), nGantryIdx); macroFile.GetItem(strItem, pGantryInfo->m_strXAxisName); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_COLLISION_DISTANCE"), nGantryIdx); macroFile.GetItem(strItem, (double)pGantryInfo->m_dCollisionDistance); int nHeaderCount = 0; strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_COUNT"), nGantryIdx); macroFile.GetItem(strItem, nHeaderCount); // set Header Count pGantryInfo->SetHeaderInfoCount(nHeaderCount); for(int nHeaderIdx = 0; nHeaderIdx < nHeaderCount; nHeaderIdx++) { CHeaderInfo *pHeaderInfo = pGantryInfo->GetHeaderInfo(nHeaderIdx); if (pHeaderInfo==NULL) continue; strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_MODULE_TYPE_%02d"), nGantryIdx, nHeaderIdx); macroFile.GetItem(strItem, pHeaderInfo->m_nModuleType, ModuleType_Review+ModuleType_Measure); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_LENS_TYPE_%02d"), nGantryIdx, nHeaderIdx); macroFile.GetItem(strItem, pHeaderInfo->m_nLensType, LensType_SingleTube); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_STANDARD_%02d"), nGantryIdx, nHeaderIdx); macroFile.GetItem(strItem, (int)pHeaderInfo->m_bStandardHeader); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_Y_AXIS_NAME_%02d"), nGantryIdx, nHeaderIdx); macroFile.GetItem(strItem, pHeaderInfo->m_strYAxisName); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_Z_AXIS_NAME_%02d"), nGantryIdx, nHeaderIdx); macroFile.GetItem(strItem, pHeaderInfo->m_strZAxisName); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_LIGHT_INDEX_%02d"), nGantryIdx, nHeaderIdx); macroFile.GetItem(strItem, pHeaderInfo->m_nLightIndex); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_LIGHT_CHANNEL_%02d"), nGantryIdx, nHeaderIdx); macroFile.GetItem(strItem, pHeaderInfo->m_nLightChannel); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_REVOLVER_INDEX_%02d"), nGantryIdx, nHeaderIdx); macroFile.GetItem(strItem, pHeaderInfo->m_nRevolverIndex); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_REVOLVER_CHANNEL_%02d"), nGantryIdx, nHeaderIdx); macroFile.GetItem(strItem, pHeaderInfo->m_nRevolverChannel); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_AFM_INDEX_%02d"), nGantryIdx, nHeaderIdx); macroFile.GetItem(strItem, pHeaderInfo->m_nAFMIndex); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_AFM_CHANNEL_%02d"), nGantryIdx, nHeaderIdx); macroFile.GetItem(strItem, pHeaderInfo->m_nAFMChannel); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_WSI_INDEX_%02d"), nGantryIdx, nHeaderIdx); macroFile.GetItem(strItem, pHeaderInfo->m_nWSIIndex); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_WSI_CHANNEL_%02d"), nGantryIdx, nHeaderIdx); macroFile.GetItem(strItem, pHeaderInfo->m_nWSIChannel); int nCameraCount = 0; strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_COUNT"), nGantryIdx, nHeaderIdx); macroFile.GetItem(strItem, nCameraCount); // set Camera Count pHeaderInfo->SetCameraInfoCount(nCameraCount); CString strGetItem = 0; int nGetItem = 0; BOOL bGetItem = FALSE; double dGetItem = 0.; for(int nCameraIdx = 0; nCameraIdx < nCameraCount; nCameraIdx++) { CCameraControlInfo_Plus *pCameraInfo = pHeaderInfo->GetCameraInfo(nCameraIdx); if (pCameraInfo==NULL) continue; /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_INDEX_%02d"),nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, nGetItem); pCameraInfo->SetIndex(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_FRAME_CHANNELS_%02d"),nGantryIdx, nHeaderIdx, nCameraIdx) ; macroFile.GetItem(strItem,nGetItem); pCameraInfo->SetFrameChannels(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_GRAB_COUNT%02d"),nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, nGetItem); pCameraInfo->SetGrabCount(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_CONNECT_PORT%02d"),nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem,strGetItem); pCameraInfo->SetConnectionPort(strGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_FFC_FILE_NAME%02d"),nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem,strGetItem); pCameraInfo->SetFfcFilename(strGetItem); /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_STANDARD_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, nGetItem); pCameraInfo->SetStandardCamera((BOOL)nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_LIBRARY_TYPE_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, nGetItem); pCameraInfo->SetLibraryType(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_FLIP_TYPE_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, nGetItem); pCameraInfo->SetFlipType(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_FILE_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, strGetItem); pCameraInfo->SetCameraFilePath(strGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_NAME_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, strGetItem); pCameraInfo->SetName(strGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_CHANNEL_INDEX_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, nGetItem); pCameraInfo->SetChannelIndex(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_GRABBER_INDEX_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, nGetItem); pCameraInfo->SetGrabberIndex(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_FRAME_COUNT_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, nGetItem); pCameraInfo->SetFrameCount(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_FRAME_WIDTH_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, nGetItem); pCameraInfo->SetFrameWidth(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_FRAME_HEIGHT_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, nGetItem); pCameraInfo->SetFrameHeight(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_IMAGE_BUFFER_COUNT_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, nGetItem); pCameraInfo->SetImageBufferCount(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_X_AXIS_DIRECTION_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, nGetItem); pCameraInfo->SetAxisDirectionX(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_Y_AXIS_DIRECTION_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, nGetItem); pCameraInfo->SetAxisDirectionY(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_RESOLUTION_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, dGetItem); pCameraInfo->SetPixelResolution(dGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_DISTANCE_X_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, dGetItem); pCameraInfo->SetCameraDistanceX(dGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_DISTANCE_Y_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, dGetItem); pCameraInfo->SetCameraDistanceY(dGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_OFFSET_X_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, dGetItem); pCameraInfo->SetCameraOffsetX(dGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_OFFSET_Y_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, dGetItem); pCameraInfo->SetCameraOffsetY(dGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_GAIN_R_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, dGetItem, 1.0); pCameraInfo->SetGainRed(dGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_GAIN_G_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, dGetItem, 1.0); pCameraInfo->SetGainGreen(dGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_CAMERA_GAIN_B_%02d"), nGantryIdx, nHeaderIdx, nCameraIdx); macroFile.GetItem(strItem, dGetItem, 1.0); pCameraInfo->SetGainBlue(dGetItem); } int nLightCount = 0; strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_LIGHT_COUNT"), nGantryIdx, nHeaderIdx); macroFile.GetItem(strItem, nLightCount); // set Light Count pHeaderInfo->SetLightInfoCount(nLightCount); nGetItem = 0; strGetItem = _T(""); for(int nLightIdx = 0; nLightIdx < nLightCount; nLightIdx++) { CLightControlInfo *pLightInfo = pHeaderInfo->GetLightInfo(nLightIdx); if (pLightInfo==NULL) continue; /////////////////////////////////////////////////////////////////////////////////////////////////////////// strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_INDEX_%02d"), nGantryIdx, nHeaderIdx, nLightIdx); macroFile.GetItem(strItem, nGetItem); pLightInfo->SetIndex(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_NAME_%02d"), nGantryIdx, nHeaderIdx, nLightIdx); macroFile.GetItem(strItem, strGetItem); pLightInfo->SetName(strGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_BAUD_RATE_%02d"), nGantryIdx, nHeaderIdx, nLightIdx); macroFile.GetItem(strItem, nGetItem,CBR_9600); pLightInfo->SetBaudRate(nGetItem); /////////////////////////////////////////////////////////////////////////////////////////////////////////// strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_LIGHT_TYPE_%02d"), nGantryIdx, nHeaderIdx, nLightIdx); macroFile.GetItem(strItem, nGetItem); pLightInfo->SetControllerType(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_LIGHT_PORT_%02d"), nGantryIdx, nHeaderIdx, nLightIdx); macroFile.GetItem(strItem, strGetItem); pLightInfo->SetConnectionPort(strGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_LIGHT_DEFAULT_LEVEL_%02d"), nGantryIdx, nHeaderIdx, nLightIdx); macroFile.GetItem(strItem, nGetItem); pLightInfo->SetDefaultValue(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_LIGHT_MAX_LEVEL_%02d"), nGantryIdx, nHeaderIdx, nLightIdx); macroFile.GetItem(strItem, nGetItem); pLightInfo->SetMaxValue(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_LIGHT_MIN_LEVEL_%02d"), nGantryIdx, nHeaderIdx, nLightIdx); macroFile.GetItem(strItem, nGetItem); pLightInfo->SetMinValue(nGetItem); } int nRevolverCount = 0; strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_REVOLVER_COUNT"), nGantryIdx, nHeaderIdx); macroFile.GetItem(strItem, nRevolverCount); // set Revolver Count pHeaderInfo->SetRevolverInfoCount(nRevolverCount); nGetItem = 0; for(int nRevolverIdx = 0; nRevolverIdx < nRevolverCount; nRevolverIdx++) { CLensChangeControlInfo *pRevolverInfo = pHeaderInfo->GetRevolverInfo(nRevolverIdx); if (pRevolverInfo==NULL) continue; ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_REVOLVER_INDEX_%02d"),nGantryIdx, nHeaderIdx, nRevolverIdx); macroFile.GetItem(strItem,nGetItem); pRevolverInfo->SetIndex(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_REVOLVER_NAME_%02d"),nGantryIdx, nHeaderIdx, nRevolverIdx); macroFile.GetItem(strItem,strGetItem); pRevolverInfo->SetName(strGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_REVOLVER_BAUDRATE_%02d"),nGantryIdx, nHeaderIdx, nRevolverIdx); macroFile.GetItem(strItem,nGetItem, CBR_9600); pRevolverInfo->SetBaudRate(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_REVOLVER_MAX_LEVEL_%02d"),nGantryIdx, nHeaderIdx, nRevolverIdx); macroFile.GetItem(strItem,nGetItem); pRevolverInfo->SetMaxLevel(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_REVOLVER_MIN_LEVEL_%02d"),nGantryIdx, nHeaderIdx, nRevolverIdx); macroFile.GetItem(strItem,nGetItem); pRevolverInfo->SetMinLevel(nGetItem); ////////////////////////////////////////////////////////////////////////////////////////////////////////////////// strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_REVOLVER_TYPE_%02d"), nGantryIdx, nHeaderIdx, nRevolverIdx); macroFile.GetItem(strItem,nGetItem); pRevolverInfo->SetControllerType(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_REVOLVER_PORT_%02d"), nGantryIdx, nHeaderIdx, nRevolverIdx); macroFile.GetItem(strItem, strGetItem); pRevolverInfo->SetConnectionPort(strGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_REVOLVER_DEFAULT_LEVEL_%02d"), nGantryIdx, nHeaderIdx, nRevolverIdx); macroFile.GetItem(strItem,nGetItem); pRevolverInfo->SetDefaultLevel(nGetItem); } int nMagnificCount = 0; strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_MAGNIFIC_COUNT"), nGantryIdx, nHeaderIdx); macroFile.GetItem(strItem, nMagnificCount, 0); // set Magnific Count pHeaderInfo->SetMagnificInfoCount(nMagnificCount); for (int nMagnificIdx=0; nMagnificIdxGetMagnificInfo(nMagnificIdx); if (pMagnificInfo==NULL) continue; strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_MAGNIFIC_DATA_%02d"), nGantryIdx, nHeaderIdx, nMagnificIdx); macroFile.GetItem(strItem, pMagnificInfo->m_dMagnification); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_MAGNIFIC_NAME_%02d"), nGantryIdx, nHeaderIdx, nMagnificIdx); macroFile.GetItem(strItem, pMagnificInfo->m_strMagnificName); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_MAGNIFIC_OFFSET_X_%02d"), nGantryIdx, nHeaderIdx, nMagnificIdx); macroFile.GetItem(strItem, pMagnificInfo->m_dMagnificOffsetX); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_MAGNIFIC_OFFSET_Y_%02d"), nGantryIdx, nHeaderIdx, nMagnificIdx); macroFile.GetItem(strItem, pMagnificInfo->m_dMagnificOffsetY); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_MSG_HOME_POSITION_%02d"), nGantryIdx, nHeaderIdx, nMagnificIdx); macroFile.GetItem(strItem, pMagnificInfo->m_nMsgHomePosition); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_MAGNIFIC_Test OFFSET_X_%02d"), nGantryIdx, nHeaderIdx, nMagnificIdx); macroFile.GetItem(strItem, pMagnificInfo->m_dTestOffsetX); //cmark strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_MAGNIFIC_Test OFFSET_Y_%02d"), nGantryIdx, nHeaderIdx, nMagnificIdx); macroFile.GetItem(strItem, pMagnificInfo->m_dTestOffsetY); } int nAFMCount = 0; strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_AFM_COUNT"), nGantryIdx, nHeaderIdx); macroFile.GetItem(strItem, nAFMCount); // set AFM Count pHeaderInfo->SetAFMInfoCount(nAFMCount); dGetItem = 0; nGetItem = 0; strGetItem = _T(""); for(int nAFMIdx = 0; nAFMIdx < nAFMCount; nAFMIdx++) { CAfmControlInfo *pAFMInfo = pHeaderInfo->GetAFMInfo(nAFMIdx); if (pAFMInfo==NULL) continue; //////////////////////////////////////////////////////////////////////////////////////////////////////////////// strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_AFM_TYPE_INDEX_%02d"),nGantryIdx, nHeaderIdx, nAFMIdx); macroFile.GetItem(strItem,nGetItem); pAFMInfo->SetIndex(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_AFM_NAME_%02d"),nGantryIdx, nHeaderIdx, nAFMIdx); macroFile.GetItem(strItem,strGetItem); pAFMInfo->SetName(strGetItem); /////////////////////////////////////////////////////////////////////////////////////////////////////////////// strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_AFM_TYPE_%02d"), nGantryIdx, nHeaderIdx, nAFMIdx); macroFile.GetItem(strItem, nGetItem); pAFMInfo->SetControllerType(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_AFM_PORT_%02d"), nGantryIdx, nHeaderIdx, nAFMIdx); macroFile.GetItem(strItem, strGetItem); pAFMInfo->SetConnectionPort(strGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_DEFAULT_JOG_SPPED%02d"), nGantryIdx, nHeaderIdx, nAFMIdx); macroFile.GetItem(strItem, dGetItem); pAFMInfo->SetDefaultJogSpeed(dGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_AFM_MAX_JOG_SPEED_%02d"), nGantryIdx, nHeaderIdx, nAFMIdx); macroFile.GetItem(strItem, dGetItem); pAFMInfo->SetMaxJogSpeed(dGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_AFM_MIN_JOG_SPEED_%02d"), nGantryIdx, nHeaderIdx, nAFMIdx); macroFile.GetItem(strItem, dGetItem); pAFMInfo->SetMinJogSpeed(dGetItem); } int nWSICount = 0; strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_WSI_COUNT"), nGantryIdx, nHeaderIdx); macroFile.GetItem(strItem, nWSICount); // set WSI Count pHeaderInfo->SetWSIInfoCount(nWSICount); for(int nWSIIdx = 0; nWSIIdx < nWSICount; nWSIIdx++) { CWsiControlInfo *pWSIInfo = pHeaderInfo->GetWsiInfo(nWSIIdx); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_WSI_TYPE_%02d"), nGantryIdx, nHeaderIdx, nWSIIdx); macroFile.GetItem(strItem, nGetItem); pWSIInfo->SetControllerType(nGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_WSI_PORT_%02d"), nGantryIdx, nHeaderIdx, nWSIIdx); macroFile.GetItem(strItem, strGetItem); pWSIInfo->SetConnectionPort(strGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_WSI_OFFSET_X_%02d"), nGantryIdx, nHeaderIdx, nWSIIdx); macroFile.GetItem(strItem, dGetItem); pWSIInfo->SetOffsetX(dGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_WSI_OFFSET_Y_%02d"), nGantryIdx, nHeaderIdx, nWSIIdx); macroFile.GetItem(strItem, dGetItem); pWSIInfo->SetOffsetY(dGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_WSI_FOV_X_%02d"), nGantryIdx, nHeaderIdx, nWSIIdx); macroFile.GetItem(strItem, dGetItem); pWSIInfo->SetWSIFOVX(dGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_WSI_FOV_Y_%02d"), nGantryIdx, nHeaderIdx, nWSIIdx); macroFile.GetItem(strItem, dGetItem); pWSIInfo->SetWSIFOVY(dGetItem); strItem.Format(_T("SYS_SYSTEM_GANTRY_%02d_HEADER_%02d_WSI_SCAN_DIR_%02d"), nGantryIdx, nHeaderIdx, nWSIIdx); macroFile.GetItem(strItem, dGetItem); pWSIInfo->SetWSIScanDir(dGetItem); } } } }