From 260b16a1debe7dbc33982768a37dfd48ca34b248 Mon Sep 17 00:00:00 2001
From: chenluhua1980 <Chenluhua@qq.com>
Date: 星期五, 09 一月 2026 14:27:21 +0800
Subject: [PATCH] 1.EAP模拟器完善
---
SourceCode/Bond/Servo/Configuration.cpp | 97 ++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 97 insertions(+), 0 deletions(-)
diff --git a/SourceCode/Bond/Servo/Configuration.cpp b/SourceCode/Bond/Servo/Configuration.cpp
index b8529b6..a2434b1 100644
--- a/SourceCode/Bond/Servo/Configuration.cpp
+++ b/SourceCode/Bond/Servo/Configuration.cpp
@@ -92,6 +92,17 @@
return (int)texts.size();
}
+void CConfiguration::setFilterMode(int mode)
+{
+ WritePrivateProfileString(_T("Logcat"), _T("FilterMode"),
+ std::to_string(mode).c_str(), m_strFilepath);
+}
+
+int CConfiguration::getFilterMode()
+{
+ return GetPrivateProfileInt(_T("Logcat"), _T("FilterMode"), 0, m_strFilepath);
+}
+
int CConfiguration::getP2RemoteEqReconnectInterval()
{
return GetPrivateProfileInt(_T("P2"), _T("RemoteEqReconnectInterval"), 20, m_strFilepath);
@@ -103,3 +114,89 @@
std::to_string(second).c_str(), m_strFilepath);
}
+BOOL CConfiguration::getPortParms(unsigned int index, BOOL& bEnable, int& type, int& mode,
+ int& cassetteType, int& transferMode, BOOL& bAutoChangeEnable)
+{
+ if (index >= 4) return FALSE;
+
+ static char* pszSection[] = {"Port1", "Port2", "Port3", "Port4"};
+ bEnable = GetPrivateProfileInt(pszSection[index], _T("Enable"), 0, m_strFilepath) == 1;
+ type = GetPrivateProfileInt(pszSection[index], _T("Type"), 0, m_strFilepath);
+ mode = GetPrivateProfileInt(pszSection[index], _T("Mode"), 0, m_strFilepath);
+ cassetteType = GetPrivateProfileInt(pszSection[index], _T("CassetteType"), 0, m_strFilepath);
+ transferMode = GetPrivateProfileInt(pszSection[index], _T("TransferMode"), 0, m_strFilepath);
+ bAutoChangeEnable = GetPrivateProfileInt(pszSection[index], _T("AutoChangeEnable"), 0, m_strFilepath) == 1;
+
+ // type, mode, cassetteType, transferMode 范围检查
+ type = max(1, min(type, 7));
+ mode = max(0, min(mode, 5));
+ cassetteType = max(1, min(cassetteType, 3));
+ transferMode = max(1, min(transferMode, 3));
+
+ return TRUE;
+}
+
+BOOL CConfiguration::setPortType(unsigned int index, int type)
+{
+ if (index >= 4) return FALSE;
+ if (type < 1 || 7 < type) return FALSE;
+
+ static char* pszSection[] = { "Port1", "Port2", "Port3", "Port4" };
+ WritePrivateProfileString(pszSection[index], _T("Type"), std::to_string(type).c_str(), m_strFilepath);
+ return true;
+}
+
+BOOL CConfiguration::setPortCassetteType(unsigned int index, int cassetteType)
+{
+ if (index >= 4) return FALSE;
+ if (cassetteType < 1 || 3 < cassetteType) return FALSE;
+
+ static char* pszSection[] = { "Port1", "Port2", "Port3", "Port4" };
+ WritePrivateProfileString(pszSection[index], _T("CassetteType"), std::to_string(cassetteType).c_str(), m_strFilepath);
+ return true;
+}
+
+BOOL CConfiguration::setPortEnable(unsigned int index, BOOL bEnable)
+{
+ if (index >= 4) return FALSE;
+
+ static char* pszSection[] = { "Port1", "Port2", "Port3", "Port4" };
+ WritePrivateProfileString(pszSection[index], _T("Enable"), std::to_string(bEnable ? 1 : 0).c_str(), m_strFilepath);
+ return true;
+}
+
+BOOL CConfiguration::isCompareMapsBeforeProceeding()
+{
+ return GetPrivateProfileInt(_T("Master"), _T("CompareMapsBeforeProceeding"), 0, m_strFilepath);
+}
+
+BOOL CConfiguration::isJobMode()
+{
+ return GetPrivateProfileInt(_T("Master"), _T("JobMode"), 0, m_strFilepath);
+}
+
+void CConfiguration::setContinuousTransferCount(int round)
+{
+ WritePrivateProfileString(_T("Master"), _T("CTRound"),
+ std::to_string(round).c_str(), m_strFilepath);
+}
+
+int CConfiguration::getContinuousTransferCount()
+{
+ return GetPrivateProfileInt(_T("Master"), _T("CTRound"), 0, m_strFilepath);
+}
+
+char* pszPortSection[] = { "Port1", "Port2", "Port3", "Port4" };
+int CConfiguration::getPortCassetteSnSeed(int port)
+{
+ ASSERT(1 <= port && port <= 4);
+ return GetPrivateProfileInt(pszPortSection[port-1], _T("CassetteSnSeed"), 0, m_strFilepath);
+}
+
+void CConfiguration::setPortCassetteSnSeed(int port, int seed)
+{
+ ASSERT(1 <= port && port <= 4);
+ WritePrivateProfileString(pszPortSection[port - 1], _T("CassetteSnSeed"),
+ std::to_string(seed).c_str(), m_strFilepath);
+}
+
--
Gitblit v1.9.3