401 lines
13 KiB
C
Raw Normal View History

2025-03-12 11:08:50 +08:00

/******************************************************************************//**
* @file SysInfoImp.h
* @brief 访
* @author yikenan
* @version 1.0
* @date
**********************************************************************************/
#pragma once
#include "pub_sysinfo_api/SysInfoApi.h"
#include "SysInfoData.h"
2025-03-12 14:17:01 +08:00
namespace iot_public
2025-03-12 11:08:50 +08:00
{
class CSysInfoImp : public CSysInfoInterface
{
public:
CSysInfoImp();
virtual ~CSysInfoImp();
bool loadData();
/**
@brief 使
@param
@return
@retval
*/
void printAllData()override;
/**
* @brief
*/
bool reloadAllData()override;
/**
@brief
@param std::vector<SAppInfo> & vecAppInfo
@return
@retval
*/
int getAllAppInfo(std::vector<SAppInfo> &vecAppInfo)override;
/**
@brief
@param std::vector<SDomainInfo> & vecDomainInfo
@return
@retval
*/
int getAllDomainInfo(std::vector<SDomainInfo> &vecDomainInfo)override;
/**
@brief
@param std::vector<SLocationInfo> & vecLocationInfo
@return
@retval
*/
int getAllLocationInfo(std::vector<SLocationInfo> &vecLocationInfo)override;
/**
@brief
@param std::vector<SNodeInfo> & vecNodeInfo
@return
@retval
*/
int getAllNodeInfo(std::vector<SNodeInfo> &vecNodeInfo)override;
/**
@brief
@param std::vector<SSubsystemInfo> & vecSubsystemInfo
@return
@retval
*/
int getAllSubsystemInfo(std::vector<SSubsystemInfo> &vecSubsystemInfo)override;
/**
@brief
@param int nDomainId
@param int nAppId
@param SAppDeploy & stAppDeploy
@return
@retval
*/
int getAppDeployById(int nDomainId, int nAppId, SAppDeploy &stAppDeploy)override;
/**
@brief
@param const std::string & strDomainName
@param const std::string & strAppName
@param SAppDeploy & stAppDeploy
@return
@retval
*/
int getAppDeployByName(const std::string &strDomainName, const std::string &strAppName, SAppDeploy &stAppDeploy)override;
/**
@brief
@param std::string strNodeName
@param std::vector<SAppDeploy> & vecAppDeploy
@return
@retval
*/
int getAppDeployByNodeName(const std::string &strNodeName, std::vector<SAppDeploy> &vecAppDeploy)override;
//virtual int getSubsystemListByNodeId(int nNodeId,std::vector<SSubsystemInfo> &vecSubsystemInfo) = 0;
/**
@brief ID获取应用信息
@param int nAppId ID
@param SAppInfo & stAppInfo
@return
@retval
*/
int getAppInfoById(int nAppId, SAppInfo &stAppInfo)override;
/**
@brief
@param const std::string & strAppName
@param SAppInfo & stAppInfo
@return
@retval
*/
int getAppInfoByName(const std::string &strAppName, SAppInfo &stAppInfo)override;
/**
@brief
@param int nSubsystemId ID
@param SAppInfo &stAppInfo
@return
@retval
*/
int getAppInfoBySubsystemId(int nSubsystemId, SAppInfo &stAppInfo)override;
/**
@brief
@param const std::string & strSubsystemName
@param SAppInfo &stAppInfo
@return
@retval
*/
int getAppInfoBySubsystemName(const std::string &strSubsystemName, SAppInfo &stAppInfo)override;
/**
@brief
@param SDomainInfo & stDomainInfo
@return
@retval
*/
int getCenterDomainInfo(SDomainInfo &stDomainInfo)override;
/**
@brief
@param int nDomainId
@param SDatabaseInfo & stFirstConnect
@param std::vector<SDatabaseInfo> & vecLocalDBInfo
@param std::vector<SDatabaseInfo> & vecRemoteDBInfo
@return
@retval
*/
int getDBInfoByDomainId(int nDomainId, SDatabaseInfo &stFirstConnect, std::vector<SDatabaseInfo> &vecLocalDBInfo, std::vector<SDatabaseInfo> &vecRemoteDBInfo)override;
/**
@brief
@param const std::string & strNodeName
@param SDatabaseInfo & stDBInfo
@return
@retval
*/
int getDBInfoByNodeName(const std::string &strNodeName, SDatabaseInfo &stDBInfo)override;
/**
@brief
@param int nDomainId
@param SDomainInfo & stDomainInfo
@return
@retval
*/
int getDomainInfoById(int nDomainId, SDomainInfo &stDomainInfo)override;
/**
@brief
@param const std::string & strDomainName
@param SDomainInfo & stDomainInfo
@return
@retval
*/
int getDomainInfoByName(const std::string &strDomainName, SDomainInfo &stDomainInfo)override;
/**
@brief
@param const std::string strNodeName
@param SDomainInfo & stDomainInfo
@return
@retval
*/
int getDomainInfoByNodeName(const std::string strNodeName, SDomainInfo &stDomainInfo)override;
/**
@brief
@param std::vector<SAppDeploy> & vecAppDeploy
@return
@retval
*/
int getLocalAppDeploy(std::vector<SAppDeploy> &vecAppDeploy)override;
/**
@brief
@param SDatabaseInfo & stFirstConnect
@param std::vector<SDatabaseInfo> & vecLocalDBInfo
@param std::vector<SDatabaseInfo> & vecRemoteDBInfo
@return
@retval
*/
int getLocalDBInfo(SDatabaseInfo &stFirstConnect, std::vector<SDatabaseInfo> &vecLocalDBInfo, std::vector<SDatabaseInfo> &vecRemoteDBInfo)override;
/**
@brief
@param SNodeInfo & stNodeInfo
@return
@retval
*/
int getLocalNodeInfo(SNodeInfo &stNodeInfo)override;
/**
@brief ID获取本进程运行所需的相关参数
@param int nAppId ID
@param SRunAppInfo & stRunAppInfo
@return
@retval
*/
int getLocalRunAppInfoById(int nAppId, SRunAppInfo &stRunAppInfo)override;
/**
@brief
@param const std::string & strSubsystemName
@param SRunAppInfo & stRunAppInfo
@return
@retval
*/
int getLocalRunAppInfoByName(const std::string &strAppName, SRunAppInfo &stRunAppInfo)override;
//----virtual int getAllDBDeploy(std::vector<SDBDeploy> &vecDBDeploy) = 0;
/**
@brief
@param int nLocationId
@param SLocationInfo & stLocationInfo
@return
@retval
*/
int getLocationInfoById(int nLocationId, SLocationInfo &stLocationInfo)override;
/**
@brief
@param const std::string & strLocationName
@param SLocationInfo & stLocationInfo
@return
@retval
*/
int getLocationInfoByName(const std::string &strLocationName, SLocationInfo &stLocationInfo)override;
/**
@brief ID获取该域下所有的位置信息
@param int nDomainId
@param std::vector<SLocationInfo> & vecLocationInfo
@return
@retval
*/
int getLocationListByDomainId(int nDomainId, std::vector<SLocationInfo> &vecLocationInfo)override;
/**
@brief
@param const std::string strNodeName
@param SNodeInfo & stNodeInfo
@return
@retval
*/
int getNodeInfoByName(const std::string strNodeName, SNodeInfo &stNodeInfo)override;
/**
@brief
@param int nDomainId
@param std::vector<SNodeInfo> & vecNodeInfo
@return
@retval
*/
int getNodeListByDomainId(int nDomainId, std::vector<SNodeInfo> &vecNodeInfo)override;
/**
@brief
@param const std::string & strDomainName
@param std::vector<SNodeInfo> & vecNodeInfo
@return
@retval
*/
int getNodeListByDomainName(const std::string &strDomainName, std::vector<SNodeInfo> &vecNodeInfo)override;
/**
@brief ID获取专业信息
@param int nSubsystemId ID
@param SSubsystemInfo & stSubsystemInfo
@return
@retval
*/
int getSubsystemInfoById(int nSubsystemId, SSubsystemInfo &stSubsystemInfo)override;
/**
@brief
@param const std::string & strSubsystemName
@param SSubsystemInfo & stSubsystemInfo
@return
@retval
*/
int getSubsystemInfoByName(const std::string &strSubsystemName, SSubsystemInfo &stSubsystemInfo)override;
/**
@brief
@param int nAppId ID
@param std::vector<SSubsystemInfo> & vecSubsystemInfo
@return
@retval
*/
int getSubsystemListByAppId(int nAppId, std::vector<SSubsystemInfo> &vecSubsystemInfo)override;
/**
@brief
@param const std::string & strAppName
@param std::vector<SSubsystemInfo> & vecSubsystemInfo
@return
@retval
*/
int getSubsystemListByAppName(const std::string &strAppName, std::vector<SSubsystemInfo> &vecSubsystemInfo)override;
/**
@brief
@param SProcessInfoMAP & mapProcInfo
@return kbdSuccess
@retval
*/
int getLocalProcInfoList(SProcessInfoMAP &mapProcInfo)override;
/**
@brief
@param int nAppId ID
@param SProcessInfoMAP & mapProcInfo
@return kbdSuccess
@retval
*/
int getProcInfoListByAppId(int nAppId, SProcessInfoMAP &mapProcInfo)override;
/**
@brief 线
@param vecMbRelayInfo:
@return kbdSuccess
@retval
*/
int getAllMbRelayInfo(std::vector<SMbRelayInfo> &vecMbRelayInfo)override;
/**
@brief ID获取消息总线转发信息
@param vecMbRelayInfo
@return kbdSuccess
@retval
*/
int getMbRelayInfoBySrcDomainID(int nSrcDomainID,
std::vector<SMbRelayInfo> &vecMbRelayInfo)override;
/**
@brief ID获取消息总线转发信息
@param vecMbRelayInfo
@return kbdSuccess
@retval
*/
int getMbRelayInfoByDstDomainID(int nDstDomainID,
std::vector<SMbRelayInfo> &vecMbRelayInfo)override;
/**
@brief ID获取消息总线转发信息
@param objMbRelayInfo
@return kbdSuccess
@retval
*/
int getMbRelayInfoBySrcAndDstDomainID(int nSrcDomainID, int nDstDomainID,
SMbRelayInfo &stMbRelayInfo)override;
/**
* @brief getUniqueIdOfNodeInfo id
* @return CRC32值
*/
unsigned int getUniqueIdOfNodeInfo();
///////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////
private:
CSysInfoData m_objData;
};
2025-03-12 14:17:01 +08:00
} //namespace iot_public
2025-03-12 11:08:50 +08:00