mirror of
https://github.com/emqx/neuron.git
synced 2026-10-27 04:19:50 +08:00
uint8 array
This commit is contained in:
@@ -983,6 +983,12 @@ static inline void neu_tag_value_to_json(neu_resp_tag_value_meta_t *tag_value,
|
||||
tag_value->value.value.i8s.length;
|
||||
tag_json->value.val_array_int8.i8s = tag_value->value.value.i8s.i8s;
|
||||
break;
|
||||
case NEU_TYPE_ARRAY_UINT8:
|
||||
tag_json->t = NEU_JSON_ARRAY_UINT8;
|
||||
tag_json->value.val_array_uint8.length =
|
||||
tag_value->value.value.u8s.length;
|
||||
tag_json->value.val_array_uint8.u8s = tag_value->value.value.u8s.u8s;
|
||||
break;
|
||||
case NEU_TYPE_ARRAY_INT16:
|
||||
tag_json->t = NEU_JSON_ARRAY_INT16;
|
||||
tag_json->value.val_array_int16.length =
|
||||
@@ -1168,6 +1174,12 @@ neu_tag_value_to_json_paginate(neu_resp_tag_value_meta_paginate_t *tag_value,
|
||||
tag_value->value.value.i8s.length;
|
||||
tag_json->value.val_array_int8.i8s = tag_value->value.value.i8s.i8s;
|
||||
break;
|
||||
case NEU_TYPE_ARRAY_UINT8:
|
||||
tag_json->t = NEU_JSON_ARRAY_UINT8;
|
||||
tag_json->value.val_array_uint8.length =
|
||||
tag_value->value.value.u8s.length;
|
||||
tag_json->value.val_array_uint8.u8s = tag_value->value.value.u8s.u8s;
|
||||
break;
|
||||
case NEU_TYPE_ARRAY_INT16:
|
||||
tag_json->t = NEU_JSON_ARRAY_INT16;
|
||||
tag_json->value.val_array_int16.length =
|
||||
|
||||
+18
-9
@@ -54,15 +54,16 @@ typedef enum {
|
||||
NEU_TYPE_DATA_AND_TIME = 21,
|
||||
NEU_TYPE_ARRAY_CHAR = 22,
|
||||
NEU_TYPE_ARRAY_INT8 = 23,
|
||||
NEU_TYPE_ARRAY_INT16 = 24,
|
||||
NEU_TYPE_ARRAY_UINT16 = 25,
|
||||
NEU_TYPE_ARRAY_INT32 = 26,
|
||||
NEU_TYPE_ARRAY_UINT32 = 27,
|
||||
NEU_TYPE_ARRAY_INT64 = 28,
|
||||
NEU_TYPE_ARRAY_UINT64 = 29,
|
||||
NEU_TYPE_ARRAY_FLOAT = 30,
|
||||
NEU_TYPE_ARRAY_DOUBLE = 31,
|
||||
NEU_TYPE_ARRAY_BOOL = 32,
|
||||
NEU_TYPE_ARRAY_UINT8 = 24,
|
||||
NEU_TYPE_ARRAY_INT16 = 25,
|
||||
NEU_TYPE_ARRAY_UINT16 = 26,
|
||||
NEU_TYPE_ARRAY_INT32 = 27,
|
||||
NEU_TYPE_ARRAY_UINT32 = 28,
|
||||
NEU_TYPE_ARRAY_INT64 = 29,
|
||||
NEU_TYPE_ARRAY_UINT64 = 30,
|
||||
NEU_TYPE_ARRAY_FLOAT = 31,
|
||||
NEU_TYPE_ARRAY_DOUBLE = 32,
|
||||
NEU_TYPE_ARRAY_BOOL = 33,
|
||||
} neu_type_e;
|
||||
|
||||
inline static const char *neu_type_string(neu_type_e type)
|
||||
@@ -114,6 +115,8 @@ inline static const char *neu_type_string(neu_type_e type)
|
||||
return "NEU_TYPE_ARRAY_CHAR";
|
||||
case NEU_TYPE_ARRAY_INT8:
|
||||
return "NEU_TYPE_ARRAY_INT8";
|
||||
case NEU_TYPE_ARRAY_UINT8:
|
||||
return "NEU_TYPE_ARRAY_UINT8";
|
||||
case NEU_TYPE_ARRAY_INT16:
|
||||
return "NEU_TYPE_ARRAY_INT16";
|
||||
case NEU_TYPE_ARRAY_UINT16:
|
||||
@@ -155,6 +158,11 @@ typedef struct {
|
||||
uint8_t length;
|
||||
} neu_value_array_int8_t;
|
||||
|
||||
typedef struct {
|
||||
uint8_t u8s[NEU_VALUE_SIZE];
|
||||
uint8_t length;
|
||||
} neu_value_array_uint8_t;
|
||||
|
||||
typedef struct {
|
||||
int16_t i16s[NEU_VALUE_SIZE];
|
||||
uint8_t length;
|
||||
@@ -216,6 +224,7 @@ typedef union {
|
||||
neu_value_bytes_t bytes;
|
||||
neu_value_ptr_t ptr;
|
||||
neu_value_array_int8_t i8s;
|
||||
neu_value_array_uint8_t u8s;
|
||||
neu_value_array_int16_t i16s;
|
||||
neu_value_array_uint16_t u16s;
|
||||
neu_value_array_int32_t i32s;
|
||||
|
||||
@@ -277,6 +277,18 @@ void neu_driver_cache_update_change(neu_driver_cache_t *cache,
|
||||
}
|
||||
}
|
||||
break;
|
||||
case NEU_TYPE_ARRAY_UINT8:
|
||||
if (elem->value_old.value.u8s.length !=
|
||||
value.value.u8s.length) {
|
||||
elem->changed = true;
|
||||
} else {
|
||||
if (memcmp(elem->value_old.value.u8s.u8s,
|
||||
value.value.u8s.u8s,
|
||||
value.value.u8s.length) != 0) {
|
||||
elem->changed = true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case NEU_TYPE_ARRAY_INT16:
|
||||
if (elem->value_old.value.i16s.length !=
|
||||
value.value.i16s.length) {
|
||||
@@ -477,6 +489,16 @@ void neu_driver_cache_update_change(neu_driver_cache_t *cache,
|
||||
}
|
||||
}
|
||||
break;
|
||||
case NEU_TYPE_ARRAY_UINT8:
|
||||
if (elem->value.value.u8s.length != value.value.u8s.length) {
|
||||
elem->changed = true;
|
||||
} else {
|
||||
if (memcmp(elem->value.value.u8s.u8s, value.value.u8s.u8s,
|
||||
value.value.u8s.length) != 0) {
|
||||
elem->changed = true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case NEU_TYPE_ARRAY_INT16:
|
||||
if (elem->value.value.i16s.length != value.value.i16s.length) {
|
||||
elem->changed = true;
|
||||
@@ -718,6 +740,11 @@ int neu_driver_cache_meta_get(neu_driver_cache_t *cache, const char *group,
|
||||
memcpy(value->value.value.i8s.i8s, elem->value.value.i8s.i8s,
|
||||
elem->value.value.i8s.length);
|
||||
break;
|
||||
case NEU_TYPE_ARRAY_UINT8:
|
||||
value->value.value.u8s.length = elem->value.value.u8s.length;
|
||||
memcpy(value->value.value.u8s.u8s, elem->value.value.u8s.u8s,
|
||||
elem->value.value.u8s.length);
|
||||
break;
|
||||
case NEU_TYPE_ARRAY_INT16:
|
||||
value->value.value.i16s.length = elem->value.value.i16s.length;
|
||||
memcpy(value->value.value.i16s.i16s, elem->value.value.i16s.i16s,
|
||||
@@ -854,6 +881,11 @@ int neu_driver_cache_meta_get_changed(neu_driver_cache_t *cache,
|
||||
memcpy(value->value.value.i8s.i8s, elem->value.value.i8s.i8s,
|
||||
elem->value.value.i8s.length);
|
||||
break;
|
||||
case NEU_TYPE_ARRAY_UINT8:
|
||||
value->value.value.u8s.length = elem->value.value.u8s.length;
|
||||
memcpy(value->value.value.u8s.u8s, elem->value.value.u8s.u8s,
|
||||
elem->value.value.u8s.length);
|
||||
break;
|
||||
case NEU_TYPE_ARRAY_INT16:
|
||||
value->value.value.i16s.length = elem->value.value.i16s.length;
|
||||
memcpy(value->value.value.i16s.i16s, elem->value.value.i16s.i16s,
|
||||
|
||||
@@ -1122,6 +1122,8 @@ int neu_adapter_driver_write_tags(neu_adapter_driver_t *driver,
|
||||
}
|
||||
if (tag->type == NEU_TYPE_BYTES) {
|
||||
if (cmd->tags[i].value.type == NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->tags[i].value.value.bytes.length =
|
||||
cmd->tags[i].value.value.i64s.length;
|
||||
for (int j = 0; j < cmd->tags[i].value.value.i64s.length;
|
||||
j++) {
|
||||
cmd->tags[i].value.value.bytes.bytes[j] =
|
||||
@@ -1135,6 +1137,8 @@ int neu_adapter_driver_write_tags(neu_adapter_driver_t *driver,
|
||||
}
|
||||
if (tag->type == NEU_TYPE_ARRAY_INT8) {
|
||||
if (cmd->tags[i].value.type == NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->tags[i].value.value.i8s.length =
|
||||
cmd->tags[i].value.value.i64s.length;
|
||||
for (int j = 0; j < cmd->tags[i].value.value.i64s.length;
|
||||
j++) {
|
||||
cmd->tags[i].value.value.i8s.i8s[j] =
|
||||
@@ -1146,8 +1150,25 @@ int neu_adapter_driver_write_tags(neu_adapter_driver_t *driver,
|
||||
}
|
||||
}
|
||||
}
|
||||
if (tag->type == NEU_TYPE_ARRAY_UINT8) {
|
||||
if (cmd->tags[i].value.type == NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->tags[i].value.value.u8s.length =
|
||||
cmd->tags[i].value.value.i64s.length;
|
||||
for (int j = 0; j < cmd->tags[i].value.value.i64s.length;
|
||||
j++) {
|
||||
cmd->tags[i].value.value.u8s.u8s[j] =
|
||||
(int8_t) cmd->tags[i].value.value.i64s.i64s[j];
|
||||
}
|
||||
for (int j = cmd->tags[i].value.value.i64s.length;
|
||||
j < NEU_VALUE_SIZE; j++) {
|
||||
cmd->tags[i].value.value.u8s.u8s[j] = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (tag->type == NEU_TYPE_ARRAY_INT16) {
|
||||
if (cmd->tags[i].value.type == NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->tags[i].value.value.i16s.length =
|
||||
cmd->tags[i].value.value.i64s.length;
|
||||
for (int j = 0; j < cmd->tags[i].value.value.i64s.length;
|
||||
j++) {
|
||||
cmd->tags[i].value.value.i16s.i16s[j] =
|
||||
@@ -1161,6 +1182,8 @@ int neu_adapter_driver_write_tags(neu_adapter_driver_t *driver,
|
||||
}
|
||||
if (tag->type == NEU_TYPE_ARRAY_UINT16) {
|
||||
if (cmd->tags[i].value.type == NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->tags[i].value.value.u16s.length =
|
||||
cmd->tags[i].value.value.i64s.length;
|
||||
for (int j = 0; j < cmd->tags[i].value.value.i64s.length;
|
||||
j++) {
|
||||
cmd->tags[i].value.value.u16s.u16s[j] =
|
||||
@@ -1174,6 +1197,8 @@ int neu_adapter_driver_write_tags(neu_adapter_driver_t *driver,
|
||||
}
|
||||
if (tag->type == NEU_TYPE_ARRAY_INT32) {
|
||||
if (cmd->tags[i].value.type == NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->tags[i].value.value.i32s.length =
|
||||
cmd->tags[i].value.value.i64s.length;
|
||||
for (int j = 0; j < cmd->tags[i].value.value.i64s.length;
|
||||
j++) {
|
||||
cmd->tags[i].value.value.i32s.i32s[j] =
|
||||
@@ -1187,6 +1212,8 @@ int neu_adapter_driver_write_tags(neu_adapter_driver_t *driver,
|
||||
}
|
||||
if (tag->type == NEU_TYPE_ARRAY_UINT32) {
|
||||
if (cmd->tags[i].value.type == NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->tags[i].value.value.u32s.length =
|
||||
cmd->tags[i].value.value.i64s.length;
|
||||
for (int j = 0; j < cmd->tags[i].value.value.i64s.length;
|
||||
j++) {
|
||||
cmd->tags[i].value.value.u32s.u32s[j] =
|
||||
@@ -1200,6 +1227,8 @@ int neu_adapter_driver_write_tags(neu_adapter_driver_t *driver,
|
||||
}
|
||||
if (tag->type == NEU_TYPE_ARRAY_UINT64) {
|
||||
if (cmd->tags[i].value.type == NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->tags[i].value.value.u64s.length =
|
||||
cmd->tags[i].value.value.i64s.length;
|
||||
for (int j = 0; j < cmd->tags[i].value.value.i64s.length;
|
||||
j++) {
|
||||
cmd->tags[i].value.value.u64s.u64s[i] =
|
||||
@@ -1213,6 +1242,8 @@ int neu_adapter_driver_write_tags(neu_adapter_driver_t *driver,
|
||||
}
|
||||
if (tag->type == NEU_TYPE_ARRAY_FLOAT) {
|
||||
if (cmd->tags[i].value.type == NEU_TYPE_ARRAY_DOUBLE) {
|
||||
cmd->tags[i].value.value.f32s.length =
|
||||
cmd->tags[i].value.value.f64s.length;
|
||||
for (int j = 0; j < cmd->tags[i].value.value.f64s.length;
|
||||
j++) {
|
||||
cmd->tags[i].value.value.f32s.f32s[j] =
|
||||
@@ -1224,6 +1255,8 @@ int neu_adapter_driver_write_tags(neu_adapter_driver_t *driver,
|
||||
}
|
||||
}
|
||||
if (cmd->tags[i].value.type == NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->tags[i].value.value.f32s.length =
|
||||
cmd->tags[i].value.value.i64s.length;
|
||||
for (int j = 0; j < cmd->tags[i].value.value.f64s.length;
|
||||
j++) {
|
||||
cmd->tags[i].value.value.f32s.f32s[j] =
|
||||
@@ -1237,6 +1270,8 @@ int neu_adapter_driver_write_tags(neu_adapter_driver_t *driver,
|
||||
}
|
||||
if (tag->type == NEU_TYPE_ARRAY_DOUBLE) {
|
||||
if (cmd->tags[i].value.type == NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->tags[i].value.value.f64s.length =
|
||||
cmd->tags[i].value.value.i64s.length;
|
||||
for (int j = 0; j < cmd->tags[i].value.value.i64s.length;
|
||||
j++) {
|
||||
cmd->tags[i].value.value.f64s.f64s[j] =
|
||||
@@ -1364,6 +1399,8 @@ int neu_adapter_driver_write_gtags(neu_adapter_driver_t *driver,
|
||||
if (tag->type == NEU_TYPE_BYTES) {
|
||||
if (cmd->groups[i].tags[k].value.type ==
|
||||
NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->groups[i].tags[k].value.value.bytes.length =
|
||||
cmd->groups[i].tags[k].value.value.i64s.length;
|
||||
for (int j = 0;
|
||||
j < cmd->groups[i].tags[k].value.value.i64s.length;
|
||||
j++) {
|
||||
@@ -1383,6 +1420,8 @@ int neu_adapter_driver_write_gtags(neu_adapter_driver_t *driver,
|
||||
if (tag->type == NEU_TYPE_ARRAY_INT8) {
|
||||
if (cmd->groups[i].tags[k].value.type ==
|
||||
NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->groups[i].tags[k].value.value.i8s.length =
|
||||
cmd->groups[i].tags[k].value.value.i64s.length;
|
||||
for (int j = 0;
|
||||
j < cmd->groups[i].tags[k].value.value.i64s.length;
|
||||
j++) {
|
||||
@@ -1398,9 +1437,31 @@ int neu_adapter_driver_write_gtags(neu_adapter_driver_t *driver,
|
||||
}
|
||||
}
|
||||
}
|
||||
if (tag->type == NEU_TYPE_ARRAY_UINT8) {
|
||||
if (cmd->groups[i].tags[k].value.type ==
|
||||
NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->groups[i].tags[k].value.value.u8s.length =
|
||||
cmd->groups[i].tags[k].value.value.i64s.length;
|
||||
for (int j = 0;
|
||||
j < cmd->groups[i].tags[k].value.value.i64s.length;
|
||||
j++) {
|
||||
cmd->groups[i].tags[k].value.value.u8s.u8s[j] =
|
||||
(int8_t) cmd->groups[i]
|
||||
.tags[k]
|
||||
.value.value.i64s.i64s[j];
|
||||
}
|
||||
for (int j =
|
||||
cmd->groups[i].tags[k].value.value.i64s.length;
|
||||
j < NEU_VALUE_SIZE; j++) {
|
||||
cmd->groups[i].tags[k].value.value.u8s.u8s[j] = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (tag->type == NEU_TYPE_ARRAY_INT16) {
|
||||
if (cmd->groups[i].tags[k].value.type ==
|
||||
NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->groups[i].tags[k].value.value.i16s.length =
|
||||
cmd->groups[i].tags[k].value.value.i64s.length;
|
||||
for (int j = 0;
|
||||
j < cmd->groups[i].tags[k].value.value.i64s.length;
|
||||
j++) {
|
||||
@@ -1419,6 +1480,8 @@ int neu_adapter_driver_write_gtags(neu_adapter_driver_t *driver,
|
||||
if (tag->type == NEU_TYPE_ARRAY_UINT16) {
|
||||
if (cmd->groups[i].tags[k].value.type ==
|
||||
NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->groups[i].tags[k].value.value.u16s.length =
|
||||
cmd->groups[i].tags[k].value.value.i64s.length;
|
||||
for (int j = 0;
|
||||
j < cmd->groups[i].tags[k].value.value.i64s.length;
|
||||
j++) {
|
||||
@@ -1437,6 +1500,8 @@ int neu_adapter_driver_write_gtags(neu_adapter_driver_t *driver,
|
||||
if (tag->type == NEU_TYPE_ARRAY_INT32) {
|
||||
if (cmd->groups[i].tags[k].value.type ==
|
||||
NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->groups[i].tags[k].value.value.i32s.length =
|
||||
cmd->groups[i].tags[k].value.value.i64s.length;
|
||||
for (int j = 0;
|
||||
j < cmd->groups[i].tags[k].value.value.i64s.length;
|
||||
j++) {
|
||||
@@ -1455,6 +1520,8 @@ int neu_adapter_driver_write_gtags(neu_adapter_driver_t *driver,
|
||||
if (tag->type == NEU_TYPE_ARRAY_UINT32) {
|
||||
if (cmd->groups[i].tags[k].value.type ==
|
||||
NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->groups[i].tags[k].value.value.u32s.length =
|
||||
cmd->groups[i].tags[k].value.value.i64s.length;
|
||||
for (int j = 0;
|
||||
j < cmd->groups[i].tags[k].value.value.i64s.length;
|
||||
j++) {
|
||||
@@ -1473,6 +1540,8 @@ int neu_adapter_driver_write_gtags(neu_adapter_driver_t *driver,
|
||||
if (tag->type == NEU_TYPE_ARRAY_UINT64) {
|
||||
if (cmd->groups[i].tags[k].value.type ==
|
||||
NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->groups[i].tags[k].value.value.u64s.length =
|
||||
cmd->groups[i].tags[k].value.value.i64s.length;
|
||||
for (int j = 0;
|
||||
j < cmd->groups[i].tags[k].value.value.i64s.length;
|
||||
j++) {
|
||||
@@ -1491,6 +1560,8 @@ int neu_adapter_driver_write_gtags(neu_adapter_driver_t *driver,
|
||||
if (tag->type == NEU_TYPE_ARRAY_FLOAT) {
|
||||
if (cmd->groups[i].tags[k].value.type ==
|
||||
NEU_TYPE_ARRAY_DOUBLE) {
|
||||
cmd->groups[i].tags[k].value.value.f32s.length =
|
||||
cmd->groups[i].tags[k].value.value.f64s.length;
|
||||
for (int j = 0;
|
||||
j < cmd->groups[i].tags[k].value.value.f64s.length;
|
||||
j++) {
|
||||
@@ -1507,6 +1578,8 @@ int neu_adapter_driver_write_gtags(neu_adapter_driver_t *driver,
|
||||
}
|
||||
if (cmd->groups[i].tags[k].value.type ==
|
||||
NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->groups[i].tags[k].value.value.f32s.length =
|
||||
cmd->groups[i].tags[k].value.value.i64s.length;
|
||||
for (int j = 0;
|
||||
j < cmd->groups[i].tags[k].value.value.f64s.length;
|
||||
j++) {
|
||||
@@ -1525,6 +1598,8 @@ int neu_adapter_driver_write_gtags(neu_adapter_driver_t *driver,
|
||||
if (tag->type == NEU_TYPE_ARRAY_DOUBLE) {
|
||||
if (cmd->groups[i].tags[k].value.type ==
|
||||
NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->groups[i].tags[k].value.value.f64s.length =
|
||||
cmd->groups[i].tags[k].value.value.i64s.length;
|
||||
for (int j = 0;
|
||||
j < cmd->groups[i].tags[k].value.value.i64s.length;
|
||||
j++) {
|
||||
@@ -1644,6 +1719,7 @@ int neu_adapter_driver_write_tag(neu_adapter_driver_t *driver,
|
||||
}
|
||||
if (tag->type == NEU_TYPE_BYTES) {
|
||||
if (cmd->value.type == NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->value.value.bytes.length = cmd->value.value.i64s.length;
|
||||
for (int i = 0; i < cmd->value.value.i64s.length; i++) {
|
||||
cmd->value.value.bytes.bytes[i] =
|
||||
(uint8_t) cmd->value.value.i64s.i64s[i];
|
||||
@@ -1656,6 +1732,7 @@ int neu_adapter_driver_write_tag(neu_adapter_driver_t *driver,
|
||||
}
|
||||
if (tag->type == NEU_TYPE_ARRAY_INT8) {
|
||||
if (cmd->value.type == NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->value.value.i8s.length = cmd->value.value.i64s.length;
|
||||
for (int i = 0; i < cmd->value.value.i64s.length; i++) {
|
||||
cmd->value.value.i8s.i8s[i] =
|
||||
(int8_t) cmd->value.value.i64s.i64s[i];
|
||||
@@ -1666,8 +1743,22 @@ int neu_adapter_driver_write_tag(neu_adapter_driver_t *driver,
|
||||
}
|
||||
}
|
||||
}
|
||||
if (tag->type == NEU_TYPE_ARRAY_UINT8) {
|
||||
if (cmd->value.type == NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->value.value.u8s.length = cmd->value.value.i64s.length;
|
||||
for (int i = 0; i < cmd->value.value.i64s.length; i++) {
|
||||
cmd->value.value.u8s.u8s[i] =
|
||||
(uint8_t) cmd->value.value.i64s.i64s[i];
|
||||
}
|
||||
for (int i = cmd->value.value.i64s.length; i < NEU_VALUE_SIZE;
|
||||
i++) {
|
||||
cmd->value.value.u8s.u8s[i] = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (tag->type == NEU_TYPE_ARRAY_INT16) {
|
||||
if (cmd->value.type == NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->value.value.i16s.length = cmd->value.value.i64s.length;
|
||||
for (int i = 0; i < cmd->value.value.i64s.length; i++) {
|
||||
cmd->value.value.i16s.i16s[i] =
|
||||
(int16_t) cmd->value.value.i64s.i64s[i];
|
||||
@@ -1680,6 +1771,7 @@ int neu_adapter_driver_write_tag(neu_adapter_driver_t *driver,
|
||||
}
|
||||
if (tag->type == NEU_TYPE_ARRAY_UINT16) {
|
||||
if (cmd->value.type == NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->value.value.u16s.length = cmd->value.value.i64s.length;
|
||||
for (int i = 0; i < cmd->value.value.i64s.length; i++) {
|
||||
cmd->value.value.u16s.u16s[i] =
|
||||
(uint16_t) cmd->value.value.i64s.i64s[i];
|
||||
@@ -1692,6 +1784,7 @@ int neu_adapter_driver_write_tag(neu_adapter_driver_t *driver,
|
||||
}
|
||||
if (tag->type == NEU_TYPE_ARRAY_INT32) {
|
||||
if (cmd->value.type == NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->value.value.i32s.length = cmd->value.value.i64s.length;
|
||||
for (int i = 0; i < cmd->value.value.i64s.length; i++) {
|
||||
cmd->value.value.i32s.i32s[i] =
|
||||
(int32_t) cmd->value.value.i64s.i64s[i];
|
||||
@@ -1704,6 +1797,7 @@ int neu_adapter_driver_write_tag(neu_adapter_driver_t *driver,
|
||||
}
|
||||
if (tag->type == NEU_TYPE_ARRAY_UINT32) {
|
||||
if (cmd->value.type == NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->value.value.u32s.length = cmd->value.value.i64s.length;
|
||||
for (int i = 0; i < cmd->value.value.i64s.length; i++) {
|
||||
cmd->value.value.u32s.u32s[i] =
|
||||
(uint32_t) cmd->value.value.i64s.i64s[i];
|
||||
@@ -1716,6 +1810,7 @@ int neu_adapter_driver_write_tag(neu_adapter_driver_t *driver,
|
||||
}
|
||||
if (tag->type == NEU_TYPE_ARRAY_UINT64) {
|
||||
if (cmd->value.type == NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->value.value.u64s.length = cmd->value.value.i64s.length;
|
||||
for (int i = 0; i < cmd->value.value.i64s.length; i++) {
|
||||
cmd->value.value.u64s.u64s[i] =
|
||||
(uint64_t) cmd->value.value.i64s.i64s[i];
|
||||
@@ -1728,6 +1823,7 @@ int neu_adapter_driver_write_tag(neu_adapter_driver_t *driver,
|
||||
}
|
||||
if (tag->type == NEU_TYPE_ARRAY_FLOAT) {
|
||||
if (cmd->value.type == NEU_TYPE_ARRAY_DOUBLE) {
|
||||
cmd->value.value.f32s.length = cmd->value.value.f64s.length;
|
||||
for (int i = 0; i < cmd->value.value.f64s.length; i++) {
|
||||
cmd->value.value.f32s.f32s[i] =
|
||||
(float) cmd->value.value.f64s.f64s[i];
|
||||
@@ -1738,6 +1834,7 @@ int neu_adapter_driver_write_tag(neu_adapter_driver_t *driver,
|
||||
}
|
||||
}
|
||||
if (cmd->value.type == NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->value.value.f32s.length = cmd->value.value.i64s.length;
|
||||
for (int i = 0; i < cmd->value.value.f64s.length; i++) {
|
||||
cmd->value.value.f32s.f32s[i] =
|
||||
(float) cmd->value.value.i64s.i64s[i];
|
||||
@@ -1750,6 +1847,7 @@ int neu_adapter_driver_write_tag(neu_adapter_driver_t *driver,
|
||||
}
|
||||
if (tag->type == NEU_TYPE_ARRAY_DOUBLE) {
|
||||
if (cmd->value.type == NEU_TYPE_ARRAY_INT64) {
|
||||
cmd->value.value.f64s.length = cmd->value.value.i64s.length;
|
||||
for (int i = 0; i < cmd->value.value.i64s.length; i++) {
|
||||
cmd->value.value.f64s.f64s[i] =
|
||||
(double) cmd->value.value.i64s.i64s[i];
|
||||
|
||||
Reference in New Issue
Block a user