commCPU_SUPV/code/user/inc/comtrade_read.h
2025-04-30 16:24:29 +08:00

138 lines
3.0 KiB
C
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#ifndef COMTRADE_READ_123_INCLUDED
#define COMTRADE_READ_123_INCLUDED
#include "glbtypes.h"
#ifdef __cplusplus
extern "C" {
#endif
/************************************************************************/
#define COMTRADE_FILE_LIST_NUM_MAX 800
#define GZBG_FLTNUM_PRE "_FltNum"
#define COMTRADE_FILE_NUM_MAX 128
typedef struct
{
ST_UINT faultIndex;
ST_UCHAR cp56[8];
ST_CHAR fileExt[8];
} COMTRADE_FILE_NAME_INFO;
typedef struct
{
ST_CHAR fileName[128];
COMTRADE_FILE_NAME_INFO nameInfo;
} COMTRADE_FILE_NAME;
typedef struct
{
ST_INT fileNum;
COMTRADE_FILE_NAME fileBuf[COMTRADE_FILE_LIST_NUM_MAX];
} COMTRADE_FILE_LIST;
/************从远动管理机移植***********/
typedef struct
{
///装置命称
//LD名
//故障号
unsigned short fltNum;
unsigned char year; //年
unsigned char month; //月
unsigned char day; //日
unsigned char hour; //时
unsigned char minute; //分
unsigned char second; //秒
unsigned short millsecond; //毫秒
} GZBG_FILE_NAME;
typedef struct
{
int index; //通道索引号
char desc[64]; //通道识别符
char ph[3]; //通道相位特征
char unit[3]; //回路单元
char uu[32]; //通道单位
float a; //通道乘数
float b; //通道偏移值
float lag; //通道时延迟us
int min; //最小值
int max; //最大值
float priCoeff; //一次系数
float secCoeff; //二次系数
char kind; //是一次,还是二次
} CFG_FILE_ANALOG_INFO;
typedef struct
{
int index; //通道索引号
char ch_id[65]; //通道名
char ph[3]; //通道相位特征
char ccbm[65]; //被监视电路原件
char y; //通道正常状态
} CFG_FILE_DIGITAL_INFO;
typedef struct
{
int day;
int month;
int year;
int hour;
int minute;
int second;
int usec;
} CFG_FILE_GZ_TIME;
typedef struct
{
int callTime;
int chlNum;
int achlNum;
int dchlNum;
float frequence;
unsigned int pointNum; //采样点数
CFG_FILE_GZ_TIME recordTime;
int segmentNum; //根据采样点数,决定数据侦的传送段的个数
//模拟通道参数:最大 64 个模拟通道
CFG_FILE_ANALOG_INFO analog_chl[60];
//数字通道参数
CFG_FILE_DIGITAL_INFO digital_chl[32];
char DATFileDirName[128]; //录波数据文件路径名称
unsigned char checkSum; //整个文件的累加校验和
} CFG_FILE_CHLINFO;
/************从远动管理机移植 END***********/
ST_UINT comtrade_read_fault_index_max( ST_UCHAR deleteFileFlag , ST_UCHAR isGroup);//ghc 20250430 modified 区分故障和成组报告,序号分开
const COMTRADE_FILE_LIST * comtrade_read_file_list_order( const ST_CHAR *fileExt );
const ST_VOID * comtrade_read_fault_xml( ST_UINT16 faultIndex );
const ST_VOID * comtrade_read_fault_xml_build_order( ST_INT buildIndex, ST_INT *faultIndex );
ST_RET comtrade_read_fault_cfg( ST_UINT16 faultIndex, CFG_FILE_CHLINFO *cfgfileChlInfo );
ST_RET comtrade_read_fault_dat( const ST_CHAR *pathName, ST_INT analogNum, ST_INT digitalNum, ST_VOID *wave, ST_VOID *digitalVoid );
/************************************************************************/
#ifdef __cplusplus
}
#endif
#endif