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

297 lines
6.6 KiB
C++
Raw 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.

/**
@file DigStructDefine.h
@brief 数字量结构体定义,CDigProcess 类使用
@author 周正龙
*/
#pragma once
#include <string>
#include <vector>
#include <map>
#include "DataType.h"
#include "DataProcessDefine.h"
namespace kbd_service
{
struct SDigPointAll
{
char tag_name[64] ;
char description[128] ;
char device[64] ;
int seq_no ;
int location_id ;
int sub_system ;
char rtu_tag[64] ;
int is_control ;
char state_text_name[64] ;
int value_num ;
double gray ;
double contrast ;
int qcolor ;
int value ;
int status ;
int64 last_update_time ;
int value1 ;
int status1 ;
int64 last_change_time1 ;
int value2 ;
int status2 ;
int64 last_change_time2 ;
int value3 ;
int status3 ;
int64 last_change_time3 ;
int value4 ;
int status4 ;
int64 last_change_time4 ;
int value5 ;
int status5 ;
int64 last_change_time5 ;
int is_obj_alm_manner ; //对象告警方式
int alarm_priority ; //YX变为告警优先级
int alarm_priority_soe ; //SOE 告警优先级
char pic_name[64] ;
char sound_name1[32] ;
char sound_name2[32] ;
char sound_name3[32] ;
int alarm_delay_time ;
int input_delay_time ;
int is_water_alm ;
int is_ack_on_rtn ;
int del_act_on_ack ;
int is_never_alm_on_rtn ;
int region_id ;
char opt_handover_group[64] ;
int is_summary ;
int summary_value ;
int summary_status ;
int point_type ;
int point_class ;
int point_property ;
int point_sort ;
int dev_type ;
char point_tp_name[64] ;
int is_sample ;
int is_statistics ;
int sample_period ;
int is_alarm_freq ;
int alarm_freq ;
char alarm_freq_desc[64] ;
int is_alarm_time ;
int alarm_time ;
char alarm_time_desc[64] ;
int alarm_freq_range ;
char infer_name[64] ;
char camera_tag[64] ;
char camera_preset[64] ;
SDigPointAll()
{
memset(tag_name, 0, 64);
memset(description, 0, 128);
memset(device, 0, 64);
memset(rtu_tag, 0, 64);
memset(state_text_name, 0, 64);
memset(sound_name1, 0, 32);
memset(sound_name2, 0, 32);
memset(sound_name3, 0, 32);
memset(pic_name, 0, 64);
memset(opt_handover_group, 0, 64);
memset(point_tp_name, 0, 64);
memset(alarm_freq_desc, 0, 64);
memset(infer_name, 0, 64);
memset(camera_tag, 0, 64);
memset(camera_preset, 0, 64);
}
};
struct SDigMapToFes
{
char key_id_tag[128] ;
int location_id ;
int sub_system ;
int dev_type ;
char point_tp_name[64] ;
char rtu_tag[64] ;
int value_num ;
char dot_no1[48] ;
char dot_no2[48] ;
char dot_no3[48] ;
char dot_no4[48] ;
char dot_no5[48] ;
int is_filter_err ;
int is_filter_disturb ;
int disturb_time ;
int polarity ;
char description[128] ;
};
struct SDigValueStatus
{
int value;
int status;
SDigValueStatus()
{
value=0;
status=0;
}
};
struct SFesGroupDevSelect
{
char tag_name[64];
int domain_id;
SFesGroupDevSelect()
{
memset(tag_name, 0, 64);
domain_id = 0;
}
};
struct SDiBitChange
{
unsigned char use_flag;
int value;
int status;
int64 times;
int special_flag;
SDiBitChange()
{
use_flag = SHARE_BUF_NO_USE;
value = 0;
status = 0;
times = 0;
special_flag = 0;
}
};
struct SDiChange
{
int64 first_chg_time;
char key_id_tag[128];
int location_id;
int region_id;
char state_text_name[40];
int input_delay_time;
int value_num;
SDiBitChange di_bit_chg_array[MAX_DI_BIT_NUM];
SDiChange()
{
memset(key_id_tag, 0, 128);
memset(state_text_name, 0, 40);
}
};
struct SDiAlarm
{
char tag_name[64]; /* 标签名 */
char key_id_tag[128];/* KEY= appName.TagName */
int domain_id; /* 所属域 */
int location_id; /* 车站 */
int region_id; /*责任区 */
char opt_handover_group[64];/*权限组 */
char display_value[40];
int value_num;
int value;
int status;
int dev_type; /* 设备类型 */
char dev[64];
char dev_group[64]; /* 设备分组 */
char infer_name[64]; /* 报警推理名 */
int is_exist_rtn;
int order_no;
int alarm_priority;
int sec;
short msec;
int soe_sec;
short soe_msec;
int desc_flag;
int alarm_manner; /* 报警方式*/
int64 occur_time;
bool is_alm_not_ack;
int alarm_status;
int alarm_delay_time; /* 报警延时时间 */
int is_alarm_freq; /* 是否报警计次 */
int alarm_freq; /* 报警设定计次 */
int alarm_freq_range; /* 计次报警时间范围(秒) */
char alarm_freq_desc[64];/* 计次报警描述 */
int is_alarm_time; /* 是否报警计时 */
int64 alarm_time; /* 设定报警计时M秒 */
char alarm_time_desc[64];/* 计时报警描述 */
int is_water_alm; /* 是否告警流水账 */
int is_ack_on_rtn; /* 是否返回时自动确认报警 */
int del_act_on_ack; /* 确认报警后删除动作 */
int is_never_alm_on_rtn;
char pic_name[64]; /*报警关联画面名称*/
SDiAlarm()
{
memset(tag_name, 0, 64);
memset(key_id_tag, 0, 128);
memset(dev, 0, 64);
memset(dev_group, 0, 64);
memset(pic_name, 0, 64);
status = 0;
}
};
struct SAlarmFreq
{
int now_alarm_freq;
SDiAlarm alarm_stru;
};
struct SUpdateDiInfo
{
char table_name[32];
char tag_name[64];
char column_name[16];
int value;
int status;
SUpdateDiInfo()
{
memset(table_name, 0, 32);
memset(tag_name, 0, 64);
memset(column_name, 0, 16);
value = 0;
status = 0;
}
};
struct SChangeDiInfo
{
char table_name[32];
char tag_name[64];
char column_name[16];
int nValue;
int nStatus;
int64 lTimes;
SChangeDiInfo()
{
memset(table_name,0,32);
memset(tag_name,0,64);
memset(column_name,0,16);
nValue = 0;
nStatus = 0;
lTimes = 0;
}
};
//digital defalult alarm status setting;
struct SAlarmStatusDigSet
{
int point_class;
int point_type;
int alm_status_change;
int alm_status_soe;
SAlarmStatusDigSet()
{
point_class=0;
point_type=0;
alm_status_change=0;
alm_status_soe=0;
}
};
}