rdbapi 5.1.1.9 实时数据库C接口 for windows/Linux |

载入中...
搜索中...
未找到
rdbdef.h
浏览该文件的文档.
1
10#ifndef RDBDEF_H
11#define RDBDEF_H
12
13 typedef char T_I8;
14 typedef unsigned char T_U8;
15
16 typedef short int T_I16;
17 typedef unsigned short int T_U16;
18
19 typedef int T_I32;
20 typedef unsigned int T_U32;
21
22 typedef long long T_I64;
23 typedef unsigned long long T_U64;
24
25 typedef float T_F32;
26 typedef double T_F64;
27
28 typedef T_I64 T_TIME;
29
30//数据类型
31#define DT_VOID 0
32#define DT_DIGITAL 1
33#define DT_INT32 2
34#define DT_FLOAT32 3
35#define DT_INT64 4
36#define DT_FLOAT64 5
37#define DT_STRING 6
38#define DT_OBJECT 7
39
40//标签分类
41#define TGCLS_DEC 0
42#define TGCLS_DEFINE 1
43#define TGCLS_PRESET 2
44#define TGCLS_CURVE 3
45#define TGCLS_SYSTAG 4
46
47//压缩方式
48#define TA_COMPNO 0
49#define TA_COMPPER 1
50#define TA_COMPVAL 2
51#define TA_COMPTIMER 3
52#define TA_COMPEXTIMER 4
53
54//数据质量
55#define QA_OK 0
56#define QA_SHUTDOWN 1
57#define QA_ERRDATA 2
58#define QA_NOTAG 3
59#define QA_ERRTIME 4
60#define QA_MANUAL 5
61
62//权限定义
63#define OPT_POW_READ 0x01
64#define OPT_POW_WRITE 0x02
65#define OPT_POW_WTAG 0x04
66#define OPT_POW_MAN 0x08
67#define OPT_POW_CTRL 0x10
68
69//标签导入策略,某位有效表示需要修改该项
70#define TAG_MASK_DES 0x0001
71#define TAG_MASK_UNIT 0x0002
72#define TAG_MASK_COMPEXC 0x0008
73#define TAG_MASK_CLASS 0x0010
74#define TAG_MASK_ARCHIVE 0x0020
75#define TAG_MASK_VDIGITS 0x0040
76#define TAG_MASK_STEP 0x0080
77#define TAG_MASK_LIMIT 0x0100
78#define TAG_MASK_BKSYN 0x0200
79#define TAG_MASK_ALARM 0x0400
80
81//标签导入结果
82#define TAGIN_NOTMODIFY 0
83#define TAGIN_MODIFY 1
84#define TAGIN_ADD 2
85
86//rdb_valgetsection中参数nflag的定义
87#define SECTION_INSERT 0
88#define SECTION_AFTER 1
89#define SECTION_BEFORE (-1)
90
91//标签越限配置和越限快照读取中cerr定义的值
92#define LIMIT_LOW 1
93#define LIMIT_HIGH 2
94#define LIMIT_LOWLOW 4
95#define LIMIT_HIGHHIGH 8
96
100 struct rec_tag
101{
102 T_U32 uid;
103
104 T_I8 cdatatype;
105 T_I8 ctagtype;
106 T_I8 ccomptype;
107 T_I8 cres;
108
109 T_F32 fcompval;
110 T_I8 sname[80];
111 T_I8 sdes[80];
112 T_I8 sunit[16];
113
114 T_I8 cdigits;
115 T_I8 cclass;
116 T_I8 cstep;
117 T_I8 carchive;
118
119 T_F32 fdnval;
120 T_F32 fupval;
121
122 T_F32 fexcdev;
123 T_I16 snexcmin;
124 T_I16 snexcmax;
125
126 T_I16 sncompmin;
127 T_I16 sncompmax;
128
129 T_I32 alarmtype;
130 float alarm_llv;
131 float alarm_lv;
132 float alarm_hv;
133 float alarm_hhv;
134
135 T_U8 sres[24];
136}; //sizeof() = 256
137
138
142 struct rec_val
143{
144 T_TIME time;
145 union
146 {
147 T_I32 i32;
148 T_F32 f32;
149 T_I64 i64;
150 T_F64 f64;
151 T_U64 u64;
152 };
153 T_I8 cvt;
154 T_I8 cqa;
155 T_I8 cerr;
156 T_I8 cres;
157 T_U32 unres;
158};//sizeof() = 24
159
163 struct rec_tagval
164{
165 char sname[80];
166 rec_val val;
167}; // sizeof = 104
168
169#define MAX_OBJ_LEN 1000
170
174 struct rec_obj {
175 T_TIME time;
176
177 T_U32 uobjtype;
178 T_U32 ures;
179
180 T_I8 cvt;
181 T_I8 cqa;
182 T_I8 cerr;
183 T_I8 cres;
184
185 T_U16 usres;
186 T_U16 uslen;
187
188 T_I8 sdata[MAX_OBJ_LEN];
189}; //sizeof() = 1024
190
194 struct rec_tagobj
195{
196 char sname[80];
197 rec_obj var;
198}; //sizeof() = 1104
199
203 struct rec_operator
204{
205 char sname[16];
206 T_U8 smd5pass[16];
207 char sactor[16];
208 char sdes[80];
209 T_I32 lbactive;
210 char nomodpsw;
211 char sres[27];
212}; //sizeof = 160
213
214
218 struct rec_actor
219{
220 char sname[16];
221 char sdes[80];
222 T_U32 dwpower;
223 char sres[28];
224}; //sizeof = 128
225
229 struct rec_soe
230{
231 T_TIME time;
232 T_U32 uautokey;
233 T_I32 type;
234 T_I16 argtype;
235 T_U16 arglen;
236 T_I32 level;
237
238 char source[80];
239 char sdes[160];
240 char sarg[240];
241 char cflag;
242 char cstatus;
243 char res[6];
244}; // sizeof() = 512
245
249 typedef struct tag_ext {
250 uint32_t upos;
251 int status;
252 char tagname[80];
253 char des_ll[80];
254 char des_l[80];
255 char des_h[80];
256 char des_hh[80];
257 int level_ll;
258 int level_l;
259 int level_h;
260 int level_hh;
261 char rdes_ll[80];
262 char rdes_l[80];
263 char rdes_h[80];
264 char rdes_hh[80];
265}rec_tagext, *prectagext;
266
267#endif //RDBDEF_H
T_U8
unsigned char T_U8
1字节无符号整数
Definition rdbdef.h:14
T_I8
char T_I8
1字节整数
Definition rdbdef.h:13
T_U16
unsigned short int T_U16
2字节无符号整数
Definition rdbdef.h:17
T_F64
double T_F64
8字节双精度浮点数
Definition rdbdef.h:26
MAX_OBJ_LEN
#define MAX_OBJ_LEN
最大对象数据字节数
Definition rdbdef.h:169
T_F32
float T_F32
4字节浮点数
Definition rdbdef.h:25
rec_tagext
struct tag_ext rec_tagext
标签扩展属性,其中字符串为GBK编码
T_U64
unsigned long long T_U64
8字节无符号整数
Definition rdbdef.h:23
T_I16
short int T_I16
2字节整数
Definition rdbdef.h:16
T_I64
long long T_I64
8字节整数
Definition rdbdef.h:22
prectagext
struct tag_ext * prectagext
标签扩展属性
T_TIME
T_I64 T_TIME
64位时标，精确到100毫秒，UTC/GMT(国际时间)自1970-1-1开始的100毫秒数 = time_t * 10
Definition rdbdef.h:28
T_U32
unsigned int T_U32
4字节无符号整数
Definition rdbdef.h:20
T_I32
int T_I32
4字节整数
Definition rdbdef.h:19
rec_actor
角色记录,其中字符串为GBK编码
Definition rdbdef.h:219
rec_actor::sname
char sname[16]
角色名
Definition rdbdef.h:220
rec_actor::dwpower
T_U32 dwpower
权限
Definition rdbdef.h:222
rec_actor::sdes
char sdes[80]
描述
Definition rdbdef.h:221
rec_actor::sres
char sres[28]
保留
Definition rdbdef.h:223
rec_obj
对象数据记录
Definition rdbdef.h:174
rec_obj::uobjtype
T_U32 uobjtype
类型,用户自定义,可当检索条件
Definition rdbdef.h:177
rec_obj::uslen
T_U16 uslen
数据长度，即sdata的长度，如果是字符串，则不包含结束符0
Definition rdbdef.h:186
rec_obj::cerr
T_I8 cerr
错误码
Definition rdbdef.h:182
rec_obj::sdata
T_I8 sdata[MAX_OBJ_LEN]
对象数据
Definition rdbdef.h:188
rec_obj::cvt
T_I8 cvt
数据类型,DT_STRING,DT_BLOB
Definition rdbdef.h:180
rec_obj::time
T_TIME time
时标
Definition rdbdef.h:175
rec_obj::cres
T_I8 cres
保留
Definition rdbdef.h:183
rec_obj::cqa
T_I8 cqa
质量
Definition rdbdef.h:181
rec_obj::ures
T_U32 ures
以后扩展用,比如第2索引BATID
Definition rdbdef.h:178
rec_obj::usres
T_U16 usres
保留
Definition rdbdef.h:185
rec_operator
账号记录,其中字符串为GBK编码
Definition rdbdef.h:204
rec_operator::nomodpsw
char nomodpsw
禁止修改密码；1：禁止；0：容许
Definition rdbdef.h:210
rec_operator::sname
char sname[16]
用户名<=15字符
Definition rdbdef.h:205
rec_operator::lbactive
T_I32 lbactive
是否活动,0不活动，1活动
Definition rdbdef.h:209
rec_operator::sactor
char sactor[16]
角色名,内部表关联用
Definition rdbdef.h:207
rec_operator::smd5pass
T_U8 smd5pass[16]
二进制的MD5加密后的密码
Definition rdbdef.h:206
rec_operator::sdes
char sdes[80]
描述
Definition rdbdef.h:208
rec_operator::sres
char sres[27]
保留
Definition rdbdef.h:211
rec_soe
事件记录
Definition rdbdef.h:230
rec_soe::cstatus
char cstatus
SOE UPdate返回时用于指示是否更新,0表示更新成功，1表示不存在或更新失败
Definition rdbdef.h:242
rec_soe::sarg
char sarg[240]
事件参数。根据argtype和arglen填写。
Definition rdbdef.h:240
rec_soe::type
T_I32 type
事件类型,4字节有符号,(用户自定义,比如可定义越上限，越下限等)
Definition rdbdef.h:233
rec_soe::sdes
char sdes[160]
事件描述，0结束的字符串，最多存储159字节
Definition rdbdef.h:239
rec_soe::level
T_I32 level
事件级别使用
Definition rdbdef.h:236
rec_soe::cflag
char cflag
事件已经处理标识
Definition rdbdef.h:241
rec_soe::argtype
T_I16 argtype
事件参数格式，2字节带符号，<0 为基于字符串的格式，>0为基于2进制的格式。具体有用户定义,用于客户端解析参数。
Definition rdbdef.h:234
rec_soe::arglen
T_U16 arglen
参数长度(0-240)，基于字符串格式的长度不包括结尾的0。
Definition rdbdef.h:235
rec_soe::time
T_TIME time
GMT时标,从1970年1月1日开始的100毫秒数
Definition rdbdef.h:231
rec_soe::source
char source[80]
事件来源，0结束的字符串，最多存储79字符，可填写标签名或者其他内容
Definition rdbdef.h:238
rec_soe::uautokey
T_U32 uautokey
自动主键,解决时间相同的SOE事件主键冲突
Definition rdbdef.h:232
rec_soe::res
char res[6]
保留
Definition rdbdef.h:243
rec_tag
标签属性记录,其中字符串为GBK编码
Definition rdbdef.h:101
rec_tag::ctagtype
T_I8 ctagtype
标签类型,没有使用,填写TAGTYPE_NONE,可有客户端自定义。
Definition rdbdef.h:105
rec_tag::fupval
T_F32 fupval
上限
Definition rdbdef.h:120
rec_tag::cdatatype
T_I8 cdatatype
数据类型
Definition rdbdef.h:104
rec_tag::uid
T_U32 uid
标签ID
Definition rdbdef.h:102
rec_tag::alarm_lv
float alarm_lv
报警下限
Definition rdbdef.h:131
rec_tag::fcompval
T_F32 fcompval
压缩精度
Definition rdbdef.h:109
rec_tag::sname
T_I8 sname[80]
标签名
Definition rdbdef.h:110
rec_tag::sncompmin
T_I16 sncompmin
最小压缩时间间隔(单位秒)
Definition rdbdef.h:126
rec_tag::fdnval
T_F32 fdnval
下限
Definition rdbdef.h:119
rec_tag::carchive
T_I8 carchive
存盘,1存盘，0不存
Definition rdbdef.h:117
rec_tag::ccomptype
T_I8 ccomptype
压缩类型
Definition rdbdef.h:106
rec_tag::cstep
T_I8 cstep
梯形插值,1梯形，0线性
Definition rdbdef.h:116
rec_tag::sunit
T_I8 sunit[16]
工程单位
Definition rdbdef.h:112
rec_tag::cdigits
T_I8 cdigits
小数位数，-20 到 10 ; >0 小数位数，小于0，有效位数
Definition rdbdef.h:114
rec_tag::alarm_hv
float alarm_hv
报警上限
Definition rdbdef.h:132
rec_tag::alarm_llv
float alarm_llv
报警下下限
Definition rdbdef.h:130
rec_tag::cres
T_I8 cres
保留
Definition rdbdef.h:107
rec_tag::snexcmin
T_I16 snexcmin
最小列外偏差时间
Definition rdbdef.h:123
rec_tag::sres
T_U8 sres[24]
保留,清零
Definition rdbdef.h:135
rec_tag::alarm_hhv
float alarm_hhv
报警上上限
Definition rdbdef.h:133
rec_tag::alarmtype
T_I32 alarmtype
报警状态
Definition rdbdef.h:129
rec_tag::cclass
T_I8 cclass
分类,默认TGCLS_DEC
Definition rdbdef.h:115
rec_tag::sdes
T_I8 sdes[80]
描述
Definition rdbdef.h:111
rec_tag::fexcdev
T_F32 fexcdev
列外偏差,如果是百分比，则和百分比压缩意义相同
Definition rdbdef.h:122
rec_tag::sncompmax
T_I16 sncompmax
最大压缩时间间隔(单位秒)
Definition rdbdef.h:127
rec_tag::snexcmax
T_I16 snexcmax
最大列外偏差时间
Definition rdbdef.h:124
rec_tagobj
对象标签数据记录
Definition rdbdef.h:195
rec_tagobj::var
rec_obj var
对象记录
Definition rdbdef.h:197
rec_tagobj::sname
char sname[80]
标签名
Definition rdbdef.h:196
rec_tagval
值标签数据记录,其中字符串为GBK编码
Definition rdbdef.h:164
rec_tagval::val
rec_val val
值记录
Definition rdbdef.h:166
rec_tagval::sname
char sname[80]
标签名
Definition rdbdef.h:165
rec_val
值数据记录
Definition rdbdef.h:143
rec_val::i32
T_I32 i32
存储didital、int32
Definition rdbdef.h:147
rec_val::cerr
T_I8 cerr
错误码
Definition rdbdef.h:155
rec_val::f64
T_F64 f64
存储float64
Definition rdbdef.h:150
rec_val::unres
T_U32 unres
保留
Definition rdbdef.h:157
rec_val::cvt
T_I8 cvt
类型
Definition rdbdef.h:153
rec_val::f32
T_F32 f32
存储float32
Definition rdbdef.h:148
rec_val::time
T_TIME time
GMT时标,从1970年1月1日开始的100毫秒数
Definition rdbdef.h:144
rec_val::i64
T_I64 i64
存储int64
Definition rdbdef.h:149
rec_val::cres
T_I8 cres
保留,读取越限标签快照时，cres为越限状态,LIMIT_LOW,LIMIT_HIGH,LIMIT_LOWLOW,LIMIT_HIGHHIGH
Definition rdbdef.h:156
rec_val::u64
T_U64 u64
存储64位整数
Definition rdbdef.h:151
rec_val::cqa
T_I8 cqa
质量
Definition rdbdef.h:154
tag_ext
标签扩展属性,其中字符串为GBK编码
Definition rdbdef.h:249
tag_ext::des_l
char des_l[80]
低报警描述
Definition rdbdef.h:254
tag_ext::level_h
int level_h
高限级别
Definition rdbdef.h:259
tag_ext::des_hh
char des_hh[80]
高高报警描述
Definition rdbdef.h:256
tag_ext::rdes_ll
char rdes_ll[80]
低低报警恢复描述
Definition rdbdef.h:261
tag_ext::tagname
char tagname[80]
标签名
Definition rdbdef.h:252
tag_ext::des_h
char des_h[80]
高报警描述
Definition rdbdef.h:255
tag_ext::status
int status
状态码，或者返回错误码
Definition rdbdef.h:251
tag_ext::level_l
int level_l
低限级别
Definition rdbdef.h:258
tag_ext::rdes_l
char rdes_l[80]
低报警恢复描述
Definition rdbdef.h:262
tag_ext::des_ll
char des_ll[80]
低低报警描述
Definition rdbdef.h:253
tag_ext::level_ll
int level_ll
低低限级别
Definition rdbdef.h:257
tag_ext::rdes_hh
char rdes_hh[80]
高高报警恢复描述
Definition rdbdef.h:264
tag_ext::rdes_h
char rdes_h[80]
高报警恢复描述
Definition rdbdef.h:263
tag_ext::upos
uint32_t upos
保留
Definition rdbdef.h:250
tag_ext::level_hh
int level_hh
高高限级别
Definition rdbdef.h:260