XNSim/XNMonitorServer/XNMonitorInterface.h

246 lines
7.8 KiB
C
Raw Normal View History

/**
* @file XNMonitorInterface.h
* @brief
*/
#pragma once
#include "TypeDefine.h"
#include "XNMonitorServer_global.h"
#include <cstdint>
#ifdef __cplusplus
extern "C"
{
#endif
/**
* @brief DDS监控服务器
* @param domainId ID
* @param domainIdLen ID长度
* @param errorMsg
* @param errorMsgSize
* @return 0: , -1:
*/
int XNMONITORSERVER_EXPORT XN_Initialize(const char *domainId, int domainIdLen, char *errorMsg,
int errorMsgSize);
/**
* @brief DDS监控服务器
*/
void XNMONITORSERVER_EXPORT XN_Cleanup();
//******************** 系统信息监控 *********************
/**
* @brief
* @param errorMsg
* @param errorMsgSize
* @return 0: , -1:
*/
int XNMONITORSERVER_EXPORT XN_StartMonitorSystemInfo(char *errorMsg, int errorMsgSize);
/**
* @brief
* @param infoMsg
* @param infoMsgSize
* @return 0: , -1:
*/
int XNMONITORSERVER_EXPORT XN_GetSystemInfo(char *infoMsg, int infoMsgSize);
/**
* @brief
*/
void XNMONITORSERVER_EXPORT XN_StopMonitorSystemInfo();
//******************** 线程信息监控 *********************
/**
* @brief 线
* @param infoMsg 线
* @param infoMsgSize 线
* @return 0: , -1:
*/
int XNMONITORSERVER_EXPORT XN_GetAllThreadInfo(char *infoMsg, int infoMsgSize);
//******************** 模型信息监控 *********************
2025-05-14 20:18:44 +08:00
/**
* @brief
* @param errorMsg
* @param errorMsgSize
* @return 0: , -1:
*/
2025-05-14 20:18:44 +08:00
int XNMONITORSERVER_EXPORT XN_StartMonitorModelInfo(char *errorMsg, int errorMsgSize);
/**
* @brief
* @param infoMsg
* @param infoMsgSize
* @return 0: , -1:
*/
2025-05-14 20:18:44 +08:00
int XNMONITORSERVER_EXPORT XN_GetModelInfo(char *infoMsg, int infoMsgSize);
/**
* @brief
*/
2025-05-14 20:18:44 +08:00
void XNMONITORSERVER_EXPORT XN_StopMonitorModelInfo();
//******************** 引擎控制 *********************
/**
* @brief
* @param errorMsg
* @param errorMsgSize
* @return 0: , -1:
*/
int XNMONITORSERVER_EXPORT XN_InitializeEngineControl(char *errorMsg, int errorMsgSize);
/**
* @brief
* @param errorMsg
* @param errorMsgSize
*/
void XNMONITORSERVER_EXPORT XN_PauseEngine(char *errorMsg, int errorMsgSize);
/**
* @brief
* @param errorMsg
* @param errorMsgSize
* @return 0: , -1:
*/
void XNMONITORSERVER_EXPORT XN_ResumeEngine(char *errorMsg, int errorMsgSize);
/**
* @brief
* @param errorMsg
* @param errorMsgSize
*/
void XNMONITORSERVER_EXPORT XN_StopEngine(char *errorMsg, int errorMsgSize);
//******************** 数据监控 *********************
/**
* @brief
* @param structName
* @param structNameLen
* @param errorMsg
* @param errorMsgSize
* @return 0: , -1:
*/
int XNMONITORSERVER_EXPORT XN_StartDataMonitor(const char *structName, const int structNameLen,
char *errorMsg, int errorMsgSize);
/**
* @brief
* @param structName
* @param structNameLen
* @param errorMsg
* @param errorMsgSize
*/
void XNMONITORSERVER_EXPORT XN_StopDataMonitor(const char *structName, const int structNameLen,
char *errorMsg, int errorMsgSize);
//******************** 数据注入 *********************
/**
* @brief
* @param structName
* @param structNameLen
* @param interfaceName JSON数组字符串
* @param interfaceNameLen JSON数组字符串长度
* @param data JSON字符串
* @param dataLen JSON字符串长度
* @param infoMsg
* @param infoMsgSize
* @return 0: , -1:
*/
int XNMONITORSERVER_EXPORT XN_GetDataMonitorInfo(const char *structName,
const int structNameLen,
const char *interfaceName,
const int interfaceNameLen, char *data,
int dataLen, char *infoMsg, int infoMsgSize);
/**
* @brief
* @param structName
* @param structNameLen
* @param interfaceNameAndData JSON字符串
* @param interfaceNameAndDataLen JSON字符串长度
* @param infoMsg
* @param infoMsgSize
* @return 0: , -1:
*/
int XNMONITORSERVER_EXPORT XN_InjectDataInterface(const char *structName,
const int structNameLen,
const char *interfaceNameAndData,
const int interfaceNameAndDataLen,
char *infoMsg, int infoMsgSize);
/**
* @brief
* @param structName
* @param structNameLen
* @param interfaceNameAndData JSON字符串
* @param interfaceNameAndDataLen JSON字符串长度
* @param frequency
* @param infoMsg
* @param infoMsgSize
* @return 0: , -1:
*/
int XNMONITORSERVER_EXPORT XN_StartInjectContinuous(
const char *structName, const int structNameLen, const char *interfaceNameAndData,
const int interfaceNameAndDataLen, double frequency, char *infoMsg, int infoMsgSize);
/**
* @brief
* @param structName
* @param structNameLen
* @param infoMsg
* @param infoMsgSize
* @return 0: , -1:
*/
int XNMONITORSERVER_EXPORT XN_StopInjectContinuous(const char *structName,
const int structNameLen, char *infoMsg,
int infoMsgSize);
//******************** csv数据注入 *********************
/**
* @brief csv文件中注入数据接口
* @param structName
* @param structNameLen
* @param csvFilePath csv文件路径
* @param csvFilePathLen csv文件路径长度
* @param injectTimes
* @param infoMsg
* @param infoMsgSize
* @return 0: , -1:
*/
int XNMONITORSERVER_EXPORT XN_InjectDataInterfaceFromCsv(
const char *structName, const int structNameLen, const char *csvFilePath,
const int csvFilePathLen, int injectTimes, char *infoMsg, int infoMsgSize);
//******************** csv数据采集 *********************
/**
* @brief csv文件接口
* @param structName
* @param structNameLen
* @param interfaceName JSON数组字符串
* @param interfaceNameLen JSON数组字符串长度
* @param csvFilePath csv文件路径
* @param csvFilePathLen csv文件路径长度
* @param frequency
* @param infoMsg
* @param infoMsgSize
* @return 0: , -1:
*/
int XNMONITORSERVER_EXPORT XN_StartCollectData(const char *structName, const int structNameLen,
const char *interfaceName,
const int interfaceNameLen,
const char *csvFilePath,
const int csvFilePathLen, char *infoMsg,
int infoMsgSize);
#ifdef __cplusplus
}
#endif