211 lines
5.6 KiB
C
Raw Normal View History

2024-04-10 16:15:33 +08:00
#pragma once
#include <string>
#include <list>
2024-04-23 13:41:16 +08:00
#include <vector>
2024-04-10 16:15:33 +08:00
enum READTYPE {
2024-05-28 18:07:35 +08:00
AXISMOVEFUNC = 0, //轴运动函数
2024-05-15 13:38:34 +08:00
2024-04-10 16:15:33 +08:00
VERSIONREQ, //获取版本信息
2024-04-18 11:59:51 +08:00
IOSIGNAL, //io 信号
RESETELEC, //PowerMeterClient
PURIFIERPARAMW, //净化器参数写入
2024-04-23 13:41:16 +08:00
LAYERDATAREQ, //layer数据请求
2024-05-17 10:57:17 +08:00
REGISTFUNC, //注册函数集 一次请求,使用请求回复模式
CAMERAFUNC, //相机功能函数调用
CAMERAPARAMUPDATE, //相机参数更新
2024-05-17 15:57:36 +08:00
PURIFIERFUNC, //净化器接口功能
CONFIGFUNC, //config functions
2024-05-09 12:49:18 +08:00
SETZEROPOS, //AxisState使用
AXISSTOPALL, //axis 运动急停
2024-05-06 10:49:15 +08:00
/********************配置信息******************/
PARAMLIMITCFG,
EXTCFG,
2024-05-28 18:07:35 +08:00
RUNCFG,
INFRAREDTEMPCFG,
2024-05-30 11:18:10 +08:00
MACHINECFG,
2024-05-30 17:25:23 +08:00
FAVORITECFG,
2024-05-31 11:49:20 +08:00
CAMERACALIBRATIONCFG,
UISHOWCFG,
RECOATCHECKCFG,
POWDERESTIMATECFG,
COMMUNICATIONCFG,
2024-06-18 17:44:32 +08:00
ALARMCFG,
2024-05-06 10:49:15 +08:00
LOADPARAM, //装载参数
2024-05-09 12:49:18 +08:00
SCANCTRLFUNC, //振镜控制函数
2024-05-28 18:07:35 +08:00
REQUEST=100, //获取配置信息 test用
2024-04-10 16:15:33 +08:00
};
enum DATATYPE {
iBOOL = 0,
iSHORT,
iUSHORT,
iINT,
iUINT,
iFLOAT,
iSTRING,
2024-04-12 15:51:41 +08:00
iCHAR,
iUCHAR,
2024-04-10 16:15:33 +08:00
iWORD,
2024-05-28 13:28:07 +08:00
iDOUBLE,
2024-05-30 11:18:10 +08:00
iTIMET,
2024-04-12 15:51:41 +08:00
UNKNOW,
2024-04-10 16:15:33 +08:00
};
2024-05-30 17:25:23 +08:00
enum DATAHANDLE {
UPDATE = 0,
ADD,
DEL,
};
2024-04-10 16:15:33 +08:00
enum WRITETYPE {
2024-05-11 17:43:38 +08:00
ALARM = 0, //报警
2024-04-10 16:15:33 +08:00
VERSIONRSP, //返回版本信息
2024-04-24 18:12:41 +08:00
IOSIGNALRSP, //io信号返回数据
2024-05-06 10:49:15 +08:00
SYSPARAMDATA, //系统参数
2024-04-16 13:32:05 +08:00
LASERCHILLER, //冷水机参数
UPSPARAM, //ups参数
TEMPCTRLPARAM, //TempCtrl参数
OXYGENPARAM, //测氧参数
2024-05-11 17:43:38 +08:00
LASERPARAM, //激光参数 1-n 每个参数后添加后缀“_i”,i从0开始
2024-04-16 13:32:05 +08:00
SIMPLESUPPLYPARAM_V10, //供应参数v1.0
SIMPLESUPPLYPARAM_V21, //供应参数v2.1
SIMPLESUPPLYPARAM_V22, //供应参数v2.2
2024-05-11 17:43:38 +08:00
PURIFIERPARAM, //净化器参数
POWERMETERPARAM, //电能参数
2024-04-16 13:32:05 +08:00
2024-05-11 17:43:38 +08:00
POWDERSUPPLYSIMPLEPARAM, //PowderSupplySimpleClient 参数 已写但没用到,暂没有发送
2024-04-24 18:12:41 +08:00
SCANNERPOWERPARAM, //ScannerPower 参数
2024-05-11 17:43:38 +08:00
/*************axis相关*************/
AXISMOLD,
AXISMOLDSLAVE,
AXISCLEAN,
AXISCLEANSLAVE,
AXISLOAD,
AXISMARM,
AXISMSUPPLY,
AXISELE,
AXISELESLAVE,
2024-05-06 10:49:15 +08:00
/********************配置信息******************/
2024-05-15 13:38:34 +08:00
PARAMLIMITCFGPARAM, //paramlimit配置参数
2024-05-06 10:49:15 +08:00
EXTCFGPARAM,
2024-05-30 17:25:23 +08:00
RUNCFGPARAM, //runcfg 参数
2024-05-28 18:07:35 +08:00
INFRAREDTEMPCFGPARAM, //InfraredTempCfg 参数
2024-05-30 11:18:10 +08:00
MACHINECFGPARAM, //MachineCfg 参数
2024-05-30 17:25:23 +08:00
FAVORITECFGPARAM, //FavoriteCfg 参数
2024-05-31 11:49:20 +08:00
CAMERACALIBRATIONCFGPARAM, //CameracalibrationCfg 参数
UISHOWCFGPARAM, //UishowCfg参数
RECOATCHECKCFGPARAM, //RecoatCheckCfg 参数
POWDERESTIMATECFGPARAM, //PowderEstimateCfg 参数
COMMUNICATIONCFGPARAM, //CommunicationCfg 参数
2024-05-06 10:49:15 +08:00
2024-06-18 17:44:32 +08:00
STOPALARMCFGPARAM, //AlarmCfgWrapper stop参数
PAUSEALARMCFGPARAM, //AlarmCfgWrapper pause参数
WARNALARMCFGPARAM, //AlarmCfgWrapper warn参数
2024-05-06 10:49:15 +08:00
MOLDCFGPARAM,
LOADCFGPARAM,
ARMCFGPARAM,
SUPPLYCFGPARAM,
CLEANCFGPARAM,
ELECFGPARAM,
LOADPARAMRSP, //装载参数
2024-05-15 13:38:34 +08:00
SCANCTRLSTATE, //BaseCtrl参数
SCANCTRLPARAM, //scanctrl参数
2024-05-17 10:57:17 +08:00
XYSCANSTATE, //XYScanState参数 在参数更新的时候才会发送到客户端
CAMERAPARAM, //相机参数
2024-05-28 18:07:35 +08:00
DEFAULT = 900, //默认值
2024-05-11 17:43:38 +08:00
TEST = 1000, //test
2024-04-10 16:15:33 +08:00
};
struct Item {
2024-04-10 16:15:33 +08:00
std::string nameKey; //参数key
std::string strValue; //value
DATATYPE valueType; //数据类型
2024-06-18 17:44:32 +08:00
std::string content; //alarmcfgwrapper使用
bool isEnable;
bool isAlarm;
bool isShow;
};
class ClientInfo;
struct ReadData {
READTYPE dataType;
std::string nameKey; //参数key
std::string strValue; //value
DATATYPE valueType;
DATAHANDLE handleType; //增删改
ClientInfo* clientPtr;
std::list<Item> its; //函数参数列表
};
struct WriteData {
WRITETYPE dataType; //数据类型
bool result; //执行结果
std::list<Item> items;
2024-04-10 16:15:33 +08:00
WriteData() {}
WriteData(WRITETYPE dt,const std::list<Item>& its )
2024-05-15 13:38:34 +08:00
: dataType(dt), result(true), items(its){}
2024-04-23 13:41:16 +08:00
};
/*****************************h3d文件层数据 begin**************************/
//struct Point {
// float xPos; // X 位置 : Float //单位 mm
// float yPos; // Y 位置 : Float //单位 mm
//};
//
//struct ChainDataBlock
//{
// uint32_t dotNum; // 点数:Uint32 //决定有多少个点区
// std::vector<Point> pointVec; // 点区
//};
//
//struct VectorDataBlock {
// float startX; // 始点 X 位置 : Float //单位 mm
// float startY; // 始点 Y 位置 : Float //单位 mm
// float endX; // 终点 X 位置 : Float //单位 mm
// float endY; // 终点 Y 位置 : Float //单位 mm
//};
//
//struct LayerDataBlock
//{
// int elementId; // 零件 ID : Int32
// int elementParamId; // 零件参数 ID : Int32
// //DataBlockSummary dbSummary = 3; //块统计区 : Struct
// UINT blockType; // 块类型: Char //1 代表向量型数据块3 代表链型数据块
// UINT blockNum; // 块数据数: Uint32 //决定有多少个块数据区
// std::vector<VectorDataBlock> vecBlocks; //块数据区 向量型
// std::vector<ChainDataBlock> chainBlocks; //块数据区 链型
//};
//
//struct LayerData {
// float zCooldinate; // Z 坐标 : Float 单位 mm
// float pavePowderNum; // 供粉量: Float 单位 mm
// //LayerSummary layerSummary = 3; // 层统计区() : Struct
// UINT layerBlock; //层块数 决定多少个层块数据库
// std::vector<LayerDataBlock> layerDataBlock; //层块数据区
//};
/*****************************h3d文件层数据 end**************************/