Browse Source

继续添加配置文件解析

guohui 1 year ago
parent
commit
82dfa0bdaa
5 changed files with 886 additions and 318 deletions
  1. 12 3
      pro/src/app.c
  2. 1 0
      pro/src/common.c
  3. 7 1
      pro/src/common.h
  4. 860 314
      pro/src/paras.c
  5. 6 0
      pro/src/paras.h

+ 12 - 3
pro/src/app.c

@@ -199,7 +199,7 @@ static void* power_thread(void* arg)
     thread_handle_t *h=(thread_handle_t*)arg;
     GlobalDeviceManager* _globalDeviceManager = (GlobalDeviceManager*)h->arg;
     _PowerDSManage_t* _powerDsManageTemp = NULL ;
-    PowerTotal_t *ptotal=&_globalDeviceManager->_globalDevInfo.ptotal;
+    ProductInfo_t *prod=&_globalDeviceManager->_globalDevInfo.product;
 
     dev_search_last_Index(_globalDeviceManager->db, &lastIndex, tabPower);       // 查询日志最大点
     dev_search_last_Index(_globalDeviceManager->db, &lastIndex3, tabPower3);      // 查询日志最大点
@@ -243,6 +243,11 @@ static void* power_thread(void* arg)
         memset(&_globalPowerWarningInfo, 0, sizeof(PowerWarningInfo));
         for (size_t i = 0; i <= _globalDeviceManager->brdMax; i++)
         {
+            if(h->quit)
+            {
+                break;
+            }
+
             if (_globalDeviceManager->pCtrlBoard[i].product_saddr == 0)
             {
                 continue;
@@ -314,8 +319,12 @@ static void* power_thread(void* arg)
         list_for_each_entry(_globalPowerMangerTemp, &_globalDeviceManager->_globalPowerManger.list, list)
         {
             //获取通道类型
+            if(h->quit)
+            {
+                break;
+            }
 
-            if (!(_globalPowerMangerTemp->product_saddr < ptotal->brdMax && _globalPowerMangerTemp->product_saddr > 0))
+            if (!(_globalPowerMangerTemp->product_saddr < _globalDeviceManager->brdMax && _globalPowerMangerTemp->product_saddr > 0))
             {
             	continue;
             }
@@ -988,7 +997,7 @@ static void* power_thread(void* arg)
                 }
                 memset(&_globalDeviceManager->_globalPowerManger._PowerInfo, 0, sizeof(PowerInfo));      
                 memset(&_pTreeACPowerMangerTemp->_PowerInfo, 0, sizeof(_globalPowerInfo._power_info));
-                for (size_t i = 0; i < ptotal->brdMax; i++)
+                for (size_t i = 0; i < _globalDeviceManager->brdMax; i++)
                 {
                     if (_globalDeviceManager->pCtrlBoard[i].product_saddr == 0 || _globalDeviceManager->pCtrlBoard[i].product_type != TREE_AC_TYPE)
                     {

+ 1 - 0
pro/src/common.c

@@ -25,6 +25,7 @@ UserInfo _GlobalUserInfoNew;
 char _GlobalUserToken[64];
 MenuAuthority _GlobalMenuAuthority;
 NTPManager _globalNTPManager;
+SNMPManager _globalSNMPManager;
 
 void printf_global_device_info(GlobalDeviceInfo* _globalDeviceInfo)
 {

+ 7 - 1
pro/src/common.h

@@ -42,6 +42,11 @@
 #define INI_FILE_BAK_NAME   "smartPDU_bak.ini"
 #define CHANGES_NAME        "changes.txt"
 
+#define SERV_CFG_NAME       "service.ini"
+#define SENSOR_CFG_NAME     "sensor.ini"
+#define ALARM_CFG_NAME      "alarm.ini"
+
+
 //高配表头串口定义-----------------------------------------------
 //控制板通信串口
 #define INTERL_MODBUS_PORT "/dev/ttyAS5"
@@ -428,7 +433,7 @@ typedef struct
     crypt_t             crypt;
     char                nmsIP[64];
 }SNMPManager;
-SNMPManager _globalSNMPManager;
+
 
 //分组管理
 typedef struct
@@ -1086,6 +1091,7 @@ extern UserInfo _GlobalUserInfoNew;////最近登录的信息
 extern char _GlobalUserToken[64];////最近登录的信息
 extern MenuAuthority _GlobalMenuAuthority;////角色菜单权限
 extern NTPManager _globalNTPManager;
+extern SNMPManager _globalSNMPManager;
 
 void initLogger(void);
 

File diff suppressed because it is too large
+ 860 - 314
pro/src/paras.c


+ 6 - 0
pro/src/paras.h

@@ -1,6 +1,12 @@
 #ifndef __PARAS_Hx__
 #define __PARAS_Hx__
 
+enum {
+    PARAS_IMPORT=0,
+    PARAS_EXPORT,
+};
+
+
 enum {
     PARAS_TYPE_DEV,
     PARAS_TYPE_NTP,