2025-03-12 11:08:50 +08:00
|
|
|
|
/**
|
|
|
|
|
|
@file DigStructDefine.h
|
|
|
|
|
|
@brief 数字量结构体定义,CDigProcess 类使用
|
|
|
|
|
|
@author 周正龙
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
|
|
#include <string>
|
|
|
|
|
|
#include <vector>
|
|
|
|
|
|
#include <map>
|
|
|
|
|
|
#include "DataType.h"
|
|
|
|
|
|
#include "DataProcessDefine.h"
|
|
|
|
|
|
|
2025-03-12 14:17:01 +08:00
|
|
|
|
namespace iot_service
|
2025-03-12 11:08:50 +08:00
|
|
|
|
{
|
|
|
|
|
|
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;
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|