101 lines
2.9 KiB
C++

#pragma once
#include <string>
#include <list>
enum READTYPE {
GET = 0,
SET,
LOAD, //载入
LOADOUT, //载出
SUPPLYAXLEAFTER, //供粉轴后移
SUPPLYAXLEFRONT, //供粉轴前移
SUPPLYAXLEAFTERCONTSTART, //供粉轴后移连续开始
SUPPLYAXLEAFTERCONTSTOP, //供粉轴后移连续停止
SUPPLYAXLEFRONTCONTSTART, //供粉轴前移连续开始
SUPPLYAXLEFRONTCONTSTOP, //供粉轴前移连续停止
PAVEAXLEFRONT, // 铺粉臂前移
PAVEAXLEFRONTCONTSTART, //铺粉臂前移连续
PAVEAXLEFRONTCONTSTOP, //铺粉臂前移连续
PAVEAXLEAFTER, //铺粉臂后移
PAVEAXLEAFTERCONTSTART, //铺粉臂后移连续开始
PAVEAXLEAFTERCONTSTOP, //铺粉臂后移连续停止
PAVEAXLECLEAR, //铺粉臂清零
PRINTAXLEUP, //成型缸上升
PRINTAXLEUPCONTSTART, //成型缸连续上升开始
PRINTAXLEUPCONTSTOP, //成型缸连续上升停止
PRINTAXLEDOWN, //成型缸下降
PRINTAXLEDOWNCONTSTART, //成型缸连续下降开始
PRINTAXLEDOWNCONTSTOP, //成型缸连续下降停止
PRINTAXLECLEAR, //成型缸清零
TRANSFERAXIELEFT, //移载轴左移
TRANSFERAXIELEFTCONTSTART, //移载轴连续左移开始
TRANSFERAXIELEFTCONTSTOP, //移载轴连续左移停止
TRANSFERAXIERIGHT, //移载轴右移
TRANSFERAXIERIGHTCONTSTART, //移载轴连续右移开始
TRANSFERAXIERIGHTCONTSTOP, //移载轴连续右移停止
TRANSFERAXIECLEAR, //移载轴清零
SCANERSTART, //开始扫描
SCANERSTOP, //停止扫描
STARTHEATINGSCANNERTEST, //开始振镜预热测试
STOPHEATINGSCANNERTEST, //停止振镜预热
INITERRORINFOSREQ, //初始化错误信息
VERSIONREQ, //获取版本信息
};
enum DATATYPE {
iBOOL = 0,
iSHORT,
iUSHORT,
iINT,
iUINT,
iFLOAT,
iSTRING,
iCHAR,
iUCHAR,
iWORD,
UNKNOW,
};
class ClientInfo;
struct ReadData {
READTYPE dataType;
std::string nameKey; //参数key
std::string strValue; //value
DATATYPE valueType;
ClientInfo* clientPtr;
};
enum WRITETYPE {
ProcReadPLC0 = 0, //snap7 数据
ProcReadPLC1,
ProcReadPLC2,
ProcReadPLC3,
ProcReadPLC4,
ProcReadPLC5,
ProcReadPLC6,
ProcReadPLCData0 = 100,
ALARM, //报警
RESPOND, //回应
TIMEDATA, //定时数据
INITERRORINFOSRSP, //返回初始化错误信息
VERSIONRSP, //返回版本信息
SYSPARAMDATA, //
};
struct Item {
std::string nameKey; //参数key
std::string strValue; //value
DATATYPE valueType; //数据类型
};
struct WriteData {
WRITETYPE dataType; //数据类型
bool result; //执行结果
std::list<Item> items;
WriteData() {}
WriteData(WRITETYPE dt,const std::list<Item>& its )
: dataType(dt), items(its){}
};