#include "stdafx.h" #include "IOManager.h" #include #include #include "ToolUnits.h" IOManager::IOManager() { m_directory = CToolUnits::getCurrentExePath() + _T("\\Config"); if (!CToolUnits::isDirectory(m_directory)) { CToolUnits::createDir(m_directory.c_str()); } } void IOManager::addMachine(const std::string& machineName, const std::vector& data) { m_machines[machineName] = data; } void IOManager::addDefaultMachineData(const std::string& machineName) { if (machineName == "Cavity") { std::vector defaultData = { {"X1000", "Unit1_¼±Í£ EMO", "Y1010", "Unit1_ËÄÉ«µÆ-ºì"}, {"X1001", "Unit1_×ܽøÆøÑ¹Á¦¼ì", "Y1011", "Unit1_ËÄÉ«µÆ-»Æ"}, {"X1002", "Unit1_ËÅ·þµç¹ñÑ̸б¨¾¯", "Y1012", "Unit1_ËÄÉ«µÆ-ÂÌ"}, {"X1003", "Unit1_¼ÓÈȵç¹ñÑ̸б¨¾¯", "Y1013", "Unit1_ËÄÉ«µÆ-À¶"}, {"X1004", "°²È«¼ÌµçÆ÷¼ì", "Y1014", "Unit1_·äÃùÆ÷-1"}, {"X1005", "", "Y1015", "Unit1_·äÃùÆ÷-2"}, {"X1006", "", "Y1016", "Unit1_·äÃùÆ÷-3"}, {"X1007", "Unit1_°²È«ÃŴżì1", "Y1017", "Unit1_·äÃùÆ÷-4"}, {"X1008", "Unit1_°²È«ÃŴżì2", "Y1018", "Unit1_»ų́ÕÕÃ÷"}, {"X1009", "Unit1_°²È«ÃŴżì3", "Y1019", "Unit1_°²È«ÃÅËøÆÁ±Î"}, {"X100A", "Unit1_°²È«ÃŴżì4", "Y101A", ""}, {"X100B", "Unit1_°²È«ÃŴżì5", "Y101B", ""}, {"X100C", "Unit1_°²È«ÃŴżì6", "Y101C", ""}, {"X100D", "Unit1_°²È«ÃÅËø¼ì1", "Y101D", "Unit1_°²È«ÃÅËø1"}, {"X100E", "Unit1_°²È«ÃÅËø¼ì2", "Y101E", "Unit1_°²È«ÃÅËø2"}, {"X100F", "Unit1_°²È«ÃÅËø¼ì3", "Y101F", "Unit1_°²È«ÃÅËø3"}, {"X1020", "Unit1_·Ö×Ó±Ã-Alam(8-14)", "Y1030", "Unit1_·Ö×Ó±ÃÆô¶¯(1-9)"}, {"X1021", "Unit1_·Ö×Ó±Ã-Ô¶³Ì/±¾µØÄ£Ê½(7-15)", "Y1031", "Unit1_·Ö×Ó±ÃÁªËø×°ÖÃ(2-10)"}, {"X1022", "Unit1_·Ö×Ó±Ã-Õý³£ÔËÐУ¨4-12£©", "Y1032", "Unit1_·Ö×Ó±Ãͨ¶Ï²å°å·§"}, {"X1023", "Unit1_·Ö×Ó±Ãͨ¶Ï²å°å·§Ô­Î»", "Y1033", "Unit1_ÆøÄÒͨ¶Ï·§"}, {"X1024", "Unit1_·Ö×Ó±Ãͨ¶Ï²å°å·§µ½Î»", "Y1034", ""}, {"X1025", "Unit1_Ç»ÌåÍÐÆ¬×óÆø¸×ԭλ", "Y1035", "Unit1_Ç»ÌåÍÐÆ¬×óÆø¸×ԭλ"}, {"X1026", "Unit1_Ç»ÌåÍÐÆ¬×󯸏׵½Î»", "Y1036", "Unit1_Ç»ÌåÍÐÆ¬×󯸏׵½Î»"}, {"X1027", "Unit1_Ç»ÌåÍÐÆ¬ÓÒÆø¸×ԭλ", "Y1037", "Unit1_Ç»ÌåÍÐÆ¬ÓÒÆø¸×ԭλ"}, {"X1028", "Unit1_Ç»ÌåÍÐÆ¬ÓÒÆø¸×µ½Î»", "Y1038", "Unit1_Ç»ÌåÍÐÆ¬ÓÒÆø¸×µ½Î»"}, {"X1029", "Unit1_ÃÅ·§Éý½µÆø¸×ԭλ", "Y1039", "Unit1_ÃÅ·§Éý½µÆø¸×"}, {"X102A", "Unit1_ÃÅ·§Éý½µÆø¸×µ½Î»", "Y103A", ""}, {"X102B", "Unit1_Ç»Ì寯տ¿ÕÆø·§Ô­Î»", "Y103B", "Unit1_Ç»Ì寯տ¿ÕÆø·§"}, {"X102C", "Unit1_Ç»Ì寯տ¿ÕÆø·§µ½Î»", "Y103C", "Unit1_·Ö×Ó±ÃÅÅÆø·§"}, {"X102D", "Unit1_ÏÂÇ»Æ½Ì¨Õæ¿Õ¼ì", "Y103D", "Unit1_ÏÂǻƽ̨ÎüÕæ¿Õ"}, {"X102E", "Unit1_·Ö×Ó±ÃÅÅÆø·§Ô­Î»", "Y103E", "Unit1_ÏÂÇ»Æ½Ì¨ÆÆÕæ¿Õ"}, {"X102F", "Unit1_·Ö×Ó±ÃÅÅÆø·§µ½Î»", "Y103F", ""}, {"X1040", "Unit1_ÉϼÓÈÈÒÑÉϵç", "Y1050", "Unit1_ÉϼÓÈÈÉϵç"}, {"X1041", "Unit1_ÉÏÖ÷ÎÂ¿Ø±í±¨¾¯", "Y1051", "Unit1_ϼÓÈÈÉϵç"}, {"X1042", "Unit1_ÉÏ¼à¿ØÎÂ¿Ø±í±¨¾¯1", "Y1052", ""}, {"X1043", "Unit1_ÉÏ¼à¿ØÎÂ¿Ø±í±¨¾¯2", "Y1053", ""}, {"X1044", "Unit1_ÉÏ¼à¿ØÎÂ¿Ø±í±¨¾¯3", "Y1054", ""}, {"X1045", "Unit1_ÉÏ¼à¿ØÎÂ¿Ø±í±¨¾¯4", "Y1055", ""}, {"X1046", "Unit1_ÉÏ¼à¿ØÎÂ¿Ø±í±¨¾¯5", "Y1056", ""}, {"X1047", "Unit1_ϼÓÈÈÒÑÉϵç", "Y1057", ""}, {"X1048", "Unit1_ÏÂÖ÷ÎÂ¿Ø±í±¨¾¯", "Y1058", ""}, {"X1049", "Unit1_ÏÂ¼à¿ØÎÂ¿Ø±í±¨¾¯1", "Y1059", ""}, {"X104A", "Unit1_ÏÂ¼à¿ØÎÂ¿Ø±í±¨¾¯2", "Y105A", ""}, {"X104B", "Unit1_ÏÂ¼à¿ØÎÂ¿Ø±í±¨¾¯3", "Y105B", ""}, {"X104C", "Unit1_ÏÂ¼à¿ØÎÂ¿Ø±í±¨¾¯4", "Y105C", ""}, {"X104D", "Unit1_ÏÂ¼à¿ØÎÂ¿Ø±í±¨¾¯5", "Y105D", ""}, {"X104E", "", "Y105E", ""}, {"X104F", "", "Y105F", ""}, {"X1060", "Unit1_¸É±Ã-DVPÔËÐмì²â-11", "Y1070", "Unit1_¸É±Ã-DVPÆô¶¯-1"}, {"X1061", "Unit1_¸É±Ã-MBPÔËÐмì²â-12", "Y1071", "Unit1_¸É±Ã-MBPÆô¶¯-2"}, {"X1062", "Unit1_¸É±Ã-´íÎ󱨾¯ÖÐ-14", "Y1072", "Unit1_¸É±Ã-Òì³£½â³ý-3"}, {"X1063", "Unit1_¸É±Ã-´íÎ󾯸æÖÐ-16", "Y1073", ""}, {"X1064", "Unit1_¸É±Ã-Ô¶³Ì/±¾µØÄ£Ê½-18", "Y1074", "Unit1_µªÆøÍ¨¶Ïµç´Å·§1"}, {"X1065", "Unit1_¸É±Ã-½ô¼±Í£Ö¹ÖÐ-20", "Y1075", "Unit1_µªÆøÍ¨¶Ïµç´Å·§2"}, {"X1066", "", "Y1076", "Unit1_µªÆøÍ¨¶Ïµç´Å·§3"}, {"X1067", "", "Y1077", "Unit1_µªÆøÍ¨¶Ïµç´Å·§4"}, {"X1068", "", "Y1078", "Unit1_¼ÓÈȰåË®Àäͨ¶Ïµç´Å·§1"}, {"X1069", "", "Y1079", "Unit1_¼ÓÈȰåË®Àäͨ¶Ïµç´Å·§2"}, {"X106A", "", "Y107A", "Unit1_¼ÓÈȰåË®Àäͨ¶Ïµç´Å·§3"}, {"X106B", "", "Y107B", "Unit1_¼ÓÈȰåË®Àäͨ¶Ïµç´Å·§4"}, {"X106C", "", "Y107C", "Unit1_Ç»Ìåµ×°åͨ¶Ïµç´Å·§1"}, {"X106D", "Unit1_Ë®ÏäÉÏҺλ¼ì", "Y107D", "Unit1_Ç»Ìåµ×°åͨ¶Ïµç´Å·§2"}, {"X106E", "Unit1_Ë®ÏäÖÐҺλ¼ì", "Y107E", "Unit1_Ë®Ïä½øË®·§"}, {"X106F", "Unit1_Ë®ÏäÏÂҺλ¼ì", "Y107F", "Unit1_Ë®Ïä³öË®·§"}, {"X1080", "Unit2_¼±Í£ EMO", "Y1090", "Unit2_ËÄÉ«µÆ-ºì"}, {"X1081", "Unit2_×ܽøÆøÑ¹Á¦¼ì", "Y1091", "Unit2_ËÄÉ«µÆ-»Æ"}, {"X1082", "Unit2_ËÅ·þµç¹ñÑ̸б¨¾¯", "Y1092", "Unit2_ËÄÉ«µÆ-ÂÌ"}, {"X1083", "Unit2_¼ÓÈȵç¹ñÑ̸б¨¾¯", "Y1093", "Unit2_ËÄÉ«µÆ-À¶"}, {"X1084", "°²È«¼ÌµçÆ÷¼ì", "Y1094", "Unit2_·äÃùÆ÷-1"}, {"X1085", "", "Y1095", "Unit2_·äÃùÆ÷-2"}, {"X1086", "", "Y1096", "Unit2_·äÃùÆ÷-3"}, {"X1087", "Unit2_°²È«ÃŴżì1", "Y1097", "Unit2_·äÃùÆ÷-4"}, {"X1088", "Unit2_°²È«ÃŴżì2", "Y1098", "Unit2_»ų́ÕÕÃ÷"}, {"X1089", "Unit2_°²È«ÃŴżì3", "Y1099", "Unit2_°²È«ÃÅËøÆÁ±Î"}, {"X108A", "Unit2_°²È«ÃŴżì4", "Y109A", ""}, {"X108B", "Unit2_°²È«ÃŴżì5", "Y109B", ""}, {"X108C", "Unit2_°²È«ÃŴżì6", "Y109C", ""}, {"X108D", "Unit2_°²È«ÃÅËø¼ì1", "Y109D", "Unit2_°²È«ÃÅËø1"}, {"X108E", "Unit2_°²È«ÃÅËø¼ì2", "Y109E", "Unit2_°²È«ÃÅËø2"}, {"X108F", "Unit2_°²È«ÃÅËø¼ì3", "Y109F", "Unit2_°²È«ÃÅËø3"}, {"X10A0", "Unit2_·Ö×Ó±Ã-Alam(8-14)", "Y10B0", "Unit2_·Ö×Ó±ÃÆô¶¯(1-9)"}, {"X10A1", "Unit2_·Ö×Ó±Ã-Ô¶³Ì/±¾µØÄ£Ê½(7-15)", "Y10B1", "Unit2_·Ö×Ó±ÃÁªËø×°ÖÃ(2-10)"}, {"X10A2", "Unit2_·Ö×Ó±Ã-Õý³£ÔËÐУ¨4-12£©", "Y10B2", "Unit2_·Ö×Ó±Ãͨ¶Ï²å°å·§"}, {"X10A3", "", "Y10B3", "Unit2_ÆøÄÒͨ¶Ï·§"}, {"X10A4", "", "Y10B4", ""}, {"X10A5", "Unit2_Ç»ÌåÍÐÆ¬×óÆø¸×ԭλ", "Y10B5", "Unit2_Ç»ÌåÍÐÆ¬×óÆø¸×ԭλ"}, {"X10A6", "Unit2_Ç»ÌåÍÐÆ¬×󯸏׵½Î»", "Y10B6", "Unit2_Ç»ÌåÍÐÆ¬×󯸏׵½Î»"}, {"X10A7", "Unit2_Ç»ÌåÍÐÆ¬ÓÒÆø¸×ԭλ", "Y10B7", "Unit2_Ç»ÌåÍÐÆ¬ÓÒÆø¸×ԭλ"}, {"X10A8", "Unit2_Ç»ÌåÍÐÆ¬ÓÒÆø¸×µ½Î»", "Y10B8", "Unit2_Ç»ÌåÍÐÆ¬ÓÒÆø¸×µ½Î»"}, {"X10A9", "Unit2_ÃÅ·§Éý½µÆø¸×ԭλ", "Y10B9", "Unit2_ÃÅ·§Éý½µÆø¸×"}, {"X10AA", "Unit2_ÃÅ·§Éý½µÆø¸×µ½Î»", "Y10BA", ""}, {"X10AB", "Unit2_Ç»Ì寯տ¿ÕÆø·§Ô­Î»", "Y10BB", "Unit2_Ç»Ì寯տ¿ÕÆø·§"}, {"X10AC", "Unit2_Ç»Ì寯տ¿ÕÆø·§µ½Î»", "Y10BC", "Unit2_·Ö×Ó±ÃÅÅÆø·§"}, {"X10AD", "Unit2_ÏÂÇ»Æ½Ì¨Õæ¿Õ¼ì", "Y10BD", "Unit2_ÏÂǻƽ̨ÎüÕæ¿Õ"}, {"X10AE", "Unit2_·Ö×Ó±ÃÅÅÆø·§Ô­Î»", "Y10BE", "Unit2_ÏÂÇ»Æ½Ì¨ÆÆÕæ¿Õ"}, {"X10AF", "Unit2_·Ö×Ó±ÃÅÅÆø·§µ½Î»", "Y10BF", ""}, {"X10C0", "Unit2_ÉϼÓÈÈÒÑÉϵç", "Y10D0", "Unit2_ÉϼÓÈÈÉϵç"}, {"X10C1", "Unit2_ÉÏÖ÷ÎÂ¿Ø±í±¨¾¯", "Y10D1", "Unit2_ϼÓÈÈÉϵç"}, {"X10C2", "Unit2_ÉÏ¼à¿ØÎÂ¿Ø±í±¨¾¯1", "Y10D2", ""}, {"X10C3", "Unit2_ÉÏ¼à¿ØÎÂ¿Ø±í±¨¾¯2", "Y10D3", ""}, {"X10C4", "Unit2_ÉÏ¼à¿ØÎÂ¿Ø±í±¨¾¯3", "Y10D4", ""}, {"X10C5", "Unit2_ÉÏ¼à¿ØÎÂ¿Ø±í±¨¾¯4", "Y10D5", ""}, {"X10C6", "Unit2_ÉÏ¼à¿ØÎÂ¿Ø±í±¨¾¯5", "Y10D6", ""}, {"X10C7", "Unit2_ϼÓÈÈÒÑÉϵç", "Y10D7", ""}, {"X10C8", "Unit2_ÏÂÖ÷ÎÂ¿Ø±í±¨¾¯", "Y10D8", ""}, {"X10C9", "Unit2_ÏÂ¼à¿ØÎÂ¿Ø±í±¨¾¯1", "Y10D9", ""}, {"X10CA", "Unit2_ÏÂ¼à¿ØÎÂ¿Ø±í±¨¾¯2", "Y10DA", ""}, {"X10CB", "Unit2_ÏÂ¼à¿ØÎÂ¿Ø±í±¨¾¯3", "Y10DB", ""}, {"X10CC", "Unit2_ÏÂ¼à¿ØÎÂ¿Ø±í±¨¾¯4", "Y10DC", ""}, {"X10CD", "Unit2_ÏÂ¼à¿ØÎÂ¿Ø±í±¨¾¯5", "Y10DD", ""}, {"X10CE", "", "Y10DE", ""}, {"X10CF", "", "Y10DF", ""}, {"X10E0", "Unit2_¸É±Ã-DVPÔËÐмì²â-11", "Y10F0", "Unit2_¸É±Ã-DVPÆô¶¯-1"}, {"X10E1", "Unit2_¸É±Ã-MBPÔËÐмì²â-12", "Y10F1", "Unit2_¸É±Ã-MBPÆô¶¯-2"}, {"X10E2", "Unit2_¸É±Ã-´íÎ󱨾¯ÖÐ-14", "Y10F2", "Unit2_¸É±Ã-Òì³£½â³ý-3"}, {"X10E3", "Unit2_¸É±Ã-´íÎ󾯸æÖÐ-16", "Y10F3", ""}, {"X10E4", "Unit2_¸É±Ã-Ô¶³Ì/±¾µØÄ£Ê½-18", "Y10F4", "Unit2_µªÆøÍ¨¶Ïµç´Å·§1"}, {"X10E5", "Unit2_¸É±Ã-½ô¼±Í£Ö¹ÖÐ-20", "Y10F5", "Unit2_µªÆøÍ¨¶Ïµç´Å·§2"}, {"X10E6", "", "Y10F6", "Unit2_µªÆøÍ¨¶Ïµç´Å·§3"}, {"X10E7", "", "Y10F7", "Unit2_µªÆøÍ¨¶Ïµç´Å·§4"}, {"X10E8", "", "Y10F8", "Unit2_¼ÓÈȰåË®Àäͨ¶Ïµç´Å·§1"}, {"X10E9", "", "Y10F9", "Unit2_¼ÓÈȰåË®Àäͨ¶Ïµç´Å·§2"}, {"X10EA", "", "Y10FA", "Unit2_¼ÓÈȰåË®Àäͨ¶Ïµç´Å·§3"}, {"X10EB", "", "Y10FB", "Unit2_¼ÓÈȰåË®Àäͨ¶Ïµç´Å·§4"}, {"X10EC", "", "Y10FC", "Unit2_Ç»Ìåµ×°åͨ¶Ïµç´Å·§1"}, {"X10ED", "Unit2_Ë®ÏäÉÏҺλ¼ì", "Y10FD", "Unit2_Ç»Ìåµ×°åͨ¶Ïµç´Å·§2"}, {"X10EE", "Unit2_Ë®ÏäÖÐҺλ¼ì", "Y10FE", "Unit2_Ë®Ïä½øË®·§"}, {"X10EF", "Unit2_Ë®ÏäÏÂҺλ¼ì", "Y10FF", "Unit2_Ë®Ïä³öË®·§"} }; m_machines[machineName] = defaultData; } else if (machineName == "VacuumBake") { std::vector defaultData = { {"X1100", "¼±Í£ EMO", "Y1110", "ËÄÉ«µÆ-ºì"}, {"X1101", "×ܽøÆøÑ¹Á¦¼ì", "Y1111", "ËÄÉ«µÆ-»Æ"}, {"X1102", "A¼ÓÈȵç¹ñÑ̸б¨¾¯", "Y1112", "ËÄÉ«µÆ-ÂÌ"}, {"X1103", "B¼ÓÈȵç¹ñÑ̸б¨¾¯", "Y1113", "ËÄÉ«µÆ-À¶"}, {"X1104", "°²È«¼ÌµçÆ÷¼ì", "Y1114", "·äÃùÆ÷-1"}, {"X1105", "", "Y1115", "·äÃùÆ÷-2"}, {"X1106", "", "Y1116", "·äÃùÆ÷-3"}, {"X1107", "", "Y1117", "·äÃùÆ÷-4"}, {"X1108", "", "Y1118", "»ų́ÕÕÃ÷"}, {"X1109", "", "Y1119", "°²È«ÃÅËøÆÁ±Î"}, {"X110A", "°²È«ÃŴżì1", "Y111A", ""}, {"X110B", "°²È«ÃŴżì2", "Y111B", ""}, {"X110C", "°²È«ÃÅËø¼ì1", "Y111C", "°²È«ÃÅËø1"}, {"X110D", "°²È«ÃÅËø¼ì2", "Y111D", "°²È«ÃÅËø2"}, {"X110E", "°²È«ÃÅËø¼ì3", "Y111E", "°²È«ÃÅËø3"}, {"X110F", "°²È«ÃÅËø¼ì4", "Y111F", "°²È«ÃÅËø4"}, {"X1120", "AÇ»ÃÅ·§Éý½µÆø¸×ԭλ", "Y1130", "AÇ»ÃÅ·§Éý½µÆø¸×"}, {"X1121", "AÇ»ÃÅ·§Éý½µÆø¸×µ½Î»", "Y1131", ""}, {"X1122", "AǻǻÌå×ÜÎüÕæ¿ÕÆø·§Ô­Î»", "Y1132", "AǻǻÌå×ÜÎüÕæ¿ÕÆø·§"}, {"X1123", "AǻǻÌå×ÜÎüÕæ¿ÕÆø·§µ½Î»", "Y1133", "AǻǻÌå×ÜÆÆÕæ¿ÕÆø·§"}, {"X1124", "AǻǻÌå×ÜÆÆÕæ¿ÕÆø·§Ô­Î»", "Y1134", "AÇ»ÀäÈ´Ë®·§"}, {"X1125", "AǻǻÌå×ÜÆÆÕæ¿ÕÆø·§µ½Î»", "Y1135", ""}, {"X1126", "AÇ»¼ÓÈÈÒÑÉϵç", "Y1136", "AÇ»¼ÓÈÈÉϵç"}, {"X1127", "AÇ»Ö÷ÎÂ¿Ø±í±¨¾¯", "Y1137", ""}, {"X1128", "AÇ»¼à¿ØÎÂ¿Ø±í±¨¾¯1", "Y1138", ""}, {"X1129", "AÇ»¼à¿ØÎÂ¿Ø±í±¨¾¯2", "Y1139", ""}, {"X112A", "AÇ»¼à¿ØÎÂ¿Ø±í±¨¾¯3", "Y113A", ""}, {"X112B", "AÇ»¼à¿ØÎÂ¿Ø±í±¨¾¯4", "Y113B", ""}, {"X112C", "AÇ»¼à¿ØÎÂ¿Ø±í±¨¾¯5", "Y113C", ""}, {"X112D", "", "Y113D", ""}, {"X112E", "", "Y113E", ""}, {"X112F", "", "Y113F", ""}, {"X1140", "BÇ»ÃÅ·§Éý½µÆø¸×ԭλ", "Y1150", "BÇ»ÃÅ·§Éý½µÆø¸×"}, {"X1141", "BÇ»ÃÅ·§Éý½µÆø¸×µ½Î»", "Y1151", ""}, {"X1142", "BǻǻÌå×ÜÎüÕæ¿ÕÆø·§Ô­Î»", "Y1152", "BǻǻÌå×ÜÎüÕæ¿ÕÆø·§"}, {"X1143", "BǻǻÌå×ÜÎüÕæ¿ÕÆø·§µ½Î»", "Y1153", "BǻǻÌå×ÜÆÆÕæ¿ÕÆø·§"}, {"X1144", "BǻǻÌå×ÜÆÆÕæ¿ÕÆø·§Ô­Î»", "Y1154", "BÇ»ÀäÈ´Ë®·§"}, {"X1145", "BǻǻÌå×ÜÆÆÕæ¿ÕÆø·§µ½Î»", "Y1155", ""}, {"X1146", "BÇ»¼ÓÈÈÒÑÉϵç", "Y1156", "BÇ»¼ÓÈÈÉϵç"}, {"X1147", "BÇ»Ö÷ÎÂ¿Ø±í±¨¾¯", "Y1157", ""}, {"X1148", "BÇ»¼à¿ØÎÂ¿Ø±í±¨¾¯1", "Y1158", ""}, {"X1149", "BÇ»¼à¿ØÎÂ¿Ø±í±¨¾¯2", "Y1159", ""}, {"X114A", "BÇ»¼à¿ØÎÂ¿Ø±í±¨¾¯3", "Y115A", ""}, {"X114B", "BÇ»¼à¿ØÎÂ¿Ø±í±¨¾¯4", "Y115B", ""}, {"X114C", "BÇ»¼à¿ØÎÂ¿Ø±í±¨¾¯5", "Y115C", ""}, {"X114D", "", "Y115D", ""}, {"X114E", "", "Y115E", ""}, {"X114F", "", "Y115F", ""}, {"X1160", "¸É±Ã-DVPÔËÐмì²â-11", "Y1170", "¸É±Ã-DVPÆô¶¯-1"}, {"X1161", "¸É±Ã-MBPÔËÐмì²â-12", "Y1171", "¸É±Ã-MBPÆô¶¯-2"}, {"X1162", "¸É±Ã-´íÎ󱨾¯ÖÐ-14", "Y1172", "¸É±Ã-Òì³£½â³ý-3"}, {"X1163", "¸É±Ã-´íÎ󾯸æÖÐ-16", "Y1173", ""}, {"X1164", "¸É±Ã-Ô¶³Ì/±¾µØÄ£Ê½-18", "Y1174", ""}, {"X1165", "¸É±Ã-½ô¼±Í£Ö¹ÖÐ-20", "Y1175", ""}, {"X1166", "", "Y1176", ""}, {"X1167", "", "Y1177", ""}, {"X1168", "", "Y1178", ""}, {"X1169", "", "Y1179", ""}, {"X116A", "", "Y117A", ""}, {"X116B", "", "Y117B", ""}, {"X116C", "", "Y117C", ""}, {"X116D", "", "Y117D", ""}, {"X116E", "", "Y117E", ""}, {"X116F", "", "Y117F", ""} }; m_machines[machineName] = defaultData; } else if (machineName == "AfterBake") { std::vector defaultData = { {"X200", "¼±Í£ EMO", "Y400", "ËÄÉ«µÆ-ºì"}, {"X201", "×ܽøÆøÑ¹Á¦¼ì", "Y401", "ËÄÉ«µÆ-»Æ"}, {"X202", "A¼ÓÈȵç¹ñÑ̸б¨¾¯", "Y402", "ËÄÉ«µÆ-ÂÌ"}, {"X203", "B¼ÓÈȵç¹ñÑ̸б¨¾¯", "Y403", "ËÄÉ«µÆ-À¶"}, {"X204", "°²È«¼ÌµçÆ÷¼ì", "Y404", "·äÃùÆ÷-1"}, {"X205", "ÉϵçÏäοر¨¾¯", "Y405", "·äÃùÆ÷-2"}, {"X206", "ϵçÏäοر¨¾¯", "Y406", "·äÃùÆ÷-3"}, {"X207", "", "Y407", "·äÃùÆ÷-4"}, {"X208", "°²È«ÃŴżì1", "Y408", "»ų́ÕÕÃ÷"}, {"X209", "°²È«ÃŴżì2", "Y409", "°²È«ÃÅËøÆÁ±Î"}, {"X20A", "°²È«ÃŴżì3", "Y40A", ""}, {"X20B", "°²È«ÃŴżì4", "Y40B", ""}, {"X20C", "°²È«ÃÅËø¼ì1", "Y40C", "°²È«ÃÅËø1"}, {"X20D", "°²È«ÃÅËø¼ì2", "Y40D", "°²È«ÃÅËø2"}, {"X20E", "°²È«ÃÅËø¼ì3", "Y40E", "°²È«ÃÅËø3"}, {"X20F", "°²È«ÃÅËø¼ì4", "Y40F", "°²È«ÃÅËø4"}, {"X210", "AÉÏÇ»¼Ð³ÖÆø¸×1ԭλ", "Y410", "AÉÏÇ»¼Ð³ÖÆø¸×"}, {"X211", "AÉÏÇ»¼Ð³ÖÆø¸×1µ½Î»", "Y411", ""}, {"X212", "AÉÏÇ»¼Ð³ÖÆø¸×2ԭλ", "Y412", "Aǻˮ·ͨ¶Ï·§"}, {"X213", "AÉÏÇ»¼Ð³ÖÆø¸×2µ½Î»", "Y413", ""}, {"X214", "AÏÂÇ»¼ÓÈÈÒÑÉϵç", "Y414", ""}, {"X215", "AÏÂÖ÷ÎÂ¿Ø±í±¨¾¯", "Y415", ""}, {"X216", "AÏÂÇ»¼à¿ØÎÂ¿Ø±í±¨¾¯1", "Y416", ""}, {"X217", "AÏÂÇ»¼à¿ØÎÂ¿Ø±í±¨¾¯2", "Y417", ""}, {"X218", "AÏÂÇ»¼à¿ØÎÂ¿Ø±í±¨¾¯3", "Y418", ""}, {"X219", "AÏÂÇ»¼à¿ØÎÂ¿Ø±í±¨¾¯4", "Y419", ""}, {"X21A", "AÏÂÇ»¼à¿ØÎÂ¿Ø±í±¨¾¯5", "Y41A", ""}, {"X21B", "", "Y41B", ""}, {"X21C", "Ç»Ìå×óÉÏÃÅ´Å", "Y41C", ""}, {"X21D", "Ç»Ìå×óÏÂÃÅ´Å", "Y41D", ""}, {"X21E", "Ç»ÌåÓÒÉÏÃÅ´Å", "Y41E", ""}, {"X21F", "Ç»ÌåÓÒÏÂÃÅ´Å", "Y41F", ""}, {"X220", "BÉÏÇ»¼Ð³ÖÆø¸×1ԭλ", "Y420", "BÉÏÇ»¼Ð³ÖÆø¸×"}, {"X221", "BÉÏÇ»¼Ð³ÖÆø¸×1µ½Î»", "Y421", ""}, {"X222", "BÉÏÇ»¼Ð³ÖÆø¸×2ԭλ", "Y422", "Bǻˮ·ͨ¶Ï·§"}, {"X223", "BÉÏÇ»¼Ð³ÖÆø¸×2µ½Î»", "Y423", ""}, {"X224", "BÏÂÇ»¼ÓÈÈÒÑÉϵç", "Y424", ""}, {"X225", "BÏÂÖ÷ÎÂ¿Ø±í±¨¾¯", "Y425", ""}, {"X226", "BÏÂÇ»¼à¿ØÎÂ¿Ø±í±¨¾¯1", "Y426", ""}, {"X227", "BÏÂÇ»¼à¿ØÎÂ¿Ø±í±¨¾¯2", "Y427", ""}, {"X228", "BÏÂÇ»¼à¿ØÎÂ¿Ø±í±¨¾¯3", "Y428", ""}, {"X229", "BÏÂÇ»¼à¿ØÎÂ¿Ø±í±¨¾¯4", "Y429", ""}, {"X22A", "BÏÂÇ»¼à¿ØÎÂ¿Ø±í±¨¾¯5", "Y42A", ""}, {"X22B", "", "Y42B", ""}, {"X22C", "AÉÏÇ»ÓÐÁϼì", "Y42C", ""}, {"X22D", "", "Y42D", ""}, {"X22E", "", "Y42E", ""}, {"X22F", "", "Y42F", ""} }; m_machines[machineName] = defaultData; } else if (machineName == "AOI") { std::vector defaultData = { {"X240", "¼±Í£ EMO", "Y440", "ËÄÉ«µÆ-ºì"}, {"X241", "×ܽøÆøÑ¹Á¦±í", "Y441", "ËÄÉ«µÆ-»Æ"}, {"X242", "Ñ̸б¨¾¯", "Y442", "ËÄÉ«µÆ-ÂÌ"}, {"X243", "", "Y443", "ËÄÉ«µÆ-À¶"}, {"X244", "", "Y444", "·äÃùÆ÷-1"}, {"X245", "×óÉÏÃŴżì", "Y445", "·äÃùÆ÷-2"}, {"X246", "×óÏÂÃŴżì", "Y446", "·äÃùÆ÷-3"}, {"X247", "ÓÒÉÏÃŴżì", "Y447", "·äÃùÆ÷-4"}, {"X248", "ÓÒÏÂÃŴżì", "Y448", "»ų́ÕÕÃ÷"}, {"X249", "°²È«ÃŴżì1", "Y449", "°²È«ÃÅËøÆÁ±Î"}, {"X24A", "°²È«ÃŴżì2", "Y44A", ""}, {"X24B", "°²È«ÃÅËø¼ì1", "Y44B", "°²È«ÃÅËø1"}, {"X24C", "°²È«ÃÅËø¼ì2", "Y44C", "°²È«ÃÅËø2"}, {"X24D", "¼ì²â°á±ÛѹÁ¦¼ì", "Y44D", ""}, {"X24E", "¼ì²âÆ½Ì¨Õæ¿Õ¼ì", "Y44E", "¼ì²âƽ̨ÎüÕæ¿Õ"}, {"X24F", "¼ì²âƽ̨ÓÐÁϼì", "Y44F", "¼ì²âÆ½Ì¨ÆÆÕæ¿Õ"}, {"X250", "¼ì²âƽ̨¶ÔÎ»Æø¸×A1ԭλ", "Y450", "¼ì²âƽ̨¶ÔÎ»Æø¸×A"}, {"X251", "¼ì²âƽ̨¶ÔÎ»Æø¸×A1µ½Î»", "Y451", ""}, {"X252", "¼ì²âƽ̨¶ÔÎ»Æø¸×A2ԭλ", "Y452", ""}, {"X253", "¼ì²âƽ̨¶ÔÎ»Æø¸×A2µ½Î»", "Y453", ""}, {"X254", "¼ì²âƽ̨¶ÔλÉý½µÆø¸×A1ԭλ", "Y454", "¼ì²âƽ̨¶ÔλÉý½µÆø¸×A"}, {"X255", "¼ì²âƽ̨¶ÔλÉý½µÆø¸×A1µ½Î»", "Y455", ""}, {"X256", "¼ì²âƽ̨¶ÔλÉý½µÆø¸×A2ԭλ", "Y456", ""}, {"X257", "¼ì²âƽ̨¶ÔλÉý½µÆø¸×A2µ½Î»", "Y457", ""}, {"X258", "¼ì²âƽ̨¶ÔÎ»Æø¸×B1ԭλ", "Y458", "¼ì²âƽ̨¶ÔÎ»Æø¸×B"}, {"X259", "¼ì²âƽ̨¶ÔÎ»Æø¸×B1µ½Î»", "Y459", ""}, {"X25A", "¼ì²âƽ̨¶ÔÎ»Æø¸×B2ԭλ", "Y45A", ""}, {"X25B", "¼ì²âƽ̨¶ÔÎ»Æø¸×B2µ½Î»", "Y45B", ""}, {"X25C", "¼ì²âƽ̨¶ÔλÉý½µÆø¸×B1ԭλ", "Y45C", "¼ì²âƽ̨¶ÔλÉý½µÆø¸×B"}, {"X25D", "¼ì²âƽ̨¶ÔλÉý½µÆø¸×B1µ½Î»", "Y45D", ""}, {"X25E", "¼ì²âƽ̨¶ÔλÉý½µÆø¸×B2ԭλ", "Y45E", ""}, {"X25F", "¼ì²âƽ̨¶ÔλÉý½µÆø¸×B2µ½Î»", "Y45F", ""}, {"X260", "", "Y460", ""}, {"X261", "", "Y461", ""}, {"X262", "", "Y462", ""}, {"X263", "", "Y463", ""}, {"X264", "", "Y464", ""}, {"X265", "", "Y465", ""}, {"X266", "", "Y466", ""}, {"X267", "", "Y467", ""}, {"X268", "", "Y468", ""}, {"X269", "", "Y469", ""}, {"X26A", "", "Y46A", ""}, {"X26B", "", "Y46B", ""}, {"X26C", "", "Y46C", ""}, {"X26D", "", "Y46D", ""}, {"X26E", "", "Y46E", ""}, {"X26F", "", "Y46F", ""} }; m_machines[machineName] = defaultData; } } void IOManager::saveToFile(const std::string& machineName) { std::ofstream file(m_directory + "/" + machineName + ".iom"); if (!file.is_open()) { std::cerr << "Failed to open file for writing: " << machineName << ".iom" << std::endl; return; } for (const auto& entry : m_machines[machineName]) { file << entry.inputAddress << "," << entry.inputDescription << "," << entry.outputAddress << "," << entry.outputDescription << "\n"; } file.close(); } bool IOManager::loadFromFile(const std::string& machineName) { std::ifstream file(m_directory + "/" + machineName + ".iom"); if (!file.is_open()) { std::cerr << "Failed to open file for reading: " << machineName << ".iom" << std::endl; return false; } std::vector data; std::string line; while (std::getline(file, line)) { IOData entry; size_t pos = 0; pos = line.find(","); entry.inputAddress = line.substr(0, pos); line.erase(0, pos + 1); pos = line.find(","); entry.inputDescription = line.substr(0, pos); line.erase(0, pos + 1); pos = line.find(","); entry.outputAddress = line.substr(0, pos); line.erase(0, pos + 1); entry.outputDescription = line; data.push_back(entry); } m_machines[machineName] = data; file.close(); return true; } void IOManager::printMachineData(const std::string& machineName) const { auto it = m_machines.find(machineName); if (it != m_machines.end()) { for (const auto& entry : it->second) { std::cout << "Input Address: " << entry.inputAddress << ", Input Description: " << entry.inputDescription << ", Output Address: " << entry.outputAddress << ", Output Description: " << entry.outputDescription << std::endl; } } else { std::cerr << "Machine not found: " << machineName << std::endl; } } std::vector IOManager::GetMachineData(const std::string& machineName) const { auto it = m_machines.find(machineName); if (it != m_machines.end()) { return it->second; } return {}; }