跳到主要内容

动态库说明

triton_lib_evc.h内容如下:

#pragma once
#include <string>

#define MAX_LENGTH 64 // 数据key以及value字符串最大长度
#define MAX_LENGTH_SAMPLING 255 // 采样数据最大value长度
#define MAX_SEND_PAIR 500 // 发送至平台的数据组(key+value)组数上限
#define MAX_SEND_PAIR_SAMPLING 200 // 发送至平台的采样数据组(key+value)组数上限
#define MAX_RECEIVE_PAIR 32 // 从平台接收数据组(key+value)组数上限

#pragma pack(1)

typedef struct _TritonPayload
{
char szKey[MAX_LENGTH]; //数据ID:对应Neptune的数据定义
char szValue[MAX_LENGTH]; //数据值
}TritonPayload;

typedef struct _TritonPayloadSampling
{
char szKey[MAX_LENGTH]; //数据ID:对应Neptune的数据定义
char szValue[MAX_LENGTH_SAMPLING]; //数据值
}TritonPayloadSampling;


//数据传输结构
typedef struct _triton_send_data
{
unsigned int iSize; //数据组数
TritonPayload payload[MAX_SEND_PAIR];
_triton_send_data()
{
memset(this, 0, sizeof(*this));
}
} TritonDataSend;

//数据传输结构
typedef struct _triton_send_data_sampling
{
unsigned int iSize; //数据组数
char szTimeStart[MAX_LENGTH];
char szInterval[MAX_LENGTH];
TritonPayloadSampling payload[MAX_SEND_PAIR_SAMPLING];
_triton_send_data_sampling()
{
memset(this, 0, sizeof(*this));
}
} TritonDataSendSampling;

typedef struct _triton_receive_data
{
unsigned int iSize; //数据组数
TritonPayload payload[MAX_RECEIVE_PAIR];
_triton_receive_data()
{
memset(this, 0, sizeof(*this));
}
} TritonDataRecv;

#pragma pack()

#define TRITON_API extern "C" short __stdcall

//发送数据
TRITON_API triton_send(TritonDataSend *pTritonDataSend);

//发送采样数据
TRITON_API triton_send_sampling(TritonDataSendSampling *pTritonDataSendSampling);

//获取推送命令
TRITON_API triton_recv(TritonDataRecv *pTritonDataRecv);

//获取网络连接状态 0 : 1 offline : online
TRITON_API triton_status();

//获取UUID
TRITON_API triton_uuid(char* strUuid);
提示
  • 根据实际数据场景,选择上传数据的方式。一般sampling采样数据适用于超高频率数据发送(如5ms或以内)
  • 需要发送的普通数据按结构体TritonDataSend构造,传入发送函数triton_send()
  • 需要接收的普通数据按结构体TritonDataRecv构造,传入接收函数triton_recv()
  • 需要发送的采样数据按结构体TritonDataSendSamping构造,传入发送函数triton_send_sampling()