177 lines
4.7 KiB
C++
177 lines
4.7 KiB
C++
#pragma once
|
||
#include <string>
|
||
#include <list>
|
||
#include <vector>
|
||
|
||
enum READTYPE {
|
||
AXISMOVEFUNC = 0, //轴运动函数
|
||
|
||
VERSIONREQ, //获取版本信息
|
||
|
||
IOSIGNAL, //io 信号
|
||
RESETELEC, //PowerMeterClient
|
||
PURIFIERPARAMW, //净化器参数写入
|
||
LAYERDATAREQ, //layer数据请求
|
||
REGISTFUNC, //注册函数集 一次请求,使用请求回复模式
|
||
CAMERAFUNC, //相机功能函数调用
|
||
CAMERAPARAMUPDATE, //相机参数更新
|
||
PURIFIERFUNC, //净化器接口功能
|
||
|
||
SETZEROPOS, //AxisState使用
|
||
AXISSTOPALL, //axis 运动急停
|
||
|
||
/********************配置信息******************/
|
||
PARAMLIMITCFG,
|
||
EXTCFG,
|
||
RUNCFG,
|
||
INFRAREDTEMPCFG,
|
||
MACHINECFG,
|
||
|
||
LOADPARAM, //装载参数
|
||
|
||
SCANCTRLFUNC, //振镜控制函数
|
||
|
||
REQUEST=100, //获取配置信息 test用
|
||
};
|
||
|
||
enum DATATYPE {
|
||
iBOOL = 0,
|
||
iSHORT,
|
||
iUSHORT,
|
||
iINT,
|
||
iUINT,
|
||
iFLOAT,
|
||
iSTRING,
|
||
iCHAR,
|
||
iUCHAR,
|
||
iWORD,
|
||
iDOUBLE,
|
||
iTIMET,
|
||
|
||
UNKNOW,
|
||
};
|
||
|
||
class ClientInfo;
|
||
struct ReadData {
|
||
READTYPE dataType;
|
||
std::string nameKey; //参数key
|
||
std::string strValue; //value
|
||
DATATYPE valueType;
|
||
ClientInfo* clientPtr;
|
||
};
|
||
|
||
enum WRITETYPE {
|
||
ALARM = 0, //报警
|
||
VERSIONRSP, //返回版本信息
|
||
IOSIGNALRSP, //io信号返回数据
|
||
SYSPARAMDATA, //系统参数
|
||
LASERCHILLER, //冷水机参数
|
||
UPSPARAM, //ups参数
|
||
TEMPCTRLPARAM, //TempCtrl参数
|
||
OXYGENPARAM, //测氧参数
|
||
|
||
LASERPARAM, //激光参数 1-n 每个参数后添加后缀“_i”,i从0开始
|
||
|
||
SIMPLESUPPLYPARAM_V10, //供应参数v1.0
|
||
SIMPLESUPPLYPARAM_V21, //供应参数v2.1
|
||
SIMPLESUPPLYPARAM_V22, //供应参数v2.2
|
||
PURIFIERPARAM, //净化器参数
|
||
POWERMETERPARAM, //电能参数
|
||
|
||
POWDERSUPPLYSIMPLEPARAM, //PowderSupplySimpleClient 参数 已写但没用到,暂没有发送
|
||
SCANNERPOWERPARAM, //ScannerPower 参数
|
||
|
||
/*************axis相关*************/
|
||
AXISMOLD,
|
||
AXISMOLDSLAVE,
|
||
AXISCLEAN,
|
||
AXISCLEANSLAVE,
|
||
AXISLOAD,
|
||
AXISMARM,
|
||
AXISMSUPPLY,
|
||
AXISELE,
|
||
AXISELESLAVE,
|
||
|
||
/********************配置信息******************/
|
||
PARAMLIMITCFGPARAM, //paramlimit配置参数
|
||
EXTCFGPARAM,
|
||
RUNCFGPARAM, //runcfg 参数
|
||
INFRAREDTEMPCFGPARAM, //InfraredTempCfg 参数
|
||
MACHINECFGPARAM, //MachineCfg 参数
|
||
|
||
MOLDCFGPARAM,
|
||
LOADCFGPARAM,
|
||
ARMCFGPARAM,
|
||
SUPPLYCFGPARAM,
|
||
CLEANCFGPARAM,
|
||
ELECFGPARAM,
|
||
|
||
|
||
LOADPARAMRSP, //装载参数
|
||
SCANCTRLSTATE, //BaseCtrl参数
|
||
SCANCTRLPARAM, //scanctrl参数
|
||
XYSCANSTATE, //XYScanState参数 在参数更新的时候才会发送到客户端
|
||
CAMERAPARAM, //相机参数
|
||
|
||
DEFAULT = 900, //默认值
|
||
TEST = 1000, //test
|
||
};
|
||
|
||
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), result(true), items(its){}
|
||
};
|
||
|
||
|
||
|
||
|
||
/*****************************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**************************/ |