添加传输打印文件接口

This commit is contained in:
wangxx1809 2024-04-23 13:41:16 +08:00
parent febae44105
commit e75a7915c3
96 changed files with 5082 additions and 427 deletions

View File

@ -210,17 +210,11 @@ public:
BaseStat baseStat; BaseStat baseStat;
char m_startFlag; //成员变量开始标记 char m_startFlag; //成员变量开始标记
//float tempRealtimeValue; //水箱温度
FloatData* m_tempRealtimeValue; //水箱温度 FloatData* m_tempRealtimeValue; //水箱温度
//unsigned short runInfo; //运行消息 0:待机 2:关机过程 4:制冷运行 5:制热运行 6:化霜运行
UShortData* m_runInfo; //运行消息 0:待机 2:关机过程 4:制冷运行 5:制热运行 6:化霜运行 UShortData* m_runInfo; //运行消息 0:待机 2:关机过程 4:制冷运行 5:制热运行 6:化霜运行
//bool isRun; //开关机
BoolData* m_isRun; //开关机 BoolData* m_isRun; //开关机
//unsigned short alarmInfo; //故障消息 0:无故障 1:提示故障 2:停机故障
UShortData* m_alarmInfo; //故障消息 0:无故障 1:提示故障 2:停机故障 UShortData* m_alarmInfo; //故障消息 0:无故障 1:提示故障 2:停机故障
//float tempSettingValue; //设定温度
FloatData* m_tempSettingValue; //设定温度 FloatData* m_tempSettingValue; //设定温度
//bool isLevelAlarm; //液位报警
BoolData* m_isLevelAlarm; //液位报警 BoolData* m_isLevelAlarm; //液位报警
char m_endFlag; //成员变量结束标记 char m_endFlag; //成员变量结束标记
}; };

View File

@ -4,6 +4,7 @@
#include "../SystemInfo.h" #include "../SystemInfo.h"
//#include "../PLC/SignalService.h" //#include "../PLC/SignalService.h"
#include "../utils/DataByte.h" #include "../utils/DataByte.h"
#include "../DataManage/DataHandle.h"
PurifierClient::PurifierClient(void* pconfig) :S7Client(pconfig) PurifierClient::PurifierClient(void* pconfig) :S7Client(pconfig)
{ {
@ -422,64 +423,67 @@ PurifierClient::~PurifierClient()
// m_RTCommands.push(pcommand); // m_RTCommands.push(pcommand);
// LeaveCriticalSection(&m_RtcCS); // LeaveCriticalSection(&m_RtcCS);
//} //}
//
//void PurifierClient::SetDedust(bool bvalue) void PurifierClient::SetDedust(bool bvalue)
//{ {
// if (g_isDebug) { if (g_isDebug) {
// m_Stat.isDedusting->SetValue(bvalue); m_Stat.isDedusting->SetValue(bvalue);
// } }
// if (!IsServerConnected())return; if (!IsServerConnected())return;
// if (bvalue)SetMKBit(10 * 8 + 0,500); DataHandle::Instance()->SetPushMsg(PURIFIERPARAMW, m_Stat.isDedusting->GetCode(), bvalue ? "1" : "0", iBOOL);
// else SetMKBit(10 * 8 + 1, 500); //if (bvalue)SetMKBit(10 * 8 + 0,500);
// //else SetMKBit(10 * 8 + 1, 500);
//}
// }
//void PurifierClient::SetBlowBack(bool bvalue)
//{ void PurifierClient::SetBlowBack(bool bvalue)
// if (!IsServerConnected())return; {
// if (bvalue)SetMKBit(10 * 8 + 2, 500); if (!IsServerConnected())return;
// else SetMKBit(10 * 8 + 3, 500); DataHandle::Instance()->SetPushMsg(PURIFIERPARAMW, m_Stat.isBlowBack->GetCode(), bvalue ? "1" : "0", iBOOL);
//} //if (bvalue)SetMKBit(10 * 8 + 2, 500);
// //else SetMKBit(10 * 8 + 3, 500);
//void PurifierClient::SetFilterDiscard(bool bvalue) }
//{
// if (!IsServerConnected())return; void PurifierClient::SetFilterDiscard(bool bvalue)
// if (bvalue)SetMKBit(10 * 8 + 4, 500); {
// else SetMKBit(10 * 8 + 5, 500); if (!IsServerConnected())return;
//} DataHandle::Instance()->SetPushMsg(PURIFIERPARAMW, m_Stat.isFilterDiscarding->GetCode(), bvalue ? "1" : "0", iBOOL);
// //if (bvalue)SetMKBit(10 * 8 + 4, 500);
//void PurifierClient::SetBoxClean(bool bvalue) //else SetMKBit(10 * 8 + 5, 500);
//{ }
// if (!IsServerConnected())return;
// if (bvalue)SetMKBit(4, 500); void PurifierClient::SetBoxClean(bool bvalue)
// else SetMKBit(5, 500); {
//} if (!IsServerConnected())return;
// if (bvalue)SetMKBit(4, 500);
//void PurifierClient::SetFilterClean(bool bvalue) else SetMKBit(5, 500);
//{ }
// if (!IsServerConnected())return;
// if (bvalue)SetMKBit(10 * 8 + 6, 500); void PurifierClient::SetFilterClean(bool bvalue)
// else SetMKBit(10 * 8 + 7, 500); {
//} if (!IsServerConnected())return;
// if (bvalue)SetMKBit(10 * 8 + 6, 500);
//void PurifierClient::SetHopperClean(bool bvalue) else SetMKBit(10 * 8 + 7, 500);
//{ }
// if (!IsServerConnected())return;
// if (bvalue)SetMKBit(11 * 8 + 0, 500); void PurifierClient::SetHopperClean(bool bvalue)
// else SetMKBit(11 * 8 + 1, 500); {
//} if (!IsServerConnected())return;
// if (bvalue)SetMKBit(11 * 8 + 0, 500);
//void PurifierClient::SetPurify(bool bvalue) else SetMKBit(11 * 8 + 1, 500);
//{ }
// if (g_isDebug) {
// m_Stat.isPurifying->SetValue(bvalue); void PurifierClient::SetPurify(bool bvalue)
// } {
// if (!IsServerConnected())return; if (g_isDebug) {
// if (bvalue)SetMKBit(4 * 8 + 6, 3000); m_Stat.isPurifying->SetValue(bvalue);
// else SetMKBit(4 * 8 + 7, 3000); }
// if (!IsServerConnected())return;
//} if (bvalue)SetMKBit(4 * 8 + 6, 3000);
// else SetMKBit(4 * 8 + 7, 3000);
}
//void PurifierClient::ResetFilterTime() //void PurifierClient::ResetFilterTime()
//{ //{
// if (!IsServerConnected())return; // if (!IsServerConnected())return;

View File

@ -581,12 +581,12 @@ public:
void GetStat(Purifierstat_XT& stat); void GetStat(Purifierstat_XT& stat);
// void SetDedust(bool bvalue); //除尘启动或停止 void SetDedust(bool bvalue); //除尘启动或停止
// void SetBlowBack(bool bvalue); //反吹启动或停止 void SetBlowBack(bool bvalue); //反吹启动或停止
// void SetFilterDiscard(bool bvalue); //滤芯废处理 void SetFilterDiscard(bool bvalue); //滤芯废处理
// void SetFilterClean(bool bvalue); //滤芯清洗 void SetFilterClean(bool bvalue); //滤芯清洗
// void SetHopperClean(bool bvalue); //料斗清洗启动或停止 void SetHopperClean(bool bvalue); //料斗清洗启动或停止
// void SetPurify(bool bvalue); //一键清洗(除氧) void SetPurify(bool bvalue); //一键清洗(除氧)
// void SetBoxClean(bool bvalue); // void SetBoxClean(bool bvalue);
// void ResetFilterTime(); // void ResetFilterTime();
// void ClearHopperAlarm(); // void ClearHopperAlarm();

View File

@ -10,7 +10,8 @@ void DataHandle::DataCallBackProc(void* pthis, const ReadData& msg) {
DataHandle::DataHandle() DataHandle::DataHandle()
: m_dataCallBack(nullptr) : m_dataCallBack(nullptr)
, m_streamClient(nullptr){ , m_streamClient(nullptr)
, m_controller(nullptr){
} }
DataHandle::~DataHandle() { DataHandle::~DataHandle() {
@ -56,22 +57,44 @@ void DataHandle::UpdateSysParam(const ReadData& msg){
++it; ++it;
} }
SysParam::UnLck(); SysParam::UnLck();
} }
void DataHandle::DataCallBackHandle(const ReadData& msg) { void DataHandle::DataCallBackHandle(const ReadData& msg) {
switch (msg.dataType) { switch (msg.dataType) {
case SYSPARAMDATA: case SYSPARAMDATA:
UpdateSysParam(msg); UpdateSysParam(msg); break;
break;
case VERSIONRSP: case VERSIONRSP:
m_version = msg.its.front().strValue; m_version = msg.its.front().strValue; break;
break;
case IOSIGNALRSP: //io信号返回 case IOSIGNALRSP: //io信号返回
ConfigManager::Instance()->GetIoCfgWrapper()->Update(msg); ConfigManager::Instance()->GetIoCfgWrapper()->Update(msg); break;
break;
case POWERPARAM: case POWERPARAM:
m_controller->m_ComServer->m_PowerMeterClient->UpdateData(msg); m_controller->m_ComServer->m_PowerMeterClient->UpdateData(msg); break;
case CHILLERPARAM:
m_controller->m_ComServer->m_LaserChillerClient->UpdateData(msg); break;
case TEMPCTRLPARAM:
m_controller->m_ComServer->m_TempCtrlClient->UpdateData(msg); break;
case OXYGENPARAM:
m_controller->m_ComServer->m_OxygenClient->UpdateData(msg); break;
case POWDERSUPPLYSIMPLEPARAM:
m_controller->m_ComServer->m_SimpleSupplyClient->UpdateData(msg); break;
case UPSPARAM:
m_controller->m_ComServer->m_UPSClient->UpdateData(msg); break;
case SCANNERPOWERPARAM:
m_controller->m_ComServer->m_ScannerPowerClient->UpdateData(msg); break;
case POWERMETERPARAM:
m_controller->m_ComServer->m_PowerMeterClient->UpdateData(msg); break;
case LASERPARAM1: //激光1参数
m_controller->m_ComServer->m_LaserClients.at(0)->UpdateData(msg); break;
case LASERPARAM2: //激光2参数
m_controller->m_ComServer->m_LaserClients.at(1)->UpdateData(msg); break;
case LASERPARAM3: //激光3参数
m_controller->m_ComServer->m_LaserClients.at(2)->UpdateData(msg); break;
case LASERPARAM4: //激光4参数
m_controller->m_ComServer->m_LaserClients.at(3)->UpdateData(msg); break;
case LASERPARAM5: //激光5参数
m_controller->m_ComServer->m_LaserClients.at(4)->UpdateData(msg); break;
case LASERPARAM6: //激光6参数
m_controller->m_ComServer->m_LaserClients.at(5)->UpdateData(msg); break;
default:break; default:break;

View File

@ -20,11 +20,7 @@ enum READTYPE {
IOSIGNALRSP, //io信号返回数据 IOSIGNALRSP, //io信号返回数据
SYSPARAMDATA, //系统参数数据 SYSPARAMDATA, //系统参数数据
LASERCHILLER, //冷水机参数 LASERCHILLER, //冷水机参数
UPSPARAM, //ups参数
TEMPCTRLPARAM, //TempCtrl参数
OXYGENPARAM, //测氧参数
POWERMETERPARAM, //
LASERPARAM1, //激光1参数 LASERPARAM1, //激光1参数
LASERPARAM2, //激光2参数 LASERPARAM2, //激光2参数
@ -43,9 +39,18 @@ enum READTYPE {
SIMPLESUPPLYPARAM_V21, //供应参数v2.1 SIMPLESUPPLYPARAM_V21, //供应参数v2.1
SIMPLESUPPLYPARAM_V22, //供应参数v2.2 SIMPLESUPPLYPARAM_V22, //供应参数v2.2
SCANNERPOWERPARAM,
PURIFIERPARAM, //冷水机参数 PURIFIERPARAM, //冷水机参数
POWERPARAM, POWERPARAM, //
CHILLERPARAM, //冷却器参数
TEMPCTRLPARAM, //温控参数
OXYGENPARAM, //测氧参数
POWDERSUPPLYSIMPLEPARAM, //
UPSPARAM, //
SCANNERPOWERPARAM, //
POWERMETERPARAM, //
}; };
enum DATATYPE { enum DATATYPE {
@ -121,6 +126,7 @@ enum WRITETYPE {
IOSIGNAL, //io 信号 IOSIGNAL, //io 信号
RESETELEC, //PowerMeterClient RESETELEC, //PowerMeterClient
PURIFIERPARAMW, //净化器参数写入
}; };

View File

@ -220,6 +220,10 @@
<ClCompile Include="protobuf\stream.grpc.pb.cc" /> <ClCompile Include="protobuf\stream.grpc.pb.cc" />
<ClCompile Include="protobuf\stream.pb.cc" /> <ClCompile Include="protobuf\stream.pb.cc" />
<ClCompile Include="main.cpp" /> <ClCompile Include="main.cpp" />
<ClCompile Include="Purifier\BasePurifier.cpp" />
<ClCompile Include="Purifier\G4Purifier.cpp" />
<ClCompile Include="Purifier\HBD3Purifier.cpp" />
<ClCompile Include="Purifier\XTPurifier.cpp" />
<ClCompile Include="Registration\aes.c" /> <ClCompile Include="Registration\aes.c" />
<ClCompile Include="Registration\GetHDDSerial2.cpp" /> <ClCompile Include="Registration\GetHDDSerial2.cpp" />
<ClCompile Include="Registration\key.cpp" /> <ClCompile Include="Registration\key.cpp" />
@ -343,6 +347,10 @@
<ClInclude Include="PLC\SysParam.h" /> <ClInclude Include="PLC\SysParam.h" />
<ClInclude Include="protobuf\stream.grpc.pb.h" /> <ClInclude Include="protobuf\stream.grpc.pb.h" />
<ClInclude Include="protobuf\stream.pb.h" /> <ClInclude Include="protobuf\stream.pb.h" />
<ClInclude Include="Purifier\BasePurifier.h" />
<ClInclude Include="Purifier\G4Purifier.h" />
<ClInclude Include="Purifier\HBD3Purifier.h" />
<ClInclude Include="Purifier\XTPurifier.h" />
<ClInclude Include="Registration\aes.h" /> <ClInclude Include="Registration\aes.h" />
<ClInclude Include="Registration\aes.hpp" /> <ClInclude Include="Registration\aes.hpp" />
<ClInclude Include="Registration\HardDriveSerialNumber.h" /> <ClInclude Include="Registration\HardDriveSerialNumber.h" />

View File

@ -79,6 +79,9 @@
<Filter Include="external\SocketHandle"> <Filter Include="external\SocketHandle">
<UniqueIdentifier>{64396aff-4b41-4583-8574-3ad3c7009a6f}</UniqueIdentifier> <UniqueIdentifier>{64396aff-4b41-4583-8574-3ad3c7009a6f}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Purifier">
<UniqueIdentifier>{94712822-da22-4bd1-a56c-ee9e0094691b}</UniqueIdentifier>
</Filter>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ClCompile Include="protobuf\stream.grpc.pb.cc"> <ClCompile Include="protobuf\stream.grpc.pb.cc">
@ -378,6 +381,18 @@
<ClCompile Include="external\SocketHandle\SocketHandle.cpp"> <ClCompile Include="external\SocketHandle\SocketHandle.cpp">
<Filter>external\SocketHandle</Filter> <Filter>external\SocketHandle</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="Purifier\BasePurifier.cpp">
<Filter>Purifier</Filter>
</ClCompile>
<ClCompile Include="Purifier\G4Purifier.cpp">
<Filter>Purifier</Filter>
</ClCompile>
<ClCompile Include="Purifier\HBD3Purifier.cpp">
<Filter>Purifier</Filter>
</ClCompile>
<ClCompile Include="Purifier\XTPurifier.cpp">
<Filter>Purifier</Filter>
</ClCompile>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ClInclude Include="protobuf\stream.grpc.pb.h"> <ClInclude Include="protobuf\stream.grpc.pb.h">
@ -750,6 +765,18 @@
<ClInclude Include="external\SocketHandle\SocketHandle.h"> <ClInclude Include="external\SocketHandle\SocketHandle.h">
<Filter>external\SocketHandle</Filter> <Filter>external\SocketHandle</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="Purifier\BasePurifier.h">
<Filter>Purifier</Filter>
</ClInclude>
<ClInclude Include="Purifier\G4Purifier.h">
<Filter>Purifier</Filter>
</ClInclude>
<ClInclude Include="Purifier\HBD3Purifier.h">
<Filter>Purifier</Filter>
</ClInclude>
<ClInclude Include="Purifier\XTPurifier.h">
<Filter>Purifier</Filter>
</ClInclude>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<None Include="protobuf\stream.proto"> <None Include="protobuf\stream.proto">

View File

@ -5,11 +5,11 @@
#include "../LanguageManager.h" #include "../LanguageManager.h"
#include "../Logger.h" #include "../Logger.h"
#include "../global.h" #include "../global.h"
#include "../plc/SignalService.h" //#include "../plc/SignalService.h"
XTPurifier::XTPurifier(ScannerCtrl* scannerCtrl) XTPurifier::XTPurifier(void* scannerCtrl)
:m_ScannerCtrl(scannerCtrl) :/*m_ScannerCtrl(scannerCtrl)
, m_Client(NULL) ,*/ m_Client(NULL)
, m_PreConnectState(false) , m_PreConnectState(false)
, m_ManualCheckAirTightness(false) , m_ManualCheckAirTightness(false)
{ {
@ -26,23 +26,23 @@ XTPurifier::~XTPurifier()
void XTPurifier::Init() void XTPurifier::Init()
{ {
map<string, CommunicationCfg*>* cfg = ConfigManager::GetInstance()->GetCommunicationCfg(); //map<string, CommunicationCfg*>* cfg = ConfigManager::Instance()->GetCommunicationCfg();
m_RunCfg = ConfigManager::GetInstance()->GetRunCfg(); m_RunCfg = ConfigManager::Instance()->GetRunCfg();
m_IOCfgWrapper = ConfigManager::GetInstance()->GetIoCfgWrapper(); m_IOCfgWrapper = ConfigManager::Instance()->GetIoCfgWrapper();
m_MachineCfg = ConfigManager::GetInstance()->GetMachineCfg(); m_MachineCfg = ConfigManager::Instance()->GetMachineCfg();
m_AlarmCfgWrapper = ConfigManager::GetInstance()->GetAlarmCfg(); m_AlarmCfgWrapper = ConfigManager::Instance()->GetAlarmCfg();
m_Client = new PurifierClient((*cfg)["XT_PURIFIER"]); m_Client = new PurifierClient(/*(*cfg)["XT_PURIFIER"]*/);
m_Client->Init(); m_Client->Init();
ConfigManager::GetInstance()->AddComRefCfg(m_Client->GetConfig(), m_Client); //ConfigManager::Instance()->AddComRefCfg(m_Client->GetConfig(), m_Client);
m_Client->GetConfig()->m_Enable = true; //m_Client->GetConfig()->m_Enable = true;
if(m_Client->GetConfig()->m_Enable)m_Client->Startup(); //if(m_Client->GetConfig()->m_Enable)m_Client->Startup();
} }
void XTPurifier::AutoCtrlWhenDoorOpen() void XTPurifier::AutoCtrlWhenDoorOpen()
{ {
if (m_State.isDedusting) { if (m_State.isDedusting) {
m_Client->SetDedust(false); //m_Client->SetDedust(false);
int waitcount = 0; int waitcount = 0;
Purifierstat_XT xt; Purifierstat_XT xt;
while (waitcount < 60) { while (waitcount < 60) {
@ -56,7 +56,7 @@ void XTPurifier::AutoCtrlWhenDoorOpen()
} }
if(m_State.isPurifying) { if(m_State.isPurifying) {
m_Client->SetPurify(false); //m_Client->SetPurify(false);
int waitcount = 0; int waitcount = 0;
Purifierstat_XT xt; Purifierstat_XT xt;
while (waitcount < 60) { while (waitcount < 60) {
@ -1744,8 +1744,3 @@ void XTPurifier::DrawFinishReportRel()
ImGui::Dummy(ImVec2(0, 10)); ImGui::Dummy(ImVec2(0, 10));
}*/ }*/
void XTPurifier::SendToClients() {
m_Client->SendToClients(PURIFIERPARAM);
}

View File

@ -1,12 +1,13 @@
#pragma once #pragma once
#include "../Communication/PurifierClient.h" #include "../Communication/PurifierClient.h"
#include "../ScannerCtrl/ScannerCtrl.h" //#include "../ScannerCtrl/ScannerCtrl.h"
#include "../Controller/UIBean.h" #include "../UI/UIBean.h"
#include "BasePurifier.h"
class XTPurifier:public BasePurifier class XTPurifier:public BasePurifier
{ {
public: public:
XTPurifier(ScannerCtrl* scannerCtrl); XTPurifier(void* scannerCtrl = nullptr);
~XTPurifier(); ~XTPurifier();
void Init(); void Init();
void UpdateShowStat(); void UpdateShowStat();
@ -42,7 +43,7 @@ public:
//void DrawFinishReportRel(); //void DrawFinishReportRel();
int GetFilterUseTime(); int GetFilterUseTime();
void SendToClients(); //void SendToClients();
private: private:
//void DrawUserUI(); //void DrawUserUI();
//void DrawAdminUI(); //void DrawAdminUI();
@ -51,7 +52,7 @@ public:
protected: protected:
PurifierClient* m_Client; PurifierClient* m_Client;
Purifierstat_XT m_State; Purifierstat_XT m_State;
ScannerCtrl* m_ScannerCtrl; //ScannerCtrl* m_ScannerCtrl;
RunCfg* m_RunCfg; RunCfg* m_RunCfg;
IOCfgWrapper* m_IOCfgWrapper; IOCfgWrapper* m_IOCfgWrapper;

View File

@ -1,5 +1,9 @@
#include "Controller.h" #include "Controller.h"
#include "../config/ConfigManager.h" #include "../config/ConfigManager.h"
#include "../Purifier/XTPurifier.h"
#include "../Purifier/HBD3Purifier.h"
#include "../Purifier/G4Purifier.h"
Controller::Controller() Controller::Controller()
: m_Machine(nullptr) : m_Machine(nullptr)
@ -41,5 +45,21 @@ bool Controller::Init() {
m_ComServer = new ComServer(); //辅机服务 m_ComServer = new ComServer(); //辅机服务
m_ComServer->Init(); m_ComServer->Init();
switch (m_MachineCfg->m_PulifierType)
{
case PurifierTypeCfg::XT: {
m_Purifier = new XTPurifier(m_ScannerCtrl);
}break;
case PurifierTypeCfg::HBD_PURIFIER_3: {
m_Purifier = new HBD3Purifier(m_ScannerCtrl);
}break;
case PurifierTypeCfg::G4_PURIFIER: {
m_Purifier = new G4Purifier(m_ScannerCtrl);
}break;
default:
m_Purifier = new XTPurifier(m_ScannerCtrl);
}
m_Purifier->Init();
return true; return true;
} }

View File

@ -8,6 +8,7 @@
//#include "../PLC/CoreCommunication.h" //#include "../PLC/CoreCommunication.h"
//#include "../Config/ConfigManager.h" //#include "../Config/ConfigManager.h"
#include "../Communication/ComServer.h" #include "../Communication/ComServer.h"
#include "../Purifier/BasePurifier.h"
class Controller { class Controller {
public: public:
@ -31,9 +32,7 @@ public:
string m_version; //版本 string m_version; //版本
//MachineCtrl* m_MachineCtrl; //MachineCtrl* m_MachineCtrl;
//RemoteClient* m_RemoteClient;
ComServer* m_ComServer; ComServer* m_ComServer;
//BasePurifier* m_Purifier; BasePurifier* m_Purifier;
}; };

View File

@ -1777,8 +1777,6 @@ public:
Unlock(); Unlock();
} }
bool IsSafeDoorClose() { bool IsSafeDoorClose() {
bool rel = false; bool rel = false;
Lock(); Lock();

View File

@ -43,17 +43,10 @@ class IntData : public BaseData {
public: public:
IntData(const std::string& code, const std::string& context, int val = 0) IntData(const std::string& code, const std::string& context, int val = 0)
: BaseData(code, context), m_value(val) { : BaseData(code, context), m_value(val) {
//if (m_baseMp.find(code) != m_baseMp.end()) {
// printf("%s is repeated...", code.c_str());
//}
//else {
// m_baseMp.insert(make_pair(code, this));
//}
} }
~IntData() {} ~IntData() {}
void SetValue(int i) { m_value = i; } void SetValue(int i) { m_value = i; }
//void GetValue(DATATYPE& dataType,int& i) { dataType = iINT; i = m_value; }
DATATYPE GetDataTypeI() { return iINT; } DATATYPE GetDataTypeI() { return iINT; }
int GetValue() { return m_value; } int GetValue() { return m_value; }
virtual std::string GetValueStr() { return to_string(m_value); } virtual std::string GetValueStr() { return to_string(m_value); }

View File

@ -11,15 +11,15 @@ ChillerClient::ChillerClient(CommunicationCfg* pconfig,int* tp) :TcpClient(pconf
size_t ptrSize = sizeof(nullptr); //指针大小 size_t ptrSize = sizeof(nullptr); //指针大小
void* startPtr = &m_DoluyoChillerStat.m_startFlag + 1; void* startPtr = &m_DoluyoChillerStat.m_startFlag + 1;
size_t count = ((size_t)&m_DoluyoChillerStat.m_endFlag - (size_t)&startPtr) / ptrSize; size_t count = ((size_t)&m_DoluyoChillerStat.m_endFlag - (size_t)startPtr) / ptrSize;
InsertMp(startPtr, count); InsertMp(startPtr, count);
startPtr = &m_HansChillerstat.m_startFlag + 1; startPtr = &m_HansChillerstat.m_startFlag + 1;
count = ((size_t)&m_HansChillerstat.m_endFlag - (size_t)&startPtr) / ptrSize; count = ((size_t)&m_HansChillerstat.m_endFlag - (size_t)startPtr) / ptrSize;
InsertMp(startPtr, count); InsertMp(startPtr, count);
startPtr = &m_TongFeiStat.m_startFlag + 1; startPtr = &m_TongFeiStat.m_startFlag + 1;
count = ((size_t)&m_TongFeiStat.m_endFlag - (size_t)&startPtr) / ptrSize; count = ((size_t)&m_TongFeiStat.m_endFlag - (size_t)startPtr) / ptrSize;
InsertMp(startPtr, count); InsertMp(startPtr, count);
} }

View File

@ -197,32 +197,51 @@ void ComServer::Startup()
} }
void ComServer::SendToClients() { void ComServer::Shutdown()
m_LaserChillerClient->SendToClients(LASERCHILLER); {
m_UPSClient->SendToClients(UPSPARAM); if(m_TempCtrlClient) m_TempCtrlClient->Shutdown();
m_TempCtrlClient->SendToClients(TEMPCTRLPARAM); if (m_TempCtrlClient) m_OxygenClient->Shutdown();
m_OxygenClient->SendToClients(OXYGENPARAM); if (m_TempCtrlClient) m_LaserChillerClient->Shutdown();
if (m_TempCtrlClient) m_UPSClient->Shutdown();
int index = LASERPARAM1; for (size_t i = 0; i < m_LaserClients.size(); i++) {
vector<IPGLaserClientV1*> m_LaserClients; if (m_LaserClients[i])m_LaserClients[i]->Shutdown();
for (size_t i = 0; i < m_LaserClients.size(); ++i) {
m_LaserClients[i]->SendToClients((WRITETYPE)index++,"_"+to_string(i));
} }
if (m_MachineCfg->m_SupplyMachineVersion == MachineCfg::VERSION_1_0) { if(m_SimpleSupplyClient) m_SimpleSupplyClient->Shutdown();
m_SimpleSupplyClient->SendToClients(SIMPLESUPPLYPARAM_V10); if (m_ScannerPowerClient) m_ScannerPowerClient->Shutdown();
} if (m_PowerMeterClient) m_PowerMeterClient->Shutdown();
else if (m_MachineCfg->m_SupplyMachineVersion == MachineCfg::VERSION_2_1) {
m_SimpleSupplyClient->SendToClients(SIMPLESUPPLYPARAM_V21);
}
else if (m_MachineCfg->m_SupplyMachineVersion == MachineCfg::VERSION_2_2) {
m_SimpleSupplyClient->SendToClients(SIMPLESUPPLYPARAM_V22);
}
else {
m_SimpleSupplyClient->SendToClients(SIMPLESUPPLYPARAM_V21);
}
m_ScannerPowerClient->SendToClients(SCANNERPOWERPARAM);
m_PowerMeterClient->SendToClients(POWERMETERPARAM); }
void ComServer::SendToClients() {
if(m_LaserChillerClient) m_LaserChillerClient->SendToClients(LASERCHILLER);
if(m_UPSClient) m_UPSClient->SendToClients(UPSPARAM);
if(m_TempCtrlClient) m_TempCtrlClient->SendToClients(TEMPCTRLPARAM);
if(m_OxygenClient) m_OxygenClient->SendToClients(OXYGENPARAM);
int index = LASERPARAM1;
for (size_t i = 0; i < m_LaserClients.size(); ++i) {
if(m_LaserClients[i]) m_LaserClients[i]->SendToClients((WRITETYPE)index++,"_"+to_string(i));
}
if (m_SimpleSupplyClient) {
if (m_MachineCfg->m_SupplyMachineVersion == MachineCfg::VERSION_1_0) {
m_SimpleSupplyClient->SendToClients(SIMPLESUPPLYPARAM_V10);
}
else if (m_MachineCfg->m_SupplyMachineVersion == MachineCfg::VERSION_2_1) {
m_SimpleSupplyClient->SendToClients(SIMPLESUPPLYPARAM_V21);
}
else if (m_MachineCfg->m_SupplyMachineVersion == MachineCfg::VERSION_2_2) {
m_SimpleSupplyClient->SendToClients(SIMPLESUPPLYPARAM_V22);
}
else {
m_SimpleSupplyClient->SendToClients(SIMPLESUPPLYPARAM_V21);
}
}
if(m_ScannerPowerClient) m_ScannerPowerClient->SendToClients(SCANNERPOWERPARAM);
if(m_PowerMeterClient) m_PowerMeterClient->SendToClients(POWERMETERPARAM);
} }

View File

@ -22,6 +22,7 @@ public:
~ComServer(); ~ComServer();
void Init(); void Init();
void Startup(); void Startup();
void Shutdown();
void SendToClients(); void SendToClients();

View File

@ -321,7 +321,7 @@ IPGLaserClientV1::IPGLaserClientV1(CommunicationCfg* pconfig, AlarmCfg* laserAla
size_t ptrSize = sizeof(nullptr); //指针大小 size_t ptrSize = sizeof(nullptr); //指针大小
void* startPtr = &m_State.m_startFlag + 1; void* startPtr = &m_State.m_startFlag + 1;
size_t count = ((size_t)&m_State.m_endFlag - (size_t)&startPtr) / ptrSize; size_t count = ((size_t)&m_State.m_endFlag - (size_t)startPtr) / ptrSize;
InsertMp(startPtr, count); InsertMp(startPtr, count);
m_alarmCfgMp.insert(make_pair(m_LaserAlarm->m_Code, m_LaserAlarm)); m_alarmCfgMp.insert(make_pair(m_LaserAlarm->m_Code, m_LaserAlarm));

View File

@ -11,7 +11,7 @@ OxygenClient::OxygenClient(CommunicationCfg* pconfig) :TcpClient(pconfig)
//size_t ptrSize = sizeof(nullptr); //指针大小 //size_t ptrSize = sizeof(nullptr); //指针大小
//void* startPtr = &m_DoluyoChillerStat.m_startFlag + 1; //void* startPtr = &m_DoluyoChillerStat.m_startFlag + 1;
//size_t count = ((size_t)&m_DoluyoChillerStat.m_endFlag - (size_t)&startPtr) / ptrSize; //size_t count = ((size_t)&m_DoluyoChillerStat.m_endFlag - (size_t)startPtr) / ptrSize;
//InsertMp(startPtr, count); //InsertMp(startPtr, count);
} }
@ -25,7 +25,7 @@ OxygenClient::~OxygenClient()
//void OxygenClient::AddToBaseMp(const string& suff, Oxygenstat* stat) { //void OxygenClient::AddToBaseMp(const string& suff, Oxygenstat* stat) {
// size_t ptrSize = sizeof(nullptr); //指针大小 // size_t ptrSize = sizeof(nullptr); //指针大小
// void* startPtr = &stat->m_startFlag + 1; // void* startPtr = &stat->m_startFlag + 1;
// size_t count = ((size_t)&stat->m_endFlag - (size_t)&startPtr) / ptrSize; // size_t count = ((size_t)&stat->m_endFlag - (size_t)startPtr) / ptrSize;
// for (size_t i = 0; i < count; ++i) { // for (size_t i = 0; i < count; ++i) {
// BaseData* bd = *((BaseData**)((char*)startPtr + ptrSize * i)); // BaseData* bd = *((BaseData**)((char*)startPtr + ptrSize * i));
// string code = bd->GetCode() + suff; //区分key,添加上"_i" // string code = bd->GetCode() + suff; //区分key,添加上"_i"
@ -50,7 +50,7 @@ void OxygenClient::InitCommand()
size_t ptrSize = sizeof(nullptr); //指针大小 size_t ptrSize = sizeof(nullptr); //指针大小
void* startPtr = &stat->m_startFlag + 1; void* startPtr = &stat->m_startFlag + 1;
size_t count = ((size_t)&stat->m_endFlag - (size_t)&startPtr) / ptrSize; size_t count = ((size_t)&stat->m_endFlag - (size_t)startPtr) / ptrSize;
InsertMp(startPtr, count, "_" + to_string(i)); InsertMp(startPtr, count, "_" + to_string(i));
m_Oxygens[i] = stat; m_Oxygens[i] = stat;

View File

@ -23,11 +23,11 @@ PowderSupplySimpleClient::PowderSupplySimpleClient(CommunicationCfg* pconfig) :S
size_t ptrSize = sizeof(nullptr); //指针大小 size_t ptrSize = sizeof(nullptr); //指针大小
void* startPtr = &m_ClientState.m_startFlag + 1; void* startPtr = &m_ClientState.m_startFlag + 1;
size_t count = ((size_t)&m_ClientState.m_endFlag - (size_t)&startPtr) / ptrSize; size_t count = ((size_t)&m_ClientState.m_endFlag - (size_t)startPtr) / ptrSize;
InsertMp(startPtr, count); InsertMp(startPtr, count);
startPtr = &m_ShowAssist.m_startFlag + 1; startPtr = &m_ShowAssist.m_startFlag + 1;
count = ((size_t)&m_ShowAssist.m_endFlag - (size_t)&startPtr) / ptrSize; count = ((size_t)&m_ShowAssist.m_endFlag - (size_t)startPtr) / ptrSize;
InsertMp(startPtr, count); InsertMp(startPtr, count);
InsertMp(&m_PressureWriteValue, 1); InsertMp(&m_PressureWriteValue, 1);

View File

@ -8,11 +8,11 @@ TempCtrlClient::TempCtrlClient(CommunicationCfg* pconfig):TcpClient(pconfig)
size_t ptrSize = sizeof(nullptr); //指针大小 size_t ptrSize = sizeof(nullptr); //指针大小
void* startPtr = &m_Stat.m_startFlag + 1; void* startPtr = &m_Stat.m_startFlag + 1;
size_t count = ((size_t)&m_Stat.m_endFlag - (size_t)&startPtr) / ptrSize; size_t count = ((size_t)&m_Stat.m_endFlag - (size_t)startPtr) / ptrSize;
InsertMp(startPtr, count); InsertMp(startPtr, count);
startPtr = &m_Stat.alarm.m_startFlag + 1; startPtr = &m_Stat.alarm.m_startFlag + 1;
count = ((size_t)&m_Stat.alarm.m_endFlag - (size_t)&startPtr) / ptrSize; count = ((size_t)&m_Stat.alarm.m_endFlag - (size_t)startPtr) / ptrSize;
InsertMp(startPtr, count); InsertMp(startPtr, count);
} }

View File

@ -8,7 +8,7 @@ UPSClient::UPSClient(CommunicationCfg* pconfig) :TcpClient(pconfig)
size_t ptrSize = sizeof(nullptr); //指针大小 size_t ptrSize = sizeof(nullptr); //指针大小
void* startPtr = &m_Stat.m_startFlag + 1; void* startPtr = &m_Stat.m_startFlag + 1;
size_t count = ((size_t)&m_Stat.m_endFlag - (size_t)&startPtr) / ptrSize; size_t count = ((size_t)&m_Stat.m_endFlag - (size_t)startPtr) / ptrSize;
InsertMp(startPtr, count); InsertMp(startPtr, count);
} }

View File

@ -23,13 +23,21 @@ Controller::Controller()
Controller::~Controller() { Controller::~Controller() {
StopSend(); StopSend();
m_CoreCommunication->Shutdown();
DELP(m_CoreCommunication); DELP(m_CoreCommunication);
DELP(m_Axis); DELP(m_Axis);
DELP(m_StateCtrlWrapper); DELP(m_StateCtrlWrapper);
DELP(m_SysParamWrapper); DELP(m_SysParamWrapper);
DELP(m_AxisRecordWrapper); DELP(m_AxisRecordWrapper);
DELP(m_SignalStateWrapper); DELP(m_SignalStateWrapper);
if (m_ComServer) m_ComServer->Shutdown();
DELP(m_ComServer); DELP(m_ComServer);
DELP(m_RemoteClient);
DELP(m_MachineCtrl);
DELP(m_ScannerCtrl);
DELP(m_Purifier);
} }
@ -38,7 +46,13 @@ Controller::~Controller() {
void Controller::Init(){ void Controller::Init(){
BaseCtrl::SInit(); BaseCtrl::SInit();
jc.SInit(); m_jobController.SInit();
m_SysParamWrapper = new SysParamWrapper;
m_StateCtrlWrapper = new StateCtrlWrapper;
m_StateCtrlWrapper->Init(m_CoreCommunication);
m_AxisRecordWrapper = new AxisRecordWrapper;
m_AxisRecordWrapper->Init(m_CoreCommunication);
m_CoreCommunication = new CoreCommunication(); m_CoreCommunication = new CoreCommunication();
m_CoreCommunication->SetIOCfgWrapper(ConfigManager::GetInstance()->GetIoCfgWrapper()); m_CoreCommunication->SetIOCfgWrapper(ConfigManager::GetInstance()->GetIoCfgWrapper());
@ -49,11 +63,6 @@ void Controller::Init(){
m_CoreCommunication->Init(); m_CoreCommunication->Init();
m_CoreCommunication->Startup(); m_CoreCommunication->Startup();
m_SysParamWrapper = new SysParamWrapper;
m_StateCtrlWrapper = new StateCtrlWrapper;
m_StateCtrlWrapper->Init(m_CoreCommunication);
m_AxisRecordWrapper = new AxisRecordWrapper;
m_AxisRecordWrapper->Init(m_CoreCommunication);
m_SignalStateWrapper = new SignalStateWrapper(); m_SignalStateWrapper = new SignalStateWrapper();
m_Machine = ConfigManager::GetInstance()->GetMachine(); m_Machine = ConfigManager::GetInstance()->GetMachine();
@ -75,7 +84,7 @@ void Controller::Init(){
m_ComServer->Init(); m_ComServer->Init();
m_ScannerCtrl = new ScannerCtrl(/*m_ServoManager*/); m_ScannerCtrl = new ScannerCtrl(/*m_ServoManager*/);
m_ScannerCtrl->SetJobController(&jc); m_ScannerCtrl->SetJobController(&m_jobController);
m_ScannerCtrl->Init(); m_ScannerCtrl->Init();
m_ScannerCtrl->SetScannerPowerClient(m_ComServer->m_ScannerPowerClient); m_ScannerCtrl->SetScannerPowerClient(m_ComServer->m_ScannerPowerClient);
@ -130,3 +139,8 @@ void Controller::StopSend() {
if (m_sendParamThread.joinable()) m_sendParamThread.join(); if (m_sendParamThread.joinable()) m_sendParamThread.join();
} }
void Controller::UpdateFile(const string& filePath) {
m_jobController.LoadJob(filePath);
}

View File

@ -18,6 +18,8 @@ public:
void StartSend(); void StartSend();
void StopSend(); void StopSend();
void UpdateFile(const string& filePath);
public: public:
Machine* m_Machine; Machine* m_Machine;
CoreCommunication* m_CoreCommunication; CoreCommunication* m_CoreCommunication;
@ -32,7 +34,7 @@ public:
ComServer* m_ComServer; ComServer* m_ComServer;
BasePurifier* m_Purifier; BasePurifier* m_Purifier;
JobController jc; JobController m_jobController;
ScannerCtrl* m_ScannerCtrl; ScannerCtrl* m_ScannerCtrl;
MachineCfg* m_MachineCfg; MachineCfg* m_MachineCfg;

View File

@ -8,6 +8,14 @@ void DataHandle::DataCallBackProc(void* pthis, const ReadData& msg) {
p->DataCallBackHandle(msg); p->DataCallBackHandle(msg);
} }
void DataHandle::LayersDataCallBackProc(void* pthis,const ReadData& msg, ::stream::LayerData** response) {
DataHandle* p = (DataHandle*)pthis;
int index = atoi(msg.strValue.data());
int size = p->m_controller->m_jobController.GetJob()->GetMetaData()->GetLayersVec().size();
if (!p || index<1 || index>(int)size) return;
p->m_controller->m_jobController.GetJob()->GetMetaData()->GetLayerByIndex(index-1,response);
}
DataHandle::DataHandle() DataHandle::DataHandle()
: m_dataCallBack(nullptr) : m_dataCallBack(nullptr)
, m_streamServer(nullptr) , m_streamServer(nullptr)
@ -25,7 +33,6 @@ DataHandle::~DataHandle() {
DELP(m_streamServer); DELP(m_streamServer);
DELP(m_controller); DELP(m_controller);
} }
void DataHandle::Init() { void DataHandle::Init() {
@ -50,7 +57,7 @@ void DataHandle::Init() {
}); });
m_testTd.detach(); m_testTd.detach();
m_streamServer->SetCallBackFunc(this, &DataHandle::DataCallBackProc); m_streamServer->SetCallBackFunc(this, &DataHandle::DataCallBackProc, &DataHandle::LayersDataCallBackProc);
m_streamServer->Init(); m_streamServer->Init();
m_controller = new Controller(); m_controller = new Controller();

View File

@ -3,9 +3,11 @@
#include "StreamServer.h" #include "StreamServer.h"
#include "../Config/ConfigManager.h" #include "../Config/ConfigManager.h"
#include "../Controller/Controller.h" #include "../Controller/Controller.h"
#include "../job/MetaData.h"
class DataHandle{ class DataHandle{
typedef void (*DataCallBack)(void* pthis, const ReadData& msg); typedef void (*DataCallBack)(void* pthis, const ReadData& msg);
typedef void (*LayersDataCallBack)(void* pthis, const ReadData& msg, ::stream::LayerData** response);
public: public:
DataHandle(); DataHandle();
~DataHandle(); ~DataHandle();
@ -15,7 +17,7 @@ public:
void Stop(); void Stop();
static void DataCallBackProc(void* pthis, const ReadData& msg); static void DataCallBackProc(void* pthis, const ReadData& msg);
static void LayersDataCallBackProc(void* pthis, const ReadData& msg,::stream::LayerData** response);
private: private:
DataCallBack m_dataCallBack; DataCallBack m_dataCallBack;
std::thread m_testTd; std::thread m_testTd;

View File

@ -1,6 +1,7 @@
#pragma once #pragma once
#include <string> #include <string>
#include <list> #include <list>
#include <vector>
enum READTYPE { enum READTYPE {
GET = 0, GET = 0,
@ -43,6 +44,8 @@ enum READTYPE {
IOSIGNAL, //io 信号 IOSIGNAL, //io 信号
RESETELEC, //PowerMeterClient RESETELEC, //PowerMeterClient
LAYERDATAREQ, //layer数据请求
}; };
enum DATATYPE { enum DATATYPE {
@ -128,3 +131,46 @@ struct WriteData {
WriteData(WRITETYPE dt,const std::list<Item>& its ) WriteData(WRITETYPE dt,const std::list<Item>& its )
: dataType(dt), items(its){} : dataType(dt), 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**************************/

View File

@ -1,4 +1,5 @@
#include "StreamServer.h" #include "StreamServer.h"
#include "../job/MetaData.h"
StreamServer::StreamServer(Machine* p) StreamServer::StreamServer(Machine* p)
: m_port(50010) : m_port(50010)
@ -17,6 +18,25 @@ StreamServer::~StreamServer() {
} }
//回复后连接中断
::grpc::Status StreamServer::Simple(::grpc::ServerContext* context, const ::stream::RequestInfo* request, ::stream::LayerData* response) {
//MetaData::Layer* pData = nullptr;
ReadData readData;
readData.dataType = (READTYPE)(request->datatype());
readData.nameKey = request->namekey();
readData.strValue = request->strvalue();
readData.valueType = (DATATYPE)request->valuetype();
if ((READTYPE)(request->datatype()) == LAYERDATAREQ) {
if (m_layerDataCallBack)
m_layerDataCallBack(m_handlePtr, readData, &response);
}
return Status::OK;
}
Status StreamServer::AllStream(ServerContext* context, grpc::ServerReaderWriter<ResponseInfo, RequestInfo>* stream) { Status StreamServer::AllStream(ServerContext* context, grpc::ServerReaderWriter<ResponseInfo, RequestInfo>* stream) {
ClientInfo* cinfo = new ClientInfo(); ClientInfo* cinfo = new ClientInfo();
@ -62,7 +82,6 @@ Status StreamServer::AllStream(ServerContext* context, grpc::ServerReaderWriter<
paramInfo->set_strvalue((*wd).strValue); paramInfo->set_strvalue((*wd).strValue);
paramInfo->set_valuetype((stream::TYPE)(*wd).valueType); paramInfo->set_valuetype((stream::TYPE)(*wd).valueType);
} }
stream->Write(response); stream->Write(response);
} }
else { else {
@ -116,7 +135,8 @@ void StreamServer::Run() {
void StreamServer::Stop() { void StreamServer::Stop() {
m_server->Shutdown(); if(m_server.get() != nullptr)
m_server->Shutdown();
if (m_listenTd.joinable()) { if (m_listenTd.joinable()) {
m_listenTd.join(); m_listenTd.join();
} }

View File

@ -19,7 +19,7 @@ using stream::ResponseInfo;
class StreamServer final : public Stream::Service { class StreamServer final : public Stream::Service {
typedef void (*DataCallBack)(void* pthis,const ReadData& msg); typedef void (*DataCallBack)(void* pthis,const ReadData& msg);
typedef void (*ClientStateCallBack)(void* pthis,const ReadData& msg); typedef void (*LayerDataCallBack)(void* pthis, const ReadData& msg, ::stream::LayerData** response);
public: public:
@ -30,31 +30,21 @@ public:
void Run(); void Run();
void Stop(); void Stop();
void SetCallBackFunc(void* pdata,DataCallBack dataCallBack) { void SetCallBackFunc(void* pdata,DataCallBack dataCallBack, LayerDataCallBack layerCB) {
m_dataCallBack = dataCallBack; m_dataCallBack = dataCallBack;
m_handlePtr = pdata; m_handlePtr = pdata;
m_layerDataCallBack = layerCB;
} }
//ClientInfo* GetClient() {
// std::lock_guard<std::mutex> lck(m_clientMutex);
// return m_clientList.empty() ? nullptr : m_clientList.front();
//}
//ClientInfo* GetAllClient() {
// std::lock_guard<std::mutex> lck(m_clientMutex);
// return m_clientList.front();
//}
private: private:
Status AllStream(ServerContext* context, grpc::ServerReaderWriter<ResponseInfo, RequestInfo>* stream) override; Status AllStream(ServerContext* context, grpc::ServerReaderWriter<ResponseInfo, RequestInfo>* stream) override;
::grpc::Status Simple(::grpc::ServerContext* context, const ::stream::RequestInfo* request, ::stream::LayerData* response);
private: private:
//std::mutex m_clientMutex;
//std::list<ClientInfo*> m_clientList;
std::thread m_checkCloseTd; //检测客户端关闭线程 std::thread m_checkCloseTd; //检测客户端关闭线程
bool m_checkQuitFlag; bool m_checkQuitFlag;
DataCallBack m_dataCallBack; DataCallBack m_dataCallBack;
LayerDataCallBack m_layerDataCallBack;
int m_port; //监听端口 int m_port; //监听端口
void* m_handlePtr; void* m_handlePtr;

View File

@ -11363,10 +11363,10 @@ void HBD1000::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
m_SignalStateWrapper->m_Clean3RConnectAlarm = new SysParamBool(flag++, 1, cc, u8"清粉3R对接位失效异常", "Clean3RConnectAlarm"); m_SignalStateWrapper->m_Clean3RConnectAlarm = new SysParamBool(flag++, 1, cc, u8"清粉3R对接位失效异常", "Clean3RConnectAlarm");
m_SignalStateWrapper->m_Clean3RCombineAlarm = new SysParamBool(flag++, 1, cc, u8"清粉3R贴合感应失效异常", "Clean3RCombineAlarm"); m_SignalStateWrapper->m_Clean3RCombineAlarm = new SysParamBool(flag++, 1, cc, u8"清粉3R贴合感应失效异常", "Clean3RCombineAlarm");
m_SignalStateWrapper->m_Clean3RDisableAlarm = new SysParamBool(flag++, 1, cc, u8"清粉3R失效异常", "Clean3RDisableAlarm"); m_SignalStateWrapper->m_Clean3RDisableAlarm = new SysParamBool(flag++, 1, cc, u8"清粉3R失效异常", "Clean3RDisableAlarm");
m_SignalStateWrapper->m_ArmFrontLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴前限位触发警示", "ArmFrontLimit"); m_SignalStateWrapper->m_ArmFrontLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴前限位触发警示", "ArmFrontLimitSign");
m_SignalStateWrapper->m_ArmBackLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴后限位触发警示", "ArmBackLimit"); m_SignalStateWrapper->m_ArmBackLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴后限位触发警示", "ArmBackLimitSign");
m_SignalStateWrapper->m_LoadAxisLeftLimit = new SysParamBool(flag++, 1, cc, u8"移载轴左限位触发警示", "LoadAxisLeftLimit"); m_SignalStateWrapper->m_LoadAxisLeftLimit = new SysParamBool(flag++, 1, cc, u8"移载轴左限位触发警示", "LoadAxisLeftLimitSign");
m_SignalStateWrapper->m_LoadAxisRightLimit = new SysParamBool(flag++, 1, cc, u8"移载轴右限位触发警示", "LoadAxisRightLimit"); m_SignalStateWrapper->m_LoadAxisRightLimit = new SysParamBool(flag++, 1, cc, u8"移载轴右限位触发警示", "LoadAxisRightLimitSign");
m_SignalStateWrapper->m_LoadAxisSearchEdgeDisableAlarm = new SysParamBool(flag++, 1, cc, u8"移载寻边感应器失效异常", "LoadAxisSearchEdgeDisableAlarm"); m_SignalStateWrapper->m_LoadAxisSearchEdgeDisableAlarm = new SysParamBool(flag++, 1, cc, u8"移载寻边感应器失效异常", "LoadAxisSearchEdgeDisableAlarm");
m_SignalStateWrapper->m_LoadAxisInnertOnAlarm = new SysParamBool(flag++, 1, cc, u8"移载插销气缸插紧不到位异常", "LoadAxisInnertOnAlarm"); m_SignalStateWrapper->m_LoadAxisInnertOnAlarm = new SysParamBool(flag++, 1, cc, u8"移载插销气缸插紧不到位异常", "LoadAxisInnertOnAlarm");
m_SignalStateWrapper->m_LoadAxisInnertOffAlarm = new SysParamBool(flag++, 1, cc, u8"移载插销气缸松开不到位异常", "LoadAxisInnertOffAlarm"); m_SignalStateWrapper->m_LoadAxisInnertOffAlarm = new SysParamBool(flag++, 1, cc, u8"移载插销气缸松开不到位异常", "LoadAxisInnertOffAlarm");

View File

@ -4341,8 +4341,8 @@ void HBD1200::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
flag++; flag++;
flag++; flag++;
m_SignalStateWrapper->m_CleanTrackPosDisableAlarm = new SysParamBool(flag++, 1, cc, u8"轨道清粉位失效异常","CleanTrackPosDisableAlarm"); m_SignalStateWrapper->m_CleanTrackPosDisableAlarm = new SysParamBool(flag++, 1, cc, u8"轨道清粉位失效异常","CleanTrackPosDisableAlarm");
m_SignalStateWrapper->m_CleanLiftStopAlarm = new SysParamBool(flag++, 1, cc, u8"清粉升降急停异常",""); m_SignalStateWrapper->m_CleanLiftStopAlarm = new SysParamBool(flag++, 1, cc, u8"清粉升降急停异常","CleanLiftStopAlarm");
m_SignalStateWrapper->m_LoadHandPosSensorDiable = new SysParamBool(flag++, 1, cc, u8"移载吊装位感应器失效", ""); m_SignalStateWrapper->m_LoadHandPosSensorDiable = new SysParamBool(flag++, 1, cc, u8"移载吊装位感应器失效", "LoadHandPosSensorDiable");
m_SignalStateWrapper->m_MainPowerLossCheckAlarm = new SysParamBool(flag++, 1, cc, u8"主电源缺相检测异常", "MainPowerLossCheckAlarm"); m_SignalStateWrapper->m_MainPowerLossCheckAlarm = new SysParamBool(flag++, 1, cc, u8"主电源缺相检测异常", "MainPowerLossCheckAlarm");
m_SignalStateWrapper->m_PrintCabinLockDisableAlarm = new SysParamBool(flag++, 1, cc, u8"打印舱电锁感应异常", "PrintCabinLockDisableAlarm"); m_SignalStateWrapper->m_PrintCabinLockDisableAlarm = new SysParamBool(flag++, 1, cc, u8"打印舱电锁感应异常", "PrintCabinLockDisableAlarm");
@ -4364,10 +4364,10 @@ void HBD1200::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
flag++; flag++;
flag++; flag++;
flag++; flag++;
m_SignalStateWrapper->m_ArmFrontLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴前限位触发警示","ArmFrontLimit"); m_SignalStateWrapper->m_ArmFrontLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴前限位触发警示","ArmFrontLimitSign");
m_SignalStateWrapper->m_ArmBackLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴后限位触发警示", "ArmBackLimit"); m_SignalStateWrapper->m_ArmBackLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴后限位触发警示", "ArmBackLimitSign");
m_SignalStateWrapper->m_LoadAxisLeftLimit = new SysParamBool(flag++, 1, cc, u8"移载轴左限位触发警示", "LoadAxisLeftLimit"); m_SignalStateWrapper->m_LoadAxisLeftLimit = new SysParamBool(flag++, 1, cc, u8"移载轴左限位触发警示", "LoadAxisLeftLimitSign");
m_SignalStateWrapper->m_LoadAxisRightLimit = new SysParamBool(flag++, 1, cc, u8"移载轴右限位触发警示", "LoadAxisRightLimit "); m_SignalStateWrapper->m_LoadAxisRightLimit = new SysParamBool(flag++, 1, cc, u8"移载轴右限位触发警示", "LoadAxisRightLimitSign");
flag++; flag++;
flag++; flag++;
flag++; flag++;
@ -4640,7 +4640,7 @@ void HBD1200::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
flag = 1; flag = 1;
m_SignalStateWrapper->m_UseSupplySearchEdge = new SysParamBool(flag++, 68, cc, u8"使用滚粉轴寻边", "UseSupplySearchEdge"); m_SignalStateWrapper->m_UseSupplySearchEdge = new SysParamBool(flag++, 68, cc, u8"使用滚粉轴寻边", "UseSupplySearchEdge");
m_SignalStateWrapper->m_SheildCylinderFixSensor = new SysParamBool(flag++, 68, cc, u8"屏蔽缸体固定定位感应器",""); m_SignalStateWrapper->m_SheildCylinderFixSensor = new SysParamBool(flag++, 68, cc, u8"屏蔽缸体固定定位感应器","SheildCylinderFixSensor");
//m_plcMp.insert(make_pair("UseSupplySearchEdge", DValue(m_SignalStateWrapper->m_UseSupplySearchEdge))); //m_plcMp.insert(make_pair("UseSupplySearchEdge", DValue(m_SignalStateWrapper->m_UseSupplySearchEdge)));
//m_plcMp.insert(make_pair("SheildCylinderFixSensor", DValue(m_SignalStateWrapper->m_SheildCylinderFixSensor))); //m_plcMp.insert(make_pair("SheildCylinderFixSensor", DValue(m_SignalStateWrapper->m_SheildCylinderFixSensor)));
flag++; flag++;

View File

@ -4287,10 +4287,10 @@ void HBD1200OLD::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
flag++; flag++;
m_SignalStateWrapper->m_HandPlatformCloseAlarm = new SysParamBool(flag++, 1, cc,u8"吊装盖板关闭异常","HandPlatformCloseAlarm"); m_SignalStateWrapper->m_HandPlatformCloseAlarm = new SysParamBool(flag++, 1, cc,u8"吊装盖板关闭异常","HandPlatformCloseAlarm");
flag = 64 * 8 + 3; flag = 64 * 8 + 3;
m_SignalStateWrapper->m_ArmFrontLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴前限位触发警示", "ArmFrontLimit"); m_SignalStateWrapper->m_ArmFrontLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴前限位触发警示", "ArmFrontLimitSign");
m_SignalStateWrapper->m_ArmBackLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴后限位触发警示", "ArmBackLimit"); m_SignalStateWrapper->m_ArmBackLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴后限位触发警示", "ArmBackLimitSign");
m_SignalStateWrapper->m_LoadAxisLeftLimit = new SysParamBool(flag++, 1, cc, u8"移载轴左限位触发警示", "LoadAxisLeftLimit"); m_SignalStateWrapper->m_LoadAxisLeftLimit = new SysParamBool(flag++, 1, cc, u8"移载轴左限位触发警示", "LoadAxisLeftLimitSign");
m_SignalStateWrapper->m_LoadAxisRightLimit = new SysParamBool(flag++, 1, cc, u8"移载轴右限位触发警示", "LoadAxisRightLimit"); m_SignalStateWrapper->m_LoadAxisRightLimit = new SysParamBool(flag++, 1, cc, u8"移载轴右限位触发警示", "LoadAxisRightLimitSign");
flag++; flag++;
flag++; flag++;
flag++; flag++;

View File

@ -4633,10 +4633,10 @@ void HBD1500::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
flag++; flag++;
flag++; flag++;
m_SignalStateWrapper->m_Clean3RDisableAlarm = new SysParamBool(flag++, 1, cc, u8"清粉3R失效异常", "Clean3RDisableAlarm"); m_SignalStateWrapper->m_Clean3RDisableAlarm = new SysParamBool(flag++, 1, cc, u8"清粉3R失效异常", "Clean3RDisableAlarm");
m_SignalStateWrapper->m_ArmFrontLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴前限位触发警示", "ArmFrontLimit"); m_SignalStateWrapper->m_ArmFrontLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴前限位触发警示", "ArmFrontLimitSign");
m_SignalStateWrapper->m_ArmBackLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴后限位触发警示", "ArmBackLimit"); m_SignalStateWrapper->m_ArmBackLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴后限位触发警示", "ArmBackLimitSign");
m_SignalStateWrapper->m_LoadAxisLeftLimit = new SysParamBool(flag++, 1, cc, u8"移载轴左限位触发警示", "LoadAxisLeftLimit"); m_SignalStateWrapper->m_LoadAxisLeftLimit = new SysParamBool(flag++, 1, cc, u8"移载轴左限位触发警示", "LoadAxisLeftLimitSign");
m_SignalStateWrapper->m_LoadAxisRightLimit = new SysParamBool(flag++, 1, cc, u8"移载轴右限位触发警示", "LoadAxisRightLimit"); m_SignalStateWrapper->m_LoadAxisRightLimit = new SysParamBool(flag++, 1, cc, u8"移载轴右限位触发警示", "LoadAxisRightLimitSign");
m_SignalStateWrapper->m_LoadAxisSearchEdgeDisableAlarm = new SysParamBool(flag++, 1, cc, u8"移载寻边感应器失效异常", "LoadAxisSearchEdgeDisableAlarm"); m_SignalStateWrapper->m_LoadAxisSearchEdgeDisableAlarm = new SysParamBool(flag++, 1, cc, u8"移载寻边感应器失效异常", "LoadAxisSearchEdgeDisableAlarm");
flag++; flag++;
flag++; flag++;

View File

@ -1411,10 +1411,10 @@ void HBDE1000::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
flag++; flag++;
flag++; flag++;
flag++; flag++;
m_SignalStateWrapper->m_ArmFrontLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴前限位触发警示", "ArmFrontLimit"); m_SignalStateWrapper->m_ArmFrontLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴前限位触发警示", "ArmFrontLimitSign");
m_SignalStateWrapper->m_ArmBackLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴后限位触发警示", "ArmBackLimit"); m_SignalStateWrapper->m_ArmBackLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴后限位触发警示", "ArmBackLimitSign");
m_SignalStateWrapper->m_LoadAxisLeftLimit = new SysParamBool(flag++, 1, cc, u8"移载轴左限位触发警示", "LoadAxisLeftLimit"); m_SignalStateWrapper->m_LoadAxisLeftLimit = new SysParamBool(flag++, 1, cc, u8"移载轴左限位触发警示", "LoadAxisLeftLimitSign");
m_SignalStateWrapper->m_LoadAxisRightLimit = new SysParamBool(flag++, 1, cc, u8"移载轴右限位触发警示", "LoadAxisRightLimit"); m_SignalStateWrapper->m_LoadAxisRightLimit = new SysParamBool(flag++, 1, cc, u8"移载轴右限位触发警示", "LoadAxisRightLimitSign");
flag++; flag++;
flag++; flag++;
flag++; flag++;

View File

@ -433,15 +433,17 @@ void CoreCommunication::SendProc() {
its.clear(); its.clear();
auto ioItem = m_IOCfgWrapper->m_IOCfgMap.begin(); auto ioItem = m_IOCfgWrapper->m_IOCfgMap.begin();
while (ioItem != m_IOCfgWrapper->m_IOCfgMap.end()) { while (ioItem != m_IOCfgWrapper->m_IOCfgMap.end()) {
valStr = to_string(ioItem->second->IsActive()); if (ioItem->second) {
its.emplace_back(Item{ ioItem->first,valStr,iBOOL }); valStr = to_string(ioItem->second->IsActive());
++param; its.emplace_back(Item{ ioItem->first,valStr,iBOOL });
}
++ioItem;
} }
ClientWrapper::Instance()->PushAllClient(new WriteData(SYSPARAMDATA, its)); ClientWrapper::Instance()->PushAllClient(new WriteData(SYSPARAMDATA, its));
int count = 10; int count = 10;
while(!m_sendTdExitFlag && count--) { while(!m_sendTdExitFlag && count--) {
std::this_thread::sleep_for(std::chrono::milliseconds(10)); std::this_thread::sleep_for(std::chrono::milliseconds(20));
} }
} }
} }

View File

@ -54,7 +54,7 @@ SysParamFloat::SysParamFloat(int addr, int num, PLCReveiver* cc, const string& c
m_CtrlCommand->isNeedDel = false; m_CtrlCommand->isNeedDel = false;
if (m_sysParamMp.find(code) != m_sysParamMp.end()) { if (m_sysParamMp.find(code) != m_sysParamMp.end()) {
printf("%s is repeated...", code.c_str()); printf("%d %s is repeated...\n",__LINE__, code.c_str());
} }
else { else {
m_sysParamMp.insert(make_pair(code, DValue(this))); m_sysParamMp.insert(make_pair(code, DValue(this)));
@ -86,7 +86,7 @@ SysParamFloat::~SysParamFloat()
SysParamFloatUI::SysParamFloatUI(SysParamFloat* sp) :SysParamFloat(sp) { SysParamFloatUI::SysParamFloatUI(SysParamFloat* sp) :SysParamFloat(sp) {
if (m_sysParamMp.find("UI" + sp->GetCode()) != m_sysParamMp.end()) { if (m_sysParamMp.find("UI" + sp->GetCode()) != m_sysParamMp.end()) {
printf("%s is repeated...", ("UI" + sp->GetCode()).c_str()); printf("%d %s is repeated...\n", __LINE__, ("UI" + sp->GetCode()).c_str());
} }
else { else {
m_sysParamMp.insert(make_pair("UI" + sp->GetCode(), DValue(this))); m_sysParamMp.insert(make_pair("UI" + sp->GetCode(), DValue(this)));
@ -95,7 +95,7 @@ SysParamFloatUI::SysParamFloatUI(SysParamFloat* sp) :SysParamFloat(sp) {
SysParamWordUI::SysParamWordUI(SysParamWord* sp) :SysParamWord(sp) { SysParamWordUI::SysParamWordUI(SysParamWord* sp) :SysParamWord(sp) {
if (m_sysParamMp.find("UI" + sp->GetCode()) != m_sysParamMp.end()) { if (m_sysParamMp.find("UI" + sp->GetCode()) != m_sysParamMp.end()) {
printf("%s is repeated...", ("UI" + sp->GetCode()).c_str()); printf("%d %s is repeated...\n", __LINE__, ("UI" + sp->GetCode()).c_str());
} }
else { else {
m_sysParamMp.insert(make_pair("UI" + sp->GetCode(), DValue(this))); m_sysParamMp.insert(make_pair("UI" + sp->GetCode(), DValue(this)));
@ -118,7 +118,7 @@ SysParamWord::SysParamWord(int addr, int num, PLCReveiver* cc, const string& con
m_CtrlCommand->isNeedDel = false; m_CtrlCommand->isNeedDel = false;
if (m_sysParamMp.find(code) != m_sysParamMp.end()) { if (m_sysParamMp.find(code) != m_sysParamMp.end()) {
printf("%s is repeated...", code.c_str()); printf("%d %s is repeated...\n", __LINE__, code.c_str());
} }
else { else {
m_sysParamMp.insert(make_pair(code, DValue(this))); m_sysParamMp.insert(make_pair(code, DValue(this)));
@ -159,8 +159,9 @@ SysParamBool::SysParamBool(int addr, int num, PLCReveiver* cc,const string& cont
m_CtrlCommand->m_Ref = this; m_CtrlCommand->m_Ref = this;
m_CtrlCommand->isNeedDel = false; m_CtrlCommand->isNeedDel = false;
if (m_sysParamMp.find(code) != m_sysParamMp.end()) { if (m_sysParamMp.find(code) != m_sysParamMp.end()) {
printf("%s is repeated...", code.c_str()); printf("%d %s is repeated...\n", __LINE__, code.c_str());
} }
else { else {
m_sysParamMp.insert(make_pair(code, DValue(this))); m_sysParamMp.insert(make_pair(code, DValue(this)));
@ -197,7 +198,7 @@ SysParamInt::SysParamInt(int addr, int num, PLCReveiver* cc, const string& conte
m_CtrlCommand->isNeedDel = false; m_CtrlCommand->isNeedDel = false;
if (m_sysParamMp.find(code) != m_sysParamMp.end()) { if (m_sysParamMp.find(code) != m_sysParamMp.end()) {
printf("%s is repeated...", code.c_str()); printf("%d %s is repeated...\n", __LINE__, code.c_str());
} }
else { else {
m_sysParamMp.insert(make_pair(code, DValue(this))); m_sysParamMp.insert(make_pair(code, DValue(this)));
@ -754,171 +755,190 @@ void SysParamWrapper::GetAxisData(AxisData& ad)
void StateCtrlWrapper::Init(PLCReveiver* cc) void StateCtrlWrapper::Init(PLCReveiver* cc)
{ {
int addr = 0; int addr = 0;
m_MoldMainServoOn = new SysParamBool(addr++, 14, cc); //打印主轴伺服ON_RW m_MoldMainServoOn = new SysParamBool(addr++, 14, cc, u8"打印主轴伺服ON_RW", "MoldMainServoOn");
m_MoldMainServoHomeIndexOn = new SysParamBool(addr++, 14, cc); //打印主轴伺服ON_RW m_MoldMainServoHomeIndexOn = new SysParamBool(addr++, 14, cc, u8"打印主轴伺服ON_RW", "MoldMainServoHomeIndexOn");
m_MoldMainServoReset = new SysParamBool(addr++, 14, cc); //打印主轴伺服复位_RW m_MoldMainServoReset = new SysParamBool(addr++, 14, cc, u8"打印主轴伺服复位_RW", "MoldMainServoReset");
m_MoldMainServoBreakOn = new SysParamBool(addr++, 14, cc); //打印主轴伺服刹车_RW m_MoldMainServoBreakOn = new SysParamBool(addr++, 14, cc, u8"打印主轴伺服刹车_RW", "MoldMainServoBreakOn");
m_MoldMainBindSlaveOn = new SysParamBool(addr++, 14, cc); //打印主轴伺服绑定从轴_RW m_MoldMainBindSlaveOn = new SysParamBool(addr++, 14, cc, u8"打印主轴伺服绑定从轴_RW", "MoldMainBindSlaveOn");
m_MoldMainMoveUp = new SysParamBool(addr++, 14, cc); //打印主轴相对上运动_手动_RW m_MoldMainMoveUp = new SysParamBool(addr++, 14, cc, u8"打印主轴相对上运动_手动_RW", "MoldMainMoveUp");
m_MoldMainMoveDown = new SysParamBool(addr++, 14, cc); //打印主轴相对下运动_手动_RW m_MoldMainMoveDown = new SysParamBool(addr++, 14, cc, u8"打印主轴相对下运动_手动_RW", "MoldMainMoveDown");
m_MoldMainMoveUpContinue = new SysParamBool(addr++, 14, cc); //打印主轴上JOG_手动_RW m_MoldMainMoveUpContinue = new SysParamBool(addr++, 14, cc, u8"打印主轴上JOG_手动_RW", "MoldMainMoveUpContinue");
m_MoldMainMoveDownContinue = new SysParamBool(addr++, 14, cc); //打印主轴下JOG_手动_RW m_MoldMainMoveDownContinue = new SysParamBool(addr++, 14, cc, u8"打印主轴下JOG_手动_RW", "MoldMainMoveDownContinue");
m_MoldMainMoveAbsPos = new SysParamBool(addr++, 14, cc); //打印主轴绝对值运动_手动_RW m_MoldMainMoveAbsPos = new SysParamBool(addr++, 14, cc, u8"打印主轴绝对值运动_手动_RW", "MoldMainMoveAbsPos");
m_MoldMainMotionStop = new SysParamBool(addr++, 14, cc); //打印主轴急停_RW m_MoldMainMotionStop = new SysParamBool(addr++, 14, cc, u8"打印主轴急停_RW", "MoldMainMotionStop");
addr += 37; addr += 37;
m_MoldSlaveServoOn = new SysParamBool(addr++, 14, cc); //打印从轴伺服ON_RW m_MoldSlaveServoOn = new SysParamBool(addr++, 14, cc, u8"打印从轴伺服ON_RW", "MoldSlaveServoOn");
m_MoldSlaveServoHomeIndexOn = new SysParamBool(addr++, 14, cc); //打印从轴伺服成立原点_RW m_MoldSlaveServoHomeIndexOn = new SysParamBool(addr++, 14, cc, u8"打印从轴伺服成立原点_RW", "MoldSlaveServoHomeIndexOn");
m_MoldSlaveServoReset = new SysParamBool(addr++, 14, cc); //打印从轴伺服复位_RW m_MoldSlaveServoReset = new SysParamBool(addr++, 14, cc, u8"打印从轴伺服复位_RW", "MoldSlaveServoReset");
m_MoldSlaveServoBreakOn = new SysParamBool(addr++, 14, cc); //打印从轴伺服刹车_RW m_MoldSlaveServoBreakOn = new SysParamBool(addr++, 14, cc, u8"打印从轴伺服刹车_RW", "MoldSlaveServoBreakOn");
m_MoldSlaveUnbind = new SysParamBool(addr++, 14, cc); //打印从轴伺服解除绑定_RW m_MoldSlaveUnbind = new SysParamBool(addr++, 14, cc, u8"打印从轴伺服解除绑定_RW", "MoldSlaveUnbind");
m_MoldSlaveMoveUp = new SysParamBool(addr++, 14, cc); //打印从轴相对上运动_手动_RW m_MoldSlaveMoveUp = new SysParamBool(addr++, 14, cc, u8"打印从轴相对上运动_手动_RW", "MoldSlaveMoveUp");
m_MoldSlaveMoveDown = new SysParamBool(addr++, 14, cc); //打印从轴相对下运动_手动_RW m_MoldSlaveMoveDown = new SysParamBool(addr++, 14, cc, u8"打印从轴相对下运动_手动_RW", "MoldSlaveMoveDown");
m_MoldSlaveMoveUpContinue = new SysParamBool(addr++, 14, cc); //打印从轴上JOG_手动_RW m_MoldSlaveMoveUpContinue = new SysParamBool(addr++, 14, cc, u8"打印从轴上JOG_手动_RW", "MoldSlaveMoveUpContinue");
m_MoldSlaveMoveDownContinue = new SysParamBool(addr++, 14, cc); //打印从轴下JOG_手动_RW m_MoldSlaveMoveDownContinue = new SysParamBool(addr++, 14, cc, u8"打印从轴下JOG_手动_RW", "MoldSlaveMoveDownContinue");
m_MoldSlaveMoveAbsPos = new SysParamBool(addr++, 14, cc); //打印从轴绝对值运动_手动_RW m_MoldSlaveMoveAbsPos = new SysParamBool(addr++, 14, cc, u8"打印从轴绝对值运动_手动_RW", "MoldSlaveMoveAbsPos");
m_MoldSlaveMotionStop = new SysParamBool(addr++, 14, cc); //打印从轴急停_RW m_MoldSlaveMotionStop = new SysParamBool(addr++, 14, cc, u8"打印从轴急停_RW", "MoldSlaveMotionStop");
addr += 37; addr += 37;
m_CleanMainServoOn = new SysParamBool(addr++, 14, cc); //清粉主轴伺服ON_RW m_CleanMainServoOn = new SysParamBool(addr++, 14, cc, u8"清粉主轴伺服ON_RW", "CleanMainServoOn");
m_CleanMainServoHomeIndexOn = new SysParamBool(addr++, 14, cc); //清粉主轴伺服成立原点_RW m_CleanMainServoHomeIndexOn = new SysParamBool(addr++, 14, cc, u8"清粉主轴伺服成立原点_RW", "CleanMainServoHomeIndexOn");
m_CleanMainServoReset = new SysParamBool(addr++, 14, cc); //清粉主轴伺服复位_RW m_CleanMainServoReset = new SysParamBool(addr++, 14, cc, u8"清粉主轴伺服复位_RW", "CleanMainServoReset");
m_CleanMainServoBreakOn = new SysParamBool(addr++, 14, cc); //清粉主轴伺服刹车_RW m_CleanMainServoBreakOn = new SysParamBool(addr++, 14, cc, u8"清粉主轴伺服刹车_RW", "CleanMainServoBreakOn");
m_CleanMainBindSlaveOn = new SysParamBool(addr++, 14, cc); //清粉主轴伺服绑定从轴_RW m_CleanMainBindSlaveOn = new SysParamBool(addr++, 14, cc, u8"清粉主轴伺服绑定从轴_RW", "CleanMainBindSlaveOn");
m_CleanMainMoveUp = new SysParamBool(addr++, 14, cc); //清粉主轴相对上运动_手动_RW m_CleanMainMoveUp = new SysParamBool(addr++, 14, cc, u8"清粉主轴相对上运动_手动_RW", "CleanMainMoveUp");
m_CleanMainMoveDown = new SysParamBool(addr++, 14, cc); //清粉主轴相对下运动_手动_RW m_CleanMainMoveDown = new SysParamBool(addr++, 14, cc, u8"清粉主轴相对下运动_手动_RW", "CleanMainMoveDown");
m_CleanMainMoveUpContinue = new SysParamBool(addr++, 14, cc); //清粉主轴上JOG_手动_RW m_CleanMainMoveUpContinue = new SysParamBool(addr++, 14, cc, u8"清粉主轴上JOG_手动_RW", "CleanMainMoveUpContinue");
m_CleanMainMoveDownContinue = new SysParamBool(addr++, 14, cc); //清粉主轴下JOG_手动_RW m_CleanMainMoveDownContinue = new SysParamBool(addr++, 14, cc, u8"清粉主轴下JOG_手动_RW", "CleanMainMoveDownContinue");
m_CleanMainMoveAbsPos = new SysParamBool(addr++, 14, cc); //清粉主轴绝对值运动_手动_RW m_CleanMainMoveAbsPos = new SysParamBool(addr++, 14, cc, u8"清粉主轴绝对值运动_手动_RW", "CleanMainMoveAbsPos");
m_CleanMainMotionStop = new SysParamBool(addr++, 14, cc); //清粉主轴急停_RW m_CleanMainMotionStop = new SysParamBool(addr++, 14, cc, u8"清粉主轴急停_RW", "CleanMainMotionStop");
addr += 37; addr += 37;
m_CleanSlaveServoOn = new SysParamBool(addr++, 14, cc); //清粉从轴伺服ON_RW m_CleanSlaveServoOn = new SysParamBool(addr++, 14, cc, u8"清粉从轴伺服ON_RW", "CleanSlaveServoOn");
m_CleanSlaveServoHomeIndexOn = new SysParamBool(addr++, 14, cc); //清粉从轴伺服成立原点_RW m_CleanSlaveServoHomeIndexOn = new SysParamBool(addr++, 14, cc, u8"清粉从轴伺服成立原点_RW", "CleanSlaveServoHomeIndexOn");
m_CleanSlaveServoReset = new SysParamBool(addr++, 14, cc); //清粉从轴伺服复位_RW m_CleanSlaveServoReset = new SysParamBool(addr++, 14, cc, u8"清粉从轴伺服复位_RW", "CleanSlaveServoReset");
m_CleanSlaveServoBreakOn = new SysParamBool(addr++, 14, cc); //清粉从轴伺服刹车_RW m_CleanSlaveServoBreakOn = new SysParamBool(addr++, 14, cc, u8"清粉从轴伺服刹车_RW", "CleanSlaveServoBreakOn");
m_CleanSlaveUnbind = new SysParamBool(addr++, 14, cc); //清粉从轴伺服解除绑定_RW m_CleanSlaveUnbind = new SysParamBool(addr++, 14, cc, u8"清粉从轴伺服解除绑定_RW", "CleanSlaveUnbind");
m_CleanSlaveMoveUp = new SysParamBool(addr++, 14, cc); //清粉从轴相对上运动_手动_RW m_CleanSlaveMoveUp = new SysParamBool(addr++, 14, cc, u8"清粉从轴相对上运动_手动_RW", "CleanSlaveMoveUp");
m_CleanSlaveMoveDown = new SysParamBool(addr++, 14, cc); //清粉从轴相对下运动_手动_RW m_CleanSlaveMoveDown = new SysParamBool(addr++, 14, cc, u8"清粉从轴相对下运动_手动_RW", "CleanSlaveMoveDown");
m_CleanSlaveMoveUpContinue = new SysParamBool(addr++, 14, cc); //清粉从轴上JOG_手动_RW m_CleanSlaveMoveUpContinue = new SysParamBool(addr++, 14, cc, u8"清粉从轴上JOG_手动_RW", "CleanSlaveMoveUpContinue");
m_CleanSlaveMoveDownContinue = new SysParamBool(addr++, 14, cc); //清粉从轴下JOG_手动_RW m_CleanSlaveMoveDownContinue = new SysParamBool(addr++, 14, cc, u8"清粉从轴下JOG_手动_RW", "CleanSlaveMoveDownContinue");
m_CleanSlaveMoveAbsPos = new SysParamBool(addr++, 14, cc); //清粉从轴绝对值运动_手动_RW m_CleanSlaveMoveAbsPos = new SysParamBool(addr++, 14, cc, u8"清粉从轴绝对值运动_手动_RW", "CleanSlaveMoveAbsPos");
m_CleanSlaveMotionStop = new SysParamBool(addr++, 14, cc); //清粉从轴急停_RW m_CleanSlaveMotionStop = new SysParamBool(addr++, 14, cc, u8"清粉从轴急停_RW", "CleanSlaveMotionStop");
addr += 37; addr += 37;
m_LoadAxisServoOn = new SysParamBool(addr++, 14, cc); //移载轴伺服ON_RW m_LoadAxisServoOn = new SysParamBool(addr++, 14, cc, u8"移载轴伺服ON_RW", "LoadAxisServoOn");
m_LoadAxisServoHomeIndexOn = new SysParamBool(addr++, 14, cc); //移载轴伺服成立原点_RW m_LoadAxisServoHomeIndexOn = new SysParamBool(addr++, 14, cc, u8"移载轴伺服成立原点_RW", "LoadAxisServoHomeIndexOn");
m_LoadAxisServoReset = new SysParamBool(addr++, 14, cc); //移载轴伺服复位_RW m_LoadAxisServoReset = new SysParamBool(addr++, 14, cc, u8"移载轴伺服复位_RW", "LoadAxisServoReset");
m_LoadAxisMoveLeft = new SysParamBool(addr++, 14, cc); //移载轴相对左运动_手动_RW m_LoadAxisMoveLeft = new SysParamBool(addr++, 14, cc, u8"移载轴相对左运动_手动_RW", "LoadAxisMoveLeft");
m_LoadAxisMoveRight = new SysParamBool(addr++, 14, cc); //移载轴相对右运动_手动_RW m_LoadAxisMoveRight = new SysParamBool(addr++, 14, cc, u8"移载轴相对右运动_手动_RW", "LoadAxisMoveRight");
m_LoadAxisMoveLeftContinue = new SysParamBool(addr++, 14, cc); //移载轴左JOG_手动_RW m_LoadAxisMoveLeftContinue = new SysParamBool(addr++, 14, cc, u8"移载轴左JOG_手动_RW", "LoadAxisMoveLeftContinue");
m_LoadAxisMoveRightContinue = new SysParamBool(addr++, 14, cc); //移载轴右JOG_手动_RW m_LoadAxisMoveRightContinue = new SysParamBool(addr++, 14, cc, u8"移载轴右JOG_手动_RW", "LoadAxisMoveRightContinue");
m_LoadAxisMoveAbsPos = new SysParamBool(addr++, 14, cc); //移载轴绝对值运动_手动_RW m_LoadAxisMoveAbsPos = new SysParamBool(addr++, 14, cc, u8"移载轴绝对值运动_手动_RW", "LoadAxisMoveAbsPos");
m_LoadAxisMotionStop = new SysParamBool(addr++, 14, cc); //移载轴急停_RW m_LoadAxisMotionStop = new SysParamBool(addr++, 14, cc, u8"移载轴急停_RW", "LoadAxisMotionStop");
addr += 23; addr += 23;
m_ArmServoOn = new SysParamBool(addr++, 14, cc); //铺粉轴伺服ON_RW m_ArmServoOn = new SysParamBool(addr++, 14, cc, u8"铺粉轴伺服ON_RW", "ArmServoOn");
m_ArmServoHomeIndexOn = new SysParamBool(addr++, 14, cc); //铺粉轴伺服成立原点_RW m_ArmServoHomeIndexOn = new SysParamBool(addr++, 14, cc, u8"铺粉轴伺服成立原点_RW", "ArmServoHomeIndexOn");
m_ArmServoReset = new SysParamBool(addr++, 14, cc); //铺粉轴伺服复位_RW m_ArmServoReset = new SysParamBool(addr++, 14, cc, u8"铺粉轴伺服复位_RW", "ArmServoReset");
m_ArmMoveFront = new SysParamBool(addr++, 14, cc); //铺粉轴相对前运动_手动_RW m_ArmMoveFront = new SysParamBool(addr++, 14, cc, u8"铺粉轴相对前运动_手动_RW", "ArmMoveFront");
m_ArmMoveBack = new SysParamBool(addr++, 14, cc); //铺粉轴相对后运动_手动_RW m_ArmMoveBack = new SysParamBool(addr++, 14, cc, u8"铺粉轴相对后运动_手动_RW", "ArmMoveBack");
m_ArmMoveFrontContinue = new SysParamBool(addr++, 14, cc); //铺粉轴前JOG_手动_RW m_ArmMoveFrontContinue = new SysParamBool(addr++, 14, cc, u8"铺粉轴前JOG_手动_RW", "ArmMoveFrontContinue");
m_ArmMoveBackContinue = new SysParamBool(addr++, 14, cc); //铺粉轴后JOG_手动_RW m_ArmMoveBackContinue = new SysParamBool(addr++, 14, cc, u8"铺粉轴后JOG_手动_RW", "ArmMoveBackContinue");
m_ArmMoveAbsPos = new SysParamBool(addr++, 14, cc); //铺粉轴绝对值运动_手动_RW m_ArmMoveAbsPos = new SysParamBool(addr++, 14, cc, u8"铺粉轴绝对值运动_手动_RW", "ArmMoveAbsPos");
m_ArmMotionStop = new SysParamBool(addr++, 14, cc); //铺粉轴急停_RW m_ArmMotionStop = new SysParamBool(addr++, 14, cc, u8"铺粉轴急停_RW", "ArmMotionStop");
addr += 23; addr += 23;
m_SupplyServoOn = new SysParamBool(addr++, 14, cc); //供粉转轴伺服ON_RW m_SupplyServoOn = new SysParamBool(addr++, 14, cc, u8"供粉转轴伺服ON_RW", "SupplyServoOn");
m_SupplyServoHomeIndexOn = new SysParamBool(addr++, 14, cc); //供粉转轴伺服成立原点_RW m_SupplyServoHomeIndexOn = new SysParamBool(addr++, 14, cc, u8"供粉转轴伺服成立原点_RW", "SupplyServoHomeIndexOn");
m_SupplyServoReset = new SysParamBool(addr++, 14, cc); //供粉转轴伺服复位_RW m_SupplyServoReset = new SysParamBool(addr++, 14, cc, u8"供粉转轴伺服复位_RW", "SupplyServoReset");
m_SupplyMovePositive = new SysParamBool(addr++, 14, cc); //供粉转轴相对正转运动_手动_RW m_SupplyMovePositive = new SysParamBool(addr++, 14, cc, u8"供粉转轴相对正转运动_手动_RW", "SupplyMovePositive");
m_SupplyMoveNegative = new SysParamBool(addr++, 14, cc); //供粉转轴相对反转运动_手动_RW m_SupplyMoveNegative = new SysParamBool(addr++, 14, cc, u8"供粉转轴相对反转运动_手动_RW", "SupplyMoveNegative");
m_SupplyMovePositiveContinue = new SysParamBool(addr++, 14, cc); //供粉转轴正转JOG_手动_RW m_SupplyMovePositiveContinue = new SysParamBool(addr++, 14, cc, u8"供粉转轴正转JOG_手动_RW", "SupplyMovePositiveContinue");
m_SupplyMoveNegativeContinue = new SysParamBool(addr++, 14, cc); //供粉转轴反转JOG_手动_RW m_SupplyMoveNegativeContinue = new SysParamBool(addr++, 14, cc, u8"供粉转轴反转JOG_手动_RW", "SupplyMoveNegativeContinue");
m_SupplyMoveAbsPos = new SysParamBool(addr++, 14, cc); //供粉转轴绝对值运动_手动_RW m_SupplyMoveAbsPos = new SysParamBool(addr++, 14, cc, u8"供粉转轴绝对值运动_手动_RW", "SupplyMoveAbsPos");
m_SupplyMotionStop = new SysParamBool(addr++, 14, cc); //供粉转轴急停_RW m_SupplyMotionStop = new SysParamBool(addr++, 14, cc, u8"供粉转轴急停_RW", "SupplyMotionStop");
} }
void AxisRecordWrapper::Init(PLCReveiver* cc) void AxisRecordWrapper::Init(PLCReveiver* cc)
{ {
int addr = 36 * 8; int addr = 36 * 8;
m_MoldCylinderSeparatePosRecord = new SysParamBool(addr++, 14, cc); //打印升降与缸体分离位记录_RW m_MoldCylinderSeparatePosRecord = new SysParamBool(addr++, 14, cc,"MoldCylinderSeparatePosRecord",u8"打印升降与缸体分离位记录");
m_PrintMoldSafePosRecord = m_MoldCylinderSeparatePosRecord; //打印升降轴安全位记录 m_PrintMoldSafePosRecord = m_MoldCylinderSeparatePosRecord; //
m_Print3RSeparateRecord = new SysParamBool(addr++, 14, cc); //打印3R脱离位记录__RW m_PrintMoldSafePosRecord->SetInfo(u8"打印升降轴安全位记录","PrintMoldSafePosRecord");
m_Print3RSeparateCheckDistanceRecord = new SysParamBool(addr++, 14, cc); //打印3R脱离检测距离记录__RW m_Print3RSeparateRecord = new SysParamBool(addr++, 14, cc, "Print3RSeparateRecord", u8"打印3R脱离位记录");
m_PrintJackupDeoxygenMinPosRecord = new SysParamBool(addr++, 14, cc); //打印顶升轴除氧压缩最低点记录__RW m_Print3RSeparateCheckDistanceRecord = new SysParamBool(addr++, 14, cc, "Print3RSeparateCheckDistanceRecord", u8"打印3R脱离检测距离记录");
m_PrintJackupPlatformBottomPosRecord = new SysParamBool(addr++, 14, cc); //打印顶升轴基板底座缸平面位置记录__RW m_PrintJackupDeoxygenMinPosRecord = new SysParamBool(addr++, 14, cc, "PrintJackupDeoxygenMinPosRecord", u8"打印顶升轴除氧压缩最低点记录__RW");
m_PrintJackupPlatformPlanePosRecord = new SysParamBool(addr++, 14, cc); //打印顶升轴基板缸平面位置记录_RW m_PrintJackupPlatformBottomPosRecord = new SysParamBool(addr++, 14, cc, "PrintJackupPlatformBottomPosRecord", u8"打印顶升轴基板底座缸平面位置记录__RW");
m_PrintPlatformHightRecord = new SysParamBool(addr++, 14, cc); //打印基板厚度计算__RW m_PrintJackupPlatformPlanePosRecord = new SysParamBool(addr++, 14, cc, "PrintJackupPlatformPlanePosRecord", u8"打印顶升轴基板缸平面位置记录_RW");
m_MoldUpLimitPosRecord = new SysParamBool(addr++, 14, cc); //打印轴上软限位记录_RW m_PrintPlatformHightRecord = new SysParamBool(addr++, 14, cc, "PrintPlatformHightRecord", u8"打印基板厚度计算__RW");
m_MoldDownLimitPosRecord = new SysParamBool(addr++, 14, cc); //打印升降轴下软限位记录_RW m_MoldUpLimitPosRecord = new SysParamBool(addr++, 14, cc, "MoldUpLimitPosRecord", u8"打印轴上软限位记录_RW");
m_CleanTrackConnectPosRecord = new SysParamBool(addr++, 14, cc); //清粉升降轨道对接位记录_RW m_MoldDownLimitPosRecord = new SysParamBool(addr++, 14, cc, "MoldDownLimitPosRecord", u8"打印升降轴下软限位记录_RW");
m_CleanAxisPlatformAlignPosRecord = m_CleanTrackConnectPosRecord; int tempAddr = addr;
m_CleanBoxCylinderConnectPosRecord = new SysParamBool(addr++, 14, cc); //清粉箱与缸体对接位记录_RW m_CleanTrackConnectPosRecord = new SysParamBool(addr++, 14, cc, "CleanTrackConnectPosRecord", u8"清粉升降轨道对接位记录_RW");
m_Clean3RSeparatePosRecord = new SysParamBool(addr++, 14, cc); //清粉升降3R对接分离位记录_RW m_CleanAxisPlatformAlignPosRecord = new SysParamBool(tempAddr, 14, cc, "CleanAxisPlatformAlignPosRecord", u8"清粉升降基板底座缸平面记录");
m_Clean3RSeparateCheckDistanceRecord = new SysParamBool(addr++, 14, cc); //清粉升降3R分离检测距离记录_RW m_CleanBoxCylinderConnectPosRecord = new SysParamBool(addr++, 14, cc, "CleanBoxCylinderConnectPosRecord", u8"清粉箱与缸体对接位记录_RW");
m_CleanLowestPosRecord = new SysParamBool(addr++, 14, cc); //清粉升降最低点记录_RW m_Clean3RSeparatePosRecord = new SysParamBool(addr++, 14, cc, "Clean3RSeparatePosRecord", u8"清粉升降3R对接分离位记录_RW");
m_CleanUpLimitRecord = new SysParamBool(addr++, 14, cc); //清粉升降上软限位记录_RW m_Clean3RSeparateCheckDistanceRecord = new SysParamBool(addr++, 14, cc, "Clean3RSeparateCheckDistanceRecord", u8"清粉升降3R分离检测距离记录_RW");
m_CleanDownLimitRecord = new SysParamBool(addr++, 14, cc); //清粉升降下软限位记录_RW m_CleanLowestPosRecord = new SysParamBool(addr++, 14, cc, "CleanLowestPosRecord", u8"清粉升降最低点记录_RW");
m_CleanUpLimitRecord = new SysParamBool(addr++, 14, cc, "CleanUpLimitRecord", u8"清粉升降上软限位记录_RW");
m_CleanDownLimitRecord = new SysParamBool(addr++, 14, cc, "CleanDownLimitRecord", u8"清粉升降下软限位记录_RW");
m_EleCylinderPrintJackupPosRecord = m_CleanTrackConnectPosRecord; //电缸打印顶升位置记录 m_EleCylinderPrintJackupPosRecord = m_CleanTrackConnectPosRecord;
m_EleCylinderCleanJackupPosRecord = m_CleanBoxCylinderConnectPosRecord; //电缸清粉顶升位置记录 m_EleCylinderCleanJackupPosRecord = m_CleanBoxCylinderConnectPosRecord;
m_EleCylinderBottomFitPosRecord = m_Clean3RSeparatePosRecord; //电缸底座贴合位置记录 m_EleCylinderBottomFitPosRecord = m_Clean3RSeparatePosRecord;
m_EleCylinderSoftUpLimitRecord = m_CleanUpLimitRecord; //电缸升降上软限位记录 m_EleCylinderSoftUpLimitRecord = m_CleanUpLimitRecord;
m_EleCylinderSoftDownLimitRecord = m_CleanDownLimitRecord; //电缸升降下软限位记录 m_EleCylinderSoftDownLimitRecord = m_CleanDownLimitRecord;
m_EleCylinderPrintJackupPosRecord->SetInfo(u8"电缸打印顶升位置记录", "m_EleCylinderPrintJackupPosRecord");
m_EleCylinderCleanJackupPosRecord->SetInfo(u8"电缸清粉顶升位置记录", "m_EleCylinderCleanJackupPosRecord");
m_EleCylinderBottomFitPosRecord->SetInfo(u8"电缸底座贴合位置记录", "m_EleCylinderBottomFitPosRecord");
m_EleCylinderSoftUpLimitRecord->SetInfo(u8"电缸升降上软限位记录", "m_EleCylinderSoftUpLimitRecord");
m_EleCylinderSoftDownLimitRecord->SetInfo(u8"电缸升降下软限位记录", "m_EleCylinderSoftDownLimitRecord");
m_LoadAxisTrackPrintPosRecord = new SysParamBool(addr++, 14, cc, "LoadAxisTrackPrintPosRecord", u8"移载轴轨道打印位记录_RW");
m_LoadAxisTrackCleanPosRecord = new SysParamBool(addr++, 14, cc, "LoadAxisTrackCleanPosRecord", u8"移载轴轨道清粉位记录_RW");
m_LoadAxisTrackWaitPosRecord = new SysParamBool(addr++, 14, cc, "LoadAxisTrackWaitPosRecord", u8"移载轴轨道等待位记录_RW");
m_LoadAxisLeftLimitRecord = new SysParamBool(addr++, 14, cc, "LoadAxisLeftLimitRecord", u8"移载轴轨道左软限位记录_RW");
m_LoadAxisRightLimitRecord = new SysParamBool(addr++, 14, cc, "LoadAxisRightLimitRecord", u8"移载轴轨道右软限位记录_RW");
m_ArmPowderAcceptPosRecord = new SysParamBool(addr++, 14, cc, "ArmPowderAcceptPosRecord", u8"铺粉轴接粉位记录_RW");
m_ArmPowderDropFrontPosRecord = new SysParamBool(addr++, 14, cc, "ArmPowderDropFrontPosRecord", u8"铺粉轴前下粉位记录_RW");
m_ArmPrintFrontLimitRecord = new SysParamBool(addr++, 14, cc, "ArmPrintFrontLimitRecord", u8"铺粉轴打印面前限位记录_RW");
m_ArmPrintBackLimitRecord = new SysParamBool(addr++, 14, cc, "ArmPrintBackLimitRecord", u8"铺粉轴打印面后限位记录_RW");
m_ArmFrontLimitRecord = new SysParamBool(addr++, 14, cc, "ArmFrontLimitRecord", u8"铺粉轴前软限位记录_RW");
m_ArmBackLimitRecord = new SysParamBool(addr++, 14, cc, "ArmBackLimitRecord", u8"铺粉轴后软限位记录_RW");
m_BlockMoldSoftPosLimit = new SysParamBool(addr++, 14, cc, "BlockMoldSoftPosLimit", u8"屏蔽打印轴软件位置限制_RW");
m_BlockCleanSoftPosLimit = new SysParamBool(addr++, 14, cc, "BlockCleanSoftPosLimit", u8"屏蔽清粉轴软件位置限制_RW");
m_BlockLoadAxisSoftPosLimit = new SysParamBool(addr++, 14, cc, "BlockLoadAxisSoftPosLimit", u8"屏蔽移载轴软件位置限制_RW");
m_BlockArmSoftPosLimit = new SysParamBool(addr++, 14, cc, "BlockArmSoftPosLimit", u8"屏蔽铺粉轴软件位置限制_RW");
m_SupplySoftPosLimit = new SysParamBool(addr++, 14, cc, "SupplySoftPosLimit", u8"屏蔽供粉转轴软件位置限制_RW");
m_MoldMainHomeIndexRecord = new SysParamBool(addr++, 14, cc, "MoldMainHomeIndexRecord", u8"打印主轴原点位记录_RW");
m_MoldMainAlignRecord = new SysParamBool(addr++, 14, cc, "MoldMainAlignRecord", u8"打印主轴对齐位记录_RW");
m_MoldMainAlignHomeIndexRelRecord = new SysParamBool(addr++, 14, cc, "MoldMainAlignHomeIndexRelRecord", u8"打印主轴对齐位与原点相对值记录_RW");
m_MoldSlaveHomeIndexRecord = new SysParamBool(addr++, 14, cc, "MoldSlaveHomeIndexRecord", u8"打印从轴原点位记录_RW");
m_MoldSlaveAlignRecord = new SysParamBool(addr++, 14, cc, "MoldSlaveAlignRecord", u8"打印从轴对齐位记录_RW");
m_MoldSlaveAlignHomeIndexRelRecord = new SysParamBool(addr++, 14, cc, "MoldSlaveAlignHomeIndexRelRecord", u8"打印从轴对齐位与原点相对值记录_RW");
m_CleanMainHomeIndexRecord = new SysParamBool(addr++, 14, cc, "CleanMainHomeIndexRecord", u8"清粉主轴原点位记录_RW");
m_CleanMainAlignRecord = new SysParamBool(addr++, 14, cc, "CleanMainAlignRecord", u8"清粉主轴对齐位记录_RW");
m_CleanMainAlignHomeIndexRelRecord = new SysParamBool(addr++, 14, cc, "CleanMainAlignHomeIndexRelRecord", u8"清粉主轴对齐位与原点相对值记录_RW");
m_CleanSlaveHomeIndexRecord = new SysParamBool(addr++, 14, cc, "CleanSlaveHomeIndexRecord", u8"清粉从轴原点位记录_RW");
m_CleanSlaveAlignRecord = new SysParamBool(addr++, 14, cc, "CleanSlaveAlignRecord", u8"清粉从轴对齐位记录_RW");
m_CleanSlaveAlignHomeIndexRelRecord = new SysParamBool(addr++, 14, cc, "CleanSlaveAlignHomeIndexRelRecord", u8"清粉从轴对齐位与原点相对值记录_RW");
m_LoadAxisTrackPrintPosRecord = new SysParamBool(addr++, 14, cc); //移载轴轨道打印位记录_RW
m_LoadAxisTrackCleanPosRecord = new SysParamBool(addr++, 14, cc); //移载轴轨道清粉位记录_RW
m_LoadAxisTrackWaitPosRecord = new SysParamBool(addr++, 14, cc); //移载轴轨道等待位记录_RW
m_LoadAxisLeftLimitRecord = new SysParamBool(addr++, 14, cc); //移载轴轨道左软限位记录_RW
m_LoadAxisRightLimitRecord = new SysParamBool(addr++, 14, cc); //移载轴轨道右软限位记录_RW
m_ArmPowderAcceptPosRecord = new SysParamBool(addr++, 14, cc); //铺粉轴接粉位记录_RW
m_ArmPowderDropFrontPosRecord = new SysParamBool(addr++, 14, cc); //铺粉轴前下粉位记录_RW
m_ArmPrintFrontLimitRecord = new SysParamBool(addr++, 14, cc); //铺粉轴打印面前限位记录_RW
m_ArmPrintBackLimitRecord = new SysParamBool(addr++, 14, cc); //铺粉轴打印面后限位记录_RW
m_ArmFrontLimitRecord = new SysParamBool(addr++, 14, cc); //铺粉轴前软限位记录_RW
m_ArmBackLimitRecord = new SysParamBool(addr++, 14, cc); //铺粉轴后软限位记录_RW
m_BlockMoldSoftPosLimit = new SysParamBool(addr++, 14, cc); //屏蔽打印轴软件位置限制_RW
m_BlockCleanSoftPosLimit = new SysParamBool(addr++, 14, cc); //屏蔽清粉轴软件位置限制_RW
m_BlockLoadAxisSoftPosLimit = new SysParamBool(addr++, 14, cc); //屏蔽移载轴软件位置限制_RW
m_BlockArmSoftPosLimit = new SysParamBool(addr++, 14, cc); //屏蔽铺粉轴软件位置限制_RW
m_SupplySoftPosLimit = new SysParamBool(addr++, 14, cc); //屏蔽供粉转轴软件位置限制_RW
m_MoldMainHomeIndexRecord = new SysParamBool(addr++, 14, cc); //打印主轴原点位记录_RW
m_MoldMainAlignRecord = new SysParamBool(addr++, 14, cc); //打印主轴对齐位记录_RW
m_MoldMainAlignHomeIndexRelRecord = new SysParamBool(addr++, 14, cc); //打印主轴对齐位与原点相对值记录_RW
m_MoldSlaveHomeIndexRecord = new SysParamBool(addr++, 14, cc); //打印从轴原点位记录_RW
m_MoldSlaveAlignRecord = new SysParamBool(addr++, 14, cc); //打印从轴对齐位记录_RW
m_MoldSlaveAlignHomeIndexRelRecord = new SysParamBool(addr++, 14, cc); //打印从轴对齐位与原点相对值记录_RW
m_CleanMainHomeIndexRecord = new SysParamBool(addr++, 14, cc); //清粉主轴原点位记录_RW
m_CleanMainAlignRecord = new SysParamBool(addr++, 14, cc); //清粉主轴对齐位记录_RW
m_CleanMainAlignHomeIndexRelRecord = new SysParamBool(addr++, 14, cc); //清粉主轴对齐位与原点相对值记录_RW
m_CleanSlaveHomeIndexRecord = new SysParamBool(addr++, 14, cc); //清粉从轴原点位记录_RW
m_CleanSlaveAlignRecord = new SysParamBool(addr++, 14, cc); //清粉从轴对齐位记录_RW
m_CleanSlaveAlignHomeIndexRelRecord = new SysParamBool(addr++, 14, cc); //清粉从轴对齐位与原点相对值记录_RW
m_EleCylinderMainHomeIndexRecord = m_CleanMainHomeIndexRecord; //电缸主轴原点位记录_RW m_EleCylinderMainHomeIndexRecord = m_CleanMainHomeIndexRecord; //电缸主轴原点位记录_RW
m_EleCylinderMainAlignRecord = m_CleanMainAlignRecord; //电缸主轴对齐位记录_RW m_EleCylinderMainAlignRecord = m_CleanMainAlignRecord; //电缸主轴对齐位记录_RW
m_EleCylinderMainAlignHomeIndexRelRecord = m_CleanMainAlignHomeIndexRelRecord; //电缸主轴对齐位与原点相对值记录_RW m_EleCylinderMainAlignHomeIndexRelRecord = m_CleanMainAlignHomeIndexRelRecord; //电缸主轴对齐位与原点相对值记录_RW
m_EleCylinderSlaveHomeIndexRecord = m_CleanSlaveHomeIndexRecord; //电缸从轴原点位记录_RW m_EleCylinderSlaveHomeIndexRecord = m_CleanSlaveHomeIndexRecord; //电缸从轴原点位记录_RW
m_EleCylinderSlaveAlignRecord = m_CleanSlaveAlignRecord; //电缸从轴对齐位记录_RW m_EleCylinderSlaveAlignRecord = m_CleanSlaveAlignRecord; //电缸从轴对齐位记录_RW
m_EleCylinderSlaveAlignHomeIndexRelRecord = m_CleanSlaveAlignHomeIndexRelRecord; //电缸从轴对齐位与原点相对值记录_RW m_EleCylinderSlaveAlignHomeIndexRelRecord = m_CleanSlaveAlignHomeIndexRelRecord; //电缸从轴对齐位与原点相对值记录_RW
m_EleCylinderMainHomeIndexRecord->SetInfo(u8"电缸主轴原点位记录_RW", "EleCylinderMainHomeIndexRecord");
m_EleCylinderMainAlignRecord->SetInfo(u8"电缸主轴对齐位记录_RW", "EleCylinderMainAlignRecord");
m_EleCylinderMainAlignHomeIndexRelRecord->SetInfo(u8"电缸主轴对齐位与原点相对值记录_RW", "EleCylinderMainAlignHomeIndexRelRecord");
m_EleCylinderSlaveHomeIndexRecord->SetInfo(u8"电缸从轴原点位记录_RW", "EleCylinderSlaveHomeIndexRecord");
m_EleCylinderSlaveAlignRecord->SetInfo(u8"电缸从轴对齐位记录_RW", "EleCylinderSlaveAlignRecord");
m_EleCylinderSlaveAlignHomeIndexRelRecord->SetInfo(u8"电缸从轴对齐位与原点相对值记录_RW", "EleCylinderSlaveAlignHomeIndexRelRecord");
m_LoadSearchEdge = new SysParamBool(addr++, 14, cc, "LoadSearchEdge", u8"移载轴寻边功能测试_手动_RW");
m_LoadSearchEdgeFinish = new SysParamBool(addr++, 14, cc, "LoadSearchEdgeFinish", u8"移载轴寻边功能测试完成_手动_RW");
m_DisableMoldTorqueCheck = new SysParamBool(addr++, 14, cc, "DisableMoldTorqueCheck", u8"屏蔽打印升降轴扭力判断");
m_DisableCleanTorqueCheck = new SysParamBool(addr++, 14, cc, "DisableCleanTorqueCheck", u8"屏蔽清粉升降轴扭力判断");
m_DisableEleCylinderTorqueCheck = m_DisableCleanTorqueCheck;
m_DisableEleCylinderTorqueCheck->SetInfo(u8"屏蔽电缸升降轴扭力判断", "DisableEleCylinderTorqueCheck");
m_DisableLoadTorqueCheck = new SysParamBool(addr++, 14, cc, "DisableLoadTorqueCheck", u8"屏蔽移载轴扭力判断");
m_DisableArmTorqueCheck = new SysParamBool(addr++, 14, cc, "DisableArmTorqueCheck", u8"屏蔽铺粉轴扭力判断");
m_DisableSupplyTorqueCheck = new SysParamBool(addr++, 14, cc, "DisableSupplyTorqueCheck", u8"屏蔽供粉转轴扭力判断");
m_PCPrintUpDownOverLimitAlarm = new SysParamBool(addr++, 14, cc, "PCPrintUpDownOverLimitAlarm", u8"PC打印升降轴超限报警");
m_PCPrintUpDownOverLimitAlarmRemove = new SysParamBool(addr++, 14, cc, "PCPrintUpDownOverLimitAlarmRemove", u8"PC打印升降轴超限解除");
m_PCCleanUpDownOverLimitAlarm = new SysParamBool(addr++, 14, cc, "PCCleanUpDownOverLimitAlarm", u8"PC清粉升降轴超限报警");
m_PCCleanUpDownOverLimitAlarmRemove = new SysParamBool(addr++, 14, cc, "PCCleanUpDownOverLimitAlarmRemove", u8"PC清粉升降轴超限解除");
m_PCLoadOverLimitAlarm = new SysParamBool(addr++, 14, cc, "PCLoadOverLimitAlarm", u8"PC移载轴超限报警");
m_PCLoadOverLimitAlarmRemove = new SysParamBool(addr++, 14, cc, "PCLoadOverLimitAlarmRemove", u8"PC移载轴超限解除");
m_PCArmOverLimitAlarm = new SysParamBool(addr++, 14, cc, "PCArmOverLimitAlarm", u8"PC铺粉轴超限报警");
m_PCArmOverLimitAlarmRemove = new SysParamBool(addr++, 14, cc, "PCArmOverLimitAlarmRemove", u8"PC铺粉轴超限解除");
m_LoadSearchEdge = new SysParamBool(addr++, 14, cc); //移载轴寻边功能测试_手动_RW
m_LoadSearchEdgeFinish = new SysParamBool(addr++, 14, cc); //移载轴寻边功能测试完成_手动_RW
m_DisableMoldTorqueCheck = new SysParamBool(addr++, 14, cc); //屏蔽打印升降轴扭力判断
m_DisableCleanTorqueCheck = new SysParamBool(addr++, 14, cc); //屏蔽清粉升降轴扭力判断
m_DisableEleCylinderTorqueCheck = m_DisableCleanTorqueCheck; //屏蔽电缸升降轴扭力判断
m_DisableLoadTorqueCheck = new SysParamBool(addr++, 14, cc); //屏蔽移载轴扭力判断
m_DisableArmTorqueCheck = new SysParamBool(addr++, 14, cc); //屏蔽铺粉轴扭力判断
m_DisableSupplyTorqueCheck = new SysParamBool(addr++, 14, cc); //屏蔽供粉转轴扭力判断
m_PCPrintUpDownOverLimitAlarm = new SysParamBool(addr++, 14, cc); //PC打印升降轴超限报警
m_PCPrintUpDownOverLimitAlarmRemove = new SysParamBool(addr++, 14, cc); //PC打印升降轴超限解除
m_PCCleanUpDownOverLimitAlarm = new SysParamBool(addr++, 14, cc); //PC清粉升降轴超限报警
m_PCCleanUpDownOverLimitAlarmRemove = new SysParamBool(addr++, 14, cc); //PC清粉升降轴超限解除
m_PCLoadOverLimitAlarm = new SysParamBool(addr++, 14, cc); //PC移载轴超限报警
m_PCLoadOverLimitAlarmRemove = new SysParamBool(addr++, 14, cc); //PC移载轴超限解除
m_PCArmOverLimitAlarm = new SysParamBool(addr++, 14, cc); //PC铺粉轴超限报警
m_PCArmOverLimitAlarmRemove = new SysParamBool(addr++, 14, cc); //PC铺粉轴超限解除
m_LoadHandPosRecord = m_PCPrintUpDownOverLimitAlarm; m_LoadHandPosRecord = m_PCPrintUpDownOverLimitAlarm;
m_LoadHandCrashPosRecord = m_PCPrintUpDownOverLimitAlarmRemove; m_LoadHandCrashPosRecord = m_PCPrintUpDownOverLimitAlarmRemove;
m_LoadHandPosRecord->SetInfo(u8"移载轴吊装位记录", "LoadHandPosRecord");
m_LoadHandCrashPosRecord->SetInfo(u8"移载吊装碰撞位记录", "LoadHandCrashPosRecord");
} }

View File

@ -103,7 +103,7 @@ class SysParamBool :public SysParam
{ {
public: public:
SysParamBool(int addr, int num, PLCReveiver* cc,const string& context = "", const string& code = ""); SysParamBool(int addr, int num, PLCReveiver* cc,const string& context, const string& code);
~SysParamBool(); ~SysParamBool();
void SetInfo(const string& context, const string& code) { void SetInfo(const string& context, const string& code) {
m_context2 = context; m_context2 = context;

View File

@ -137,7 +137,7 @@
<SubSystem>Console</SubSystem> <SubSystem>Console</SubSystem>
<EnableCOMDATFolding>true</EnableCOMDATFolding> <EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences> <OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>false</GenerateDebugInformation> <GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalLibraryDirectories>./lib;./lib/absl</AdditionalLibraryDirectories> <AdditionalLibraryDirectories>./lib;./lib/absl</AdditionalLibraryDirectories>
<AdditionalDependencies>libprotobuf.lib;libprotobuf-lite.lib;libprotoc.lib;address_sorting.lib;cares.lib;gpr.lib;crypto.lib;grpc++.lib;grpc++_alts.lib;grpc++_error_details.lib;grpc++_reflection.lib;grpc++_unsecure.lib;grpc.lib;grpcpp_channelz.lib;grpc_authorization_provider.lib;grpc_plugin_support.lib;grpc_unsecure.lib;upb.lib;upb_collections_lib.lib;upb_json_lib.lib;upb_textformat_lib.lib;utf8_range_lib.lib;re2.lib;ssl.lib;testing.lib;zlib.lib;zlibstatic.lib;absl_bad_any_cast_impl.lib;absl_bad_optional_access.lib;absl_bad_variant_access.lib;absl_base.lib;absl_city.lib;absl_civil_time.lib;absl_cord.lib;absl_cordz_functions.lib;absl_cordz_handle.lib;absl_cordz_info.lib;absl_cordz_sample_token.lib;absl_cord_internal.lib;absl_crc32c.lib;absl_crc_cord_state.lib;absl_crc_cpu_detect.lib;absl_crc_internal.lib;absl_debugging_internal.lib;absl_demangle_internal.lib;absl_die_if_null.lib;absl_examine_stack.lib;absl_exponential_biased.lib;absl_failure_signal_handler.lib;absl_flags.lib;absl_flags_commandlineflag.lib;absl_flags_commandlineflag_internal.lib;absl_flags_config.lib;absl_flags_internal.lib;absl_flags_marshalling.lib;absl_flags_parse.lib;absl_flags_private_handle_accessor.lib;absl_flags_program_name.lib;absl_flags_reflection.lib;absl_flags_usage.lib;absl_flags_usage_internal.lib;absl_graphcycles_internal.lib;absl_hash.lib;absl_hashtablez_sampler.lib;absl_int128.lib;absl_kernel_timeout_internal.lib;absl_leak_check.lib;absl_log_entry.lib;absl_log_flags.lib;absl_log_globals.lib;absl_log_initialize.lib;absl_log_internal_check_op.lib;absl_log_internal_conditions.lib;absl_log_internal_format.lib;absl_log_internal_globals.lib;absl_log_internal_log_sink_set.lib;absl_log_internal_message.lib;absl_log_internal_nullguard.lib;absl_log_internal_proto.lib;absl_log_severity.lib;absl_log_sink.lib;absl_low_level_hash.lib;absl_malloc_internal.lib;absl_periodic_sampler.lib;absl_random_distributions.lib;absl_random_internal_distribution_test_util.lib;absl_random_internal_platform.lib;absl_random_internal_pool_urbg.lib;absl_random_internal_randen.lib;absl_random_internal_randen_hwaes.lib;absl_random_internal_randen_hwaes_impl.lib;absl_random_internal_randen_slow.lib;absl_random_internal_seed_material.lib;absl_random_seed_gen_exception.lib;absl_random_seed_sequences.lib;absl_raw_hash_set.lib;absl_raw_logging_internal.lib;absl_scoped_set_env.lib;absl_spinlock_wait.lib;absl_stacktrace.lib;absl_status.lib;absl_statusor.lib;absl_strerror.lib;absl_strings.lib;absl_strings_internal.lib;absl_string_view.lib;absl_str_format_internal.lib;absl_symbolize.lib;absl_synchronization.lib;absl_throw_delegate.lib;absl_time.lib;absl_time_zone.lib;Ws2_32.lib;utf8_range.lib;utf8_validity.lib;opengl32.lib;sqlite3.lib;Rpcrt4.lib;ws2_32.lib;winmm.lib;dbghelp.lib;version.lib;gdiplus.lib;GxIAPICPPEx.lib;MVSDKmd.lib;jpeg-static.lib;turbojpeg-static.lib;RTC5DLLx64.lib;opencv_world455.lib;expat.lib;%(AdditionalDependencies)</AdditionalDependencies> <AdditionalDependencies>libprotobuf.lib;libprotobuf-lite.lib;libprotoc.lib;address_sorting.lib;cares.lib;gpr.lib;crypto.lib;grpc++.lib;grpc++_alts.lib;grpc++_error_details.lib;grpc++_reflection.lib;grpc++_unsecure.lib;grpc.lib;grpcpp_channelz.lib;grpc_authorization_provider.lib;grpc_plugin_support.lib;grpc_unsecure.lib;upb.lib;upb_collections_lib.lib;upb_json_lib.lib;upb_textformat_lib.lib;utf8_range_lib.lib;re2.lib;ssl.lib;testing.lib;zlib.lib;zlibstatic.lib;absl_bad_any_cast_impl.lib;absl_bad_optional_access.lib;absl_bad_variant_access.lib;absl_base.lib;absl_city.lib;absl_civil_time.lib;absl_cord.lib;absl_cordz_functions.lib;absl_cordz_handle.lib;absl_cordz_info.lib;absl_cordz_sample_token.lib;absl_cord_internal.lib;absl_crc32c.lib;absl_crc_cord_state.lib;absl_crc_cpu_detect.lib;absl_crc_internal.lib;absl_debugging_internal.lib;absl_demangle_internal.lib;absl_die_if_null.lib;absl_examine_stack.lib;absl_exponential_biased.lib;absl_failure_signal_handler.lib;absl_flags.lib;absl_flags_commandlineflag.lib;absl_flags_commandlineflag_internal.lib;absl_flags_config.lib;absl_flags_internal.lib;absl_flags_marshalling.lib;absl_flags_parse.lib;absl_flags_private_handle_accessor.lib;absl_flags_program_name.lib;absl_flags_reflection.lib;absl_flags_usage.lib;absl_flags_usage_internal.lib;absl_graphcycles_internal.lib;absl_hash.lib;absl_hashtablez_sampler.lib;absl_int128.lib;absl_kernel_timeout_internal.lib;absl_leak_check.lib;absl_log_entry.lib;absl_log_flags.lib;absl_log_globals.lib;absl_log_initialize.lib;absl_log_internal_check_op.lib;absl_log_internal_conditions.lib;absl_log_internal_format.lib;absl_log_internal_globals.lib;absl_log_internal_log_sink_set.lib;absl_log_internal_message.lib;absl_log_internal_nullguard.lib;absl_log_internal_proto.lib;absl_log_severity.lib;absl_log_sink.lib;absl_low_level_hash.lib;absl_malloc_internal.lib;absl_periodic_sampler.lib;absl_random_distributions.lib;absl_random_internal_distribution_test_util.lib;absl_random_internal_platform.lib;absl_random_internal_pool_urbg.lib;absl_random_internal_randen.lib;absl_random_internal_randen_hwaes.lib;absl_random_internal_randen_hwaes_impl.lib;absl_random_internal_randen_slow.lib;absl_random_internal_seed_material.lib;absl_random_seed_gen_exception.lib;absl_random_seed_sequences.lib;absl_raw_hash_set.lib;absl_raw_logging_internal.lib;absl_scoped_set_env.lib;absl_spinlock_wait.lib;absl_stacktrace.lib;absl_status.lib;absl_statusor.lib;absl_strerror.lib;absl_strings.lib;absl_strings_internal.lib;absl_string_view.lib;absl_str_format_internal.lib;absl_symbolize.lib;absl_synchronization.lib;absl_throw_delegate.lib;absl_time.lib;absl_time_zone.lib;Ws2_32.lib;utf8_range.lib;utf8_validity.lib;opengl32.lib;sqlite3.lib;Rpcrt4.lib;ws2_32.lib;winmm.lib;dbghelp.lib;version.lib;gdiplus.lib;GxIAPICPPEx.lib;MVSDKmd.lib;jpeg-static.lib;turbojpeg-static.lib;RTC5DLLx64.lib;opencv_world455.lib;expat.lib;%(AdditionalDependencies)</AdditionalDependencies>
<IgnoreSpecificDefaultLibraries>crypto.lib</IgnoreSpecificDefaultLibraries> <IgnoreSpecificDefaultLibraries>crypto.lib</IgnoreSpecificDefaultLibraries>

View File

@ -8,7 +8,7 @@
#include "../plc/SignalService.h" #include "../plc/SignalService.h"
XTPurifier::XTPurifier(ScannerCtrl* scannerCtrl) XTPurifier::XTPurifier(ScannerCtrl* scannerCtrl)
:m_ScannerCtrl(scannerCtrl) : m_ScannerCtrl(scannerCtrl)
, m_Client(NULL) , m_Client(NULL)
, m_PreConnectState(false) , m_PreConnectState(false)
, m_ManualCheckAirTightness(false) , m_ManualCheckAirTightness(false)

View File

@ -1,4 +1,4 @@
#pragma once #pragma once
#include "MetaData.h" #include "MetaData.h"
#include <string> #include <string>
@ -58,9 +58,9 @@ public:
float GetJobPrintHigh(); float GetJobPrintHigh();
public: public:
bool m_IsOpen; bool m_IsOpen;
uint64_t m_FirstStartTime;; uint64_t m_FirstStartTime;
uint64_t m_BeginPrintTime; //打印停歇时间判断 uint64_t m_BeginPrintTime; //打印停歇时间判断
uint64_t m_AutoPauseTime; //自动停打时间判断 uint64_t m_AutoPauseTime; //自动停打时间判断
bool m_IsAutoCtrl; bool m_IsAutoCtrl;
int m_SetParamType; int m_SetParamType;

View File

@ -1,4 +1,4 @@
#include "H3DMetaData.h" #include "H3DMetaData.h"
H3DMetaData::H3DMetaData() H3DMetaData::H3DMetaData()
{} {}
@ -135,6 +135,66 @@ bool H3DMetaData::LoadLayerByIndex(unsigned int lindex)
return rel; return rel;
} }
//lindex是第几层
bool H3DMetaData::GetLayerByIndex(unsigned int lindex, ::stream::LayerData** response)
{
bool rel = true;
if (lindex >= layers->vector_layers.size())return false;
LockMainDB();
Layer* layer = layers->vector_layers[lindex];
ClearBlockMap();
vector<DataBlock*> datablocks = layer->data_blocks;
for (size_t i = 0; i < datablocks.size(); ++i) {
DataBlock* db = datablocks[i];
BinaryFile* pbf = binary_files[db->bin->file_id];
if (!pbf)break;
ifstream* ifs = m_binary_file_map[pbf->name];
if (!ifs)break;
if (!db->belongPart)continue;
BPBinary::BinDataBlock* pbindb = new BPBinary::BinDataBlock;
ifs->seekg(db->bin->pos, ios::beg);
if (!ReadBDataBlock(general_info->job_dimensions, db->belongPart->layerDimensions, pbindb, ifs)) {
delete pbindb;
rel = false;
break;
}
m_block_map[db] = pbindb;
stream::LayerDataBlock* p = (*response)->add_layerdatablock();
p->set_order(datablocks[i]->order);
p->set_blocktype(m_block_map[datablocks[i]]->type);
size_t count = m_block_map[datablocks[i]]->point_indexs.size();
for (size_t i = 0; i < count; ++i) {
if (p->blocktype() == BIN_VECTOR) {
stream::VectorDataBlock* pvec = p->add_vecblocks();
BPBinary::VectorPoint* vecp = (BPBinary::VectorPoint*)(m_block_map[datablocks[i]]->point_indexs[i]);
pvec->set_startx(vecp->x1);
pvec->set_endx(vecp->y1);
pvec->set_starty(vecp->x2);
pvec->set_endx(vecp->y2);
}
else if (p->blocktype() == BIN_CHAIN) {
stream::ChainDataBlock* pChain = p->add_chainblocks();
BPBinary::ChainPoint* chainp = (BPBinary::ChainPoint*)(m_block_map[datablocks[i]]->point_indexs[i]);
pChain->set_dotnum(chainp->num_of_point);
for (unsigned int chainPointIndex = 0; chainPointIndex < chainp->num_of_point; ++chainPointIndex) {
stream::Point* pointp = pChain->add_pointvec();
BPBinary::BPoint* btemppoint = chainp->points[chainPointIndex];
pointp->set_xpos(btemppoint->x);
pointp->set_ypos(btemppoint->y);
}
}
}
}
(*response)->set_result(rel);
m_currentLayer = layer;
UnLockMainDB();
return rel;
}
bool H3DMetaData::LoadLayer(Layer* layer) bool H3DMetaData::LoadLayer(Layer* layer)
{ {
if (layer == NULL) return false; if (layer == NULL) return false;

View File

@ -1,4 +1,4 @@
#pragma once #pragma once
#include "MetaData.h" #include "MetaData.h"
class H3DFileProcessor; class H3DFileProcessor;
@ -10,6 +10,7 @@ public:
~H3DMetaData(); ~H3DMetaData();
bool LoadLayerByIndex(unsigned int lindex); bool LoadLayerByIndex(unsigned int lindex);
bool GetLayerByIndex(unsigned int lindex, ::stream::LayerData** response);
bool LoadLayer(Layer* layer); bool LoadLayer(Layer* layer);
bool LoadPrevLayer(Layer* layer); bool LoadPrevLayer(Layer* layer);
bool LoadRemoteLayerByIndex(unsigned int index); bool LoadRemoteLayerByIndex(unsigned int index);

View File

@ -5,6 +5,7 @@
#include <regex> #include <regex>
#include "../LanguageManager.h" #include "../LanguageManager.h"
#include "JobController.h" #include "JobController.h"
#include "BPBinary.h"
JobMetaData::JobMetaData() JobMetaData::JobMetaData()
: m_job_content(NULL) : m_job_content(NULL)
@ -306,6 +307,64 @@ bool JobMetaData::LoadLayerByIndex(unsigned int lindex)
return rel; return rel;
} }
bool JobMetaData::GetLayerByIndex(unsigned int lindex, ::stream::LayerData** response) {
bool rel = true;
if (lindex >= layers->vector_layers.size())return false;
LockMainDB();
Layer* layer = layers->vector_layers[lindex];
ClearBlockMap();
vector<DataBlock*> datablocks = layer->data_blocks;
for (size_t i = 0; i < datablocks.size(); ++i) {
BinaryFile* pbf = binary_files[datablocks[i]->bin->file_id];
if (!pbf)break;
ifstream* ifs = m_binary_file_map[pbf->name];
if (!ifs)break;
BPBinary::BinDataBlock* pbindb = new BPBinary::BinDataBlock;
ifs->seekg(datablocks[i]->bin->pos, ios::beg);
if (!ReadBDataBlock(layer->layer_summary, datablocks[i]->belongPart->layerDimensions, pbindb, ifs)) {
delete pbindb;
rel = false;
break;
}
m_block_map[datablocks[i]] = pbindb;
stream::LayerDataBlock* p = (*response)->add_layerdatablock();
p->set_order(datablocks[i]->order);
p->set_blocktype(m_block_map[datablocks[i]]->type);
size_t count = m_block_map[datablocks[i]]->point_indexs.size();
for (size_t i = 0; i < count; ++i) {
if (p->blocktype() == BIN_VECTOR) {
stream::VectorDataBlock* pvec = p->add_vecblocks();
BPBinary::VectorPoint* vecp = (BPBinary::VectorPoint*)(m_block_map[datablocks[i]]->point_indexs[i]);
pvec->set_startx(vecp->x1);
pvec->set_endx(vecp->y1);
pvec->set_starty(vecp->x2);
pvec->set_endx(vecp->y2);
}
else if (p->blocktype() == BIN_CHAIN) {
stream::ChainDataBlock* pChain = p->add_chainblocks();
BPBinary::ChainPoint* chainp = (BPBinary::ChainPoint*)(m_block_map[datablocks[i]]->point_indexs[i]);
pChain->set_dotnum(chainp->num_of_point);
for (unsigned int chainPointIndex = 0; chainPointIndex < chainp->num_of_point; ++chainPointIndex) {
stream::Point* pointp = pChain->add_pointvec();
BPBinary::BPoint* btemppoint = chainp->points[chainPointIndex];
pointp->set_xpos(btemppoint->x);
pointp->set_ypos(btemppoint->y);
}
}
}
}
(*response)->set_result(rel);
m_currentLayer = layer;
UnLockMainDB();
return rel;
}
bool JobMetaData::LoadLayer(Layer* layer) bool JobMetaData::LoadLayer(Layer* layer)
{ {
bool rel = true; bool rel = true;

View File

@ -1,4 +1,4 @@
#pragma once #pragma once
#include <set> #include <set>
#include "MetaData.h" #include "MetaData.h"
#include "JobContent.h" #include "JobContent.h"
@ -40,6 +40,7 @@ public:
~JobMetaData(); ~JobMetaData();
bool LoadFile(string path, string filename, vector<BPBinary::BFileInfo>& bfileinfos,string binpath); bool LoadFile(string path, string filename, vector<BPBinary::BFileInfo>& bfileinfos,string binpath);
bool LoadLayerByIndex(unsigned int lindex); bool LoadLayerByIndex(unsigned int lindex);
bool GetLayerByIndex(unsigned int lindex, ::stream::LayerData** response);
bool LoadLayer(Layer* layer); bool LoadLayer(Layer* layer);
void SetJobContent(JobContent* job_content); void SetJobContent(JobContent* job_content);
bool LoadPrevLayer(Layer* layer); bool LoadPrevLayer(Layer* layer);

View File

@ -9,6 +9,8 @@
#include "BPBinary.h" #include "BPBinary.h"
#include "../log/PartPosBean.h" #include "../log/PartPosBean.h"
#include "../protobuf/stream.pb.h"
class MetaData class MetaData
{ {
public: public:
@ -354,7 +356,7 @@ public:
map<int, double> estimateTimeMap; map<int, double> estimateTimeMap;
uint64_t powder_pos; uint64_t powder_pos;
uint32_t powder; //供粉量 uint32_t powder; //供粉量
uint32_t layer_thickness; uint32_t layer_thickness; //层厚
int scan_times; int scan_times;
LayerSummary* layer_summary; //<2F><><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><E6B4A2>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܳ<EFBFBD><DCB3>ȣ<EFBFBD><C8A3><EFBFBD>Ծ<EFBFBD>ܳ<EFBFBD><DCB3>ȣ<EFBFBD><C8A3>Լ<EFBFBD>xy<78><79><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сֵ<D0A1><D6B5> LayerSummary* layer_summary; //<2F><><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><E6B4A2>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܳ<EFBFBD><DCB3>ȣ<EFBFBD><C8A3><EFBFBD>Ծ<EFBFBD>ܳ<EFBFBD><DCB3>ȣ<EFBFBD><C8A3>Լ<EFBFBD>xy<78><79><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сֵ<D0A1><D6B5>
vector<DataBlock*> data_blocks; //<2F><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD>Ӧbinary <20>ļ<EFBFBD><C4BC>ĵ<EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD>Ϣ. vector<DataBlock*> data_blocks; //<2F><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD>Ӧbinary <20>ļ<EFBFBD><C4BC>ĵ<EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD>Ϣ.
@ -421,6 +423,7 @@ public:
virtual ~MetaData(); virtual ~MetaData();
static void InitTypeMap(); static void InitTypeMap();
virtual bool LoadLayerByIndex(unsigned int lindex) = 0; virtual bool LoadLayerByIndex(unsigned int lindex) = 0;
virtual bool GetLayerByIndex(unsigned int lindex, ::stream::LayerData** response) = 0;
virtual bool LoadLayer(Layer* layer) = 0; virtual bool LoadLayer(Layer* layer) = 0;
virtual bool LoadPrevLayer(Layer* layer) = 0; virtual bool LoadPrevLayer(Layer* layer) = 0;
virtual bool LoadPrevLayerByIndex(unsigned int lindex) = 0; virtual bool LoadPrevLayerByIndex(unsigned int lindex) = 0;

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,78 @@
@ECHO OFF
REM File: ScanlabClassChecker.cmd January 2012
REM (c) Copyright 2012 by SCANLAB AG. All rights reserved.
REM
REM THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
REM KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
REM IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
REM PURPOSE.
REM
REM Abstract
REM This script checks on the registry for a security entry that
REM allows the built-in user group access to the RTC5 controller.
REM If necessary, this script adds the particular security entry
REM to the registry.
REM
REM Use
REM Run this script subsequent to the installation of the WDF driver
REM for the RTC5 controller.
reg query HKLM\System\CurrentControlSet\Control\Class\{D6797410-1514-11d4-BBA5-0050DA39AF40} /ve
IF %ERRORLEVEL% EQU 1 goto sub_routine_no_entry
SET _IsProperties=0
FOR /F "tokens=7 delims=\" %%G IN ('REG QUERY HKLM\System\CurrentControlSet\Control\Class\{D6797410-1514-11d4-BBA5-0050DA39AF40}') DO (IF %%G==Properties set _IsProperties=1)
IF %_IsProperties% NEQ 0 goto sub_routine_properties
REM We need to run elevated to add the required sub-key Properties.
REM
REM Do OPENFILES to check for administrative privileges
OPENFILES > nul
IF ERRORLEVEL 1 (
COLOR 0E
CLS
ECHO System's registry entry of the SCANLAB device class
ECHO needs to be updated for the new RTC driver.
ECHO In order to do this, run this cmd file as an administrator:
ECHO.
ECHO Right click on this cmd file and select 'Run as administrator'.
ECHO.
PAUSE
EXIT 1
)
REG ADD HKLM\System\CurrentControlSet\Control\Class\{D6797410-1514-11d4-BBA5-0050DA39AF40}\Properties /v DeviceCharacteristics /t REG_DWORD /d 256
REG ADD HKLM\System\CurrentControlSet\Control\Class\{D6797410-1514-11d4-BBA5-0050DA39AF40}\Properties /v Security /t REG_BINARY /d 010004900000000000000000000000001400000002004c0003000000000014000000001001010000000000051200000000001800000000100102000000000005200000002002000000001800000000c001020000000000052000000021020000
REM We need to reboot.
CLS
ECHO The update takes effect after a reboot.
ECHO.
ECHO.
COLOR 0E
SET /P UserChoice=Enter Y to reboot now:
IF "%UserChoice%"=="" goto sub_routine_no_reboot
IF /I "%UserChoice%"=="Y" goto sub_routine_reboot
:sub_routine_no_reboot
COLOR
ECHO No reboot invoked.
ECHO.
PAUSE
goto:eof
:sub_routine_reboot
SHUTDOWN /r /d P:4:2
PAUSE
goto:eof
:sub_routine_properties
CLS
ECHO System's registry entry of the SCANLAB device class is up to date.
ECHO.
PAUSE
goto:eof
:sub_routine_no_entry
CLS
ECHO Nothing to do. The system is ready for a RTC installation.
ECHO.
PAUSE
goto:eof

Binary file not shown.

View File

@ -0,0 +1 @@

View File

@ -0,0 +1,221 @@
; File: RTC5DRV.inf
;-----------------------------------------------------------------------------
; Driver installation file
; for SCANLAB's RTC5 interface board
; for Windows 2000 or better
;
; Copyright (c) 2012 by SCANLAB AG. All rights reserved.
;
; THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
; KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
; IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
; PURPOSE.
;-----------------------------------------------------------------------------
[Version]
Signature="$WINDOWS NT$"
Class=SCANLAB
ClassGUID={D6797410-1514-11d4-BBA5-0050DA39AF40}
Provider=%MFGNAME%
DriverVer=06/23/2012,6.1.7600.16385
CatalogFile.nt = RTC5DRV.cat
CatalogFile.ntx86 = RTC5DRVx86.cat
CatalogFile.ntamd64 = RTC5DRVx64.cat
;-----------------------------------------------------------------------------
; Class section
;-----------------------------------------------------------------------------
; NOTE: ClassInstall32 section gets executed only, if the SCANLAB class
; does not exist in the registry. SCANLAB's class key is:
; HKLM\System\CurrentControlSet\Control\
; Class\{D6797410-1514-11d4-BBA5-0050DA39AF40}
[ClassInstall32]
AddReg=ManuClassReg
[ManuClassReg]
HKR,,Icon,,-5
HKR,,,0,%ClassName%
HKR,,DeviceCharacteristics,0x10001,0x100 ; Use same security checks on
; relative opens
; Allow generic all access to the system and built-in Administrators and
; allow read/write access to the built-in user group.
HKR,,Security,,"D:P(A;;GA;;;SY)(A;;GA;;;BA)(A;;GRGW;;;BU)"
;-----------------------------------------------------------------------------
; Device Install section
;-----------------------------------------------------------------------------
[ControlFlags]
ExcludeFromSelect=PCI\VEN_104C&DEV_9065&SUBSYS_35435452
[Manufacturer]
%MFGNAME%=SCANLAB,ntx86.5.1,ntamd64
; For Win2K
[SCANLAB]
; DisplayName Section DeviceId
; ----------- ------- --------
%RTC5.DRVDESC%= RTC5Install.nt, PCI\VEN_104C&DEV_9065&SUBSYS_35435452
; For XP and later
[SCANLAB.ntx86.5.1]
; DisplayName Section DeviceId
; ----------- ------- --------
%RTC5.DRVDESC%= RTC5Install.ntx86.5.1,PCI\VEN_104C&DEV_9065&SUBSYS_35435452
[SCANLAB.ntamd64]
; DisplayName Section DeviceId
; ----------- ------- --------
%RTC5.DRVDESC%= RTC5Install.ntamd64, PCI\VEN_104C&DEV_9065&SUBSYS_35435452
;-----------------------------------------------------------------------------
; RTC5 specific Sections
;-----------------------------------------------------------------------------
[RTC5Install.nt]
CopyFiles=DriverCopyFiles.nt
[RTC5Install.ntx86.5.1]
CopyFiles=DriverCopyFiles.ntx86.5.1
[RTC5Install.ntamd64]
CopyFiles=DriverCopyFiles.ntamd64
[RTC5Install.nt.Services]
AddService=RTC5DRV,2,DriverService.nt
[RTC5Install.ntx86.5.1.Services]
AddService=RTC5DRVx86,2,DriverService.ntx86.5.1
[RTC5Install.ntamd64.Services]
AddService=RTC5DRVx64,2,DriverService.ntamd64
[RTC5Install.nt.hw]
AddReg=RTC5HwAddReg
[RTC5Install.ntx86.5.1.hw]
AddReg=RTC5HwAddReg
[RTC5Install.ntamd64.hw]
AddReg=RTC5HwAddReg
[RTC5HwAddReg]
HKR,,FriendlyName,,"RTC5 : Real Time Scanner Controller"
;-----------------------------------------------------------------------------
; Common Sections
;-----------------------------------------------------------------------------
[DestinationDirs]
DefaultDestDir=10,System32\Drivers
DriverCopyFiles.nt=10,System32\Drivers
DriverCopyFiles.ntx86.5.1=10,System32\Drivers
DriverCopyFiles.ntamd64=10,System32\Drivers
[SourceDisksNames]
1=%DiskName%,,,
[SourceDisksFiles]
RTC5DRV.sys=1
RTC5DRVx86.sys=1
RTC5DRVx64.sys=1
[DriverCopyFiles.nt]
RTC5DRV.sys,,,2
[DriverCopyFiles.ntx86.5.1]
RTC5DRVx86.sys,,,2
[DriverCopyFiles.ntamd64]
RTC5DRVx64.sys,,,2
[DriverService.nt]
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %10%\system32\drivers\RTC5DRV.sys
[DriverService.ntx86.5.1]
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %10%\system32\drivers\RTC5DRVx86.sys
[DriverService.ntamd64]
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %10%\system32\drivers\RTC5DRVx64.sys
;-----------------------------------------------------------------------------
; WDF Co-installer Sections
;-----------------------------------------------------------------------------
[DestinationDirs]
CoInstaller_CopyFiles.nt = 11
CoInstaller_CopyFiles.ntx86.5.1 = 11
CoInstaller_CopyFiles.ntamd64 = 11
[RTC5Install.nt.CoInstallers]
AddReg=CoInstaller_AddReg
CopyFiles=CoInstaller_CopyFiles.nt
[RTC5Install.ntx86.5.1.CoInstallers]
AddReg=CoInstaller_AddReg
CopyFiles=CoInstaller_CopyFiles.ntx86.5.1
[RTC5Install.ntamd64.CoInstallers]
AddReg=CoInstaller_AddReg
CopyFiles=CoInstaller_CopyFiles.ntamd64
[SourceDisksFiles.x86]
WdfCoInstaller01009.dll=1,x86
[CoInstaller_CopyFiles.nt]
WdfCoInstaller01009.dll
[CoInstaller_CopyFiles.ntx86.5.1]
WdfCoInstaller01009.dll
[SourceDisksFiles.amd64]
WdfCoInstaller01009.dll=1,amd64
[CoInstaller_CopyFiles.ntamd64]
WdfCoInstaller01009.dll
[SourceDisksFiles]
WdfCoInstaller01009.dll=1
[CoInstaller_AddReg]
HKR,,CoInstallers32,0x00010000, "WdfCoInstaller01009.dll,WdfCoInstaller"
[RTC5Install.nt.Wdf]
KmdfService = RTC5DRV, RTC5Install_wdfsect
[RTC5Install.ntx86.5.1.Wdf]
KmdfService = RTC5DRVx86, RTC5Install_wdfsect
[RTC5Install.ntamd64.Wdf]
KmdfService = RTC5DRVx64, RTC5Install_wdfsect
[RTC5Install_wdfsect]
KmdfLibraryVersion = 1.9
;-----------------------------------------------------------------------------
; String Definitions
;-----------------------------------------------------------------------------
[Strings]
MFGNAME = "SCANLAB AG"
ClassName = "SCANLAB controllers"
RTC5.DRVDESC = "SCANLAB RTC5 : Real Time Scan-System Controller"
DiskName = "SCANLAB driver disk"

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,915 @@
//-----------------------------------------------------------------------------
// File: RTC5impl.hpp
//-----------------------------------------------------------------------------
//
// Abstract
// RTC5 function prototypes for implicitly linking - also known as
// static load linking - to the RTC5DLL.DLL or libslrtc5.so.
//
// This file was automatically generated on Jan 8, 2019
//
// NOTE
// On Windows platforms for building an executable, you must link with
// the (Visual C++) import library RTC5DLL.LIB.
//
//-----------------------------------------------------------------------------
#pragma once
#if defined(__cplusplus)
extern "C" {
#endif //defined(__cplusplus)
#ifdef _WIN32
#include <windows.h>
#if !defined(ULONG_PTR) // usually defined in <BaseTsd.h>
#if !defined(_WIN64)
#define ULONG_PTR UINT
#else
#define ULONG_PTR UINT64
#endif // !defined(_WIN64)
#endif // !defined(ULONG_PTR)
#else
#include <stdint.h>
typedef int32_t LONG; // LONG is assumed to be 4 Bytes
typedef uint32_t UINT; // UINT is assumed to be 4 Bytes
typedef uintptr_t ULONG_PTR;
#define __stdcall
#endif
#ifdef _WIN32
#define RTC5_API __declspec(dllimport)
#else
#define RTC5_API
#endif
RTC5_API UINT __stdcall init_rtc5_dll(void);
RTC5_API void __stdcall free_rtc5_dll(void);
RTC5_API void __stdcall set_rtc4_mode(void);
RTC5_API void __stdcall set_rtc5_mode(void);
RTC5_API UINT __stdcall get_rtc_mode(void);
RTC5_API UINT __stdcall n_get_error(const UINT CardNo);
RTC5_API UINT __stdcall n_get_last_error(const UINT CardNo);
RTC5_API void __stdcall n_reset_error(const UINT CardNo, const UINT Code);
RTC5_API UINT __stdcall n_set_verify(const UINT CardNo, const UINT Verify);
RTC5_API UINT __stdcall get_error(void);
RTC5_API UINT __stdcall get_last_error(void);
RTC5_API void __stdcall reset_error(const UINT Code);
RTC5_API UINT __stdcall set_verify(const UINT Verify);
RTC5_API UINT __stdcall verify_checksum(const char* Name);
RTC5_API UINT __stdcall read_abc_from_file(const char* Name, double& A, double& B, double& C);
RTC5_API UINT __stdcall write_abc_to_file(const char* Name, const double A, const double B, const double C);
RTC5_API UINT __stdcall rtc5_count_cards(void);
RTC5_API UINT __stdcall acquire_rtc(const UINT CardNo);
RTC5_API UINT __stdcall release_rtc(const UINT CardNo);
RTC5_API UINT __stdcall select_rtc(const UINT CardNo);
RTC5_API UINT __stdcall get_dll_version(void);
RTC5_API UINT __stdcall n_get_serial_number(const UINT CardNo);
RTC5_API UINT __stdcall n_get_hex_version(const UINT CardNo);
RTC5_API UINT __stdcall n_get_rtc_version(const UINT CardNo);
RTC5_API UINT __stdcall get_serial_number(void);
RTC5_API UINT __stdcall get_hex_version(void);
RTC5_API UINT __stdcall get_rtc_version(void);
RTC5_API UINT __stdcall n_load_program_file(const UINT CardNo, const char* Path);
RTC5_API void __stdcall n_sync_slaves(const UINT CardNo);
RTC5_API UINT __stdcall n_get_sync_status(const UINT CardNo);
RTC5_API UINT __stdcall n_load_correction_file(const UINT CardNo, const char* Name, const UINT No, const UINT Dim);
RTC5_API UINT __stdcall n_load_zoom_correction_file(const UINT CardNo, const char* Name, const UINT No);
RTC5_API UINT __stdcall n_load_z_table(const UINT CardNo, const double A, const double B, const double C);
RTC5_API void __stdcall n_select_cor_table(const UINT CardNo, const UINT HeadA, const UINT HeadB);
RTC5_API UINT __stdcall n_set_dsp_mode(const UINT CardNo, const UINT Mode);
RTC5_API long __stdcall n_load_stretch_table(const UINT CardNo, const char* Name, const long No);
RTC5_API void __stdcall n_number_of_correction_tables(const UINT CardNo, const UINT Number);
RTC5_API double __stdcall n_get_head_para(const UINT CardNo, const UINT HeadNo, const UINT ParaNo);
RTC5_API double __stdcall n_get_table_para(const UINT CardNo, const UINT TableNo, const UINT ParaNo);
RTC5_API UINT __stdcall load_program_file(const char* Path);
RTC5_API void __stdcall sync_slaves(void);
RTC5_API UINT __stdcall get_sync_status(void);
RTC5_API UINT __stdcall load_correction_file(const char* Name, const UINT No, const UINT Dim);
RTC5_API UINT __stdcall load_zoom_correction_file(const char* Name, const UINT No);
RTC5_API UINT __stdcall load_z_table(const double A, const double B, const double C);
RTC5_API void __stdcall select_cor_table(const UINT HeadA, const UINT HeadB);
RTC5_API UINT __stdcall set_dsp_mode(const UINT Mode);
RTC5_API long __stdcall load_stretch_table(const char* Name, const long No);
RTC5_API void __stdcall number_of_correction_tables(const UINT Number);
RTC5_API double __stdcall get_head_para(const UINT HeadNo, const UINT ParaNo);
RTC5_API double __stdcall get_table_para(const UINT TableNo, const UINT ParaNo);
RTC5_API void __stdcall n_config_list(const UINT CardNo, const UINT Mem1, const UINT Mem2);
RTC5_API void __stdcall n_get_config_list(const UINT CardNo);
RTC5_API UINT __stdcall n_save_disk(const UINT CardNo, const char* Name, const UINT Mode);
RTC5_API UINT __stdcall n_load_disk(const UINT CardNo, const char* Name, const UINT Mode);
RTC5_API UINT __stdcall n_get_list_space(const UINT CardNo);
RTC5_API void __stdcall config_list(const UINT Mem1, const UINT Mem2);
RTC5_API void __stdcall get_config_list(void);
RTC5_API UINT __stdcall save_disk(const char* Name, const UINT Mode);
RTC5_API UINT __stdcall load_disk(const char* Name, const UINT Mode);
RTC5_API UINT __stdcall get_list_space(void);
RTC5_API void __stdcall n_set_start_list_pos(const UINT CardNo, const UINT ListNo, const UINT Pos);
RTC5_API void __stdcall n_set_start_list(const UINT CardNo, const UINT ListNo);
RTC5_API void __stdcall n_set_start_list_1(const UINT CardNo);
RTC5_API void __stdcall n_set_start_list_2(const UINT CardNo);
RTC5_API void __stdcall n_set_input_pointer(const UINT CardNo, const UINT Pos);
RTC5_API UINT __stdcall n_load_list(const UINT CardNo, const UINT ListNo, const UINT Pos);
RTC5_API void __stdcall n_load_sub(const UINT CardNo, const UINT Index);
RTC5_API void __stdcall n_load_char(const UINT CardNo, const UINT Char);
RTC5_API void __stdcall n_load_text_table(const UINT CardNo, const UINT Index);
RTC5_API void __stdcall n_get_list_pointer(const UINT CardNo, UINT& ListNo, UINT& Pos);
RTC5_API UINT __stdcall n_get_input_pointer(const UINT CardNo);
RTC5_API void __stdcall set_start_list_pos(const UINT ListNo, const UINT Pos);
RTC5_API void __stdcall set_start_list(const UINT ListNo);
RTC5_API void __stdcall set_start_list_1(void);
RTC5_API void __stdcall set_start_list_2(void);
RTC5_API void __stdcall set_input_pointer(const UINT Pos);
RTC5_API UINT __stdcall load_list(const UINT ListNo, const UINT Pos);
RTC5_API void __stdcall load_sub(const UINT Index);
RTC5_API void __stdcall load_char(const UINT Char);
RTC5_API void __stdcall load_text_table(const UINT Index);
RTC5_API void __stdcall get_list_pointer(UINT& ListNo, UINT& Pos);
RTC5_API UINT __stdcall get_input_pointer(void);
RTC5_API void __stdcall n_execute_list_pos(const UINT CardNo, const UINT ListNo, const UINT Pos);
RTC5_API void __stdcall n_execute_at_pointer(const UINT CardNo, const UINT Pos);
RTC5_API void __stdcall n_execute_list(const UINT CardNo, const UINT ListNo);
RTC5_API void __stdcall n_execute_list_1(const UINT CardNo);
RTC5_API void __stdcall n_execute_list_2(const UINT CardNo);
RTC5_API void __stdcall n_get_out_pointer(const UINT CardNo, UINT& ListNo, UINT& Pos);
RTC5_API void __stdcall execute_list_pos(const UINT ListNo, const UINT Pos);
RTC5_API void __stdcall execute_at_pointer(const UINT Pos);
RTC5_API void __stdcall execute_list(const UINT ListNo);
RTC5_API void __stdcall execute_list_1(void);
RTC5_API void __stdcall execute_list_2(void);
RTC5_API void __stdcall get_out_pointer(UINT& ListNo, UINT& Pos);
RTC5_API void __stdcall n_auto_change_pos(const UINT CardNo, const UINT Pos);
RTC5_API void __stdcall n_start_loop(const UINT CardNo);
RTC5_API void __stdcall n_quit_loop(const UINT CardNo);
RTC5_API void __stdcall n_pause_list(const UINT CardNo);
RTC5_API void __stdcall n_restart_list(const UINT CardNo);
RTC5_API void __stdcall n_release_wait(const UINT CardNo);
RTC5_API void __stdcall n_stop_execution(const UINT CardNo);
RTC5_API void __stdcall n_set_pause_list_cond(const UINT CardNo, const UINT Mask1, const UINT Mask0);
RTC5_API void __stdcall n_set_pause_list_not_cond(const UINT CardNo, const UINT Mask1, const UINT Mask0);
RTC5_API void __stdcall n_auto_change(const UINT CardNo);
RTC5_API void __stdcall n_stop_list(const UINT CardNo);
RTC5_API UINT __stdcall n_get_wait_status(const UINT CardNo);
RTC5_API UINT __stdcall n_read_status(const UINT CardNo);
RTC5_API void __stdcall n_get_status(const UINT CardNo, UINT& Status, UINT& Pos);
RTC5_API void __stdcall auto_change_pos(const UINT Pos);
RTC5_API void __stdcall start_loop(void);
RTC5_API void __stdcall quit_loop(void);
RTC5_API void __stdcall pause_list(void);
RTC5_API void __stdcall restart_list(void);
RTC5_API void __stdcall release_wait(void);
RTC5_API void __stdcall stop_execution(void);
RTC5_API void __stdcall set_pause_list_cond(const UINT Mask1, const UINT Mask0);
RTC5_API void __stdcall set_pause_list_not_cond(const UINT Mask1, const UINT Mask0);
RTC5_API void __stdcall auto_change(void);
RTC5_API void __stdcall stop_list(void);
RTC5_API UINT __stdcall get_wait_status(void);
RTC5_API UINT __stdcall read_status(void);
RTC5_API void __stdcall get_status(UINT& Status, UINT& Pos);
RTC5_API void __stdcall n_set_extstartpos(const UINT CardNo, const UINT Pos);
RTC5_API void __stdcall n_set_max_counts(const UINT CardNo, const UINT Counts);
RTC5_API void __stdcall n_set_control_mode(const UINT CardNo, const UINT Mode);
RTC5_API void __stdcall n_simulate_ext_stop(const UINT CardNo);
RTC5_API void __stdcall n_simulate_ext_start_ctrl(const UINT CardNo);
RTC5_API UINT __stdcall n_get_counts(const UINT CardNo);
RTC5_API UINT __stdcall n_get_startstop_info(const UINT CardNo);
RTC5_API void __stdcall set_extstartpos(const UINT Pos);
RTC5_API void __stdcall set_max_counts(const UINT Counts);
RTC5_API void __stdcall set_control_mode(const UINT Mode);
RTC5_API void __stdcall simulate_ext_stop(void);
RTC5_API void __stdcall simulate_ext_start_ctrl(void);
RTC5_API UINT __stdcall get_counts(void);
RTC5_API UINT __stdcall get_startstop_info(void);
RTC5_API void __stdcall n_copy_dst_src(const UINT CardNo, const UINT Dst, const UINT Src, const UINT Mode);
RTC5_API void __stdcall n_set_char_pointer(const UINT CardNo, const UINT Char, const UINT Pos);
RTC5_API void __stdcall n_set_sub_pointer(const UINT CardNo, const UINT Index, const UINT Pos);
RTC5_API void __stdcall n_set_text_table_pointer(const UINT CardNo, const UINT Index, const UINT Pos);
RTC5_API void __stdcall n_set_char_table(const UINT CardNo, const UINT Index, const UINT Pos);
RTC5_API UINT __stdcall n_get_char_pointer(const UINT CardNo, const UINT Char);
RTC5_API UINT __stdcall n_get_sub_pointer(const UINT CardNo, const UINT Index);
RTC5_API UINT __stdcall n_get_text_table_pointer(const UINT CardNo, const UINT Index);
RTC5_API void __stdcall copy_dst_src(const UINT Dst, const UINT Src, const UINT Mode);
RTC5_API void __stdcall set_char_pointer(const UINT Char, const UINT Pos);
RTC5_API void __stdcall set_sub_pointer(const UINT Index, const UINT Pos);
RTC5_API void __stdcall set_text_table_pointer(const UINT Index, const UINT Pos);
RTC5_API void __stdcall set_char_table(const UINT Index, const UINT Pos);
RTC5_API UINT __stdcall get_char_pointer(const UINT Char);
RTC5_API UINT __stdcall get_sub_pointer(const UINT Index);
RTC5_API UINT __stdcall get_text_table_pointer(const UINT Index);
RTC5_API void __stdcall n_time_update(const UINT CardNo);
RTC5_API void __stdcall n_set_serial_step(const UINT CardNo, const UINT No, const UINT Step);
RTC5_API void __stdcall n_select_serial_set(const UINT CardNo, const UINT No);
RTC5_API void __stdcall n_set_serial(const UINT CardNo, const UINT No);
RTC5_API double __stdcall n_get_serial(const UINT CardNo);
RTC5_API double __stdcall n_get_list_serial(const UINT CardNo, UINT& SetNo);
RTC5_API void __stdcall time_update(void);
RTC5_API void __stdcall set_serial_step(const UINT No, const UINT Step);
RTC5_API void __stdcall select_serial_set(const UINT No);
RTC5_API void __stdcall set_serial(const UINT No);
RTC5_API double __stdcall get_serial(void);
RTC5_API double __stdcall get_list_serial(UINT& SetNo);
RTC5_API void __stdcall n_write_io_port_mask(const UINT CardNo, const UINT Value, const UINT Mask);
RTC5_API void __stdcall n_write_8bit_port(const UINT CardNo, const UINT Value);
RTC5_API UINT __stdcall n_read_io_port(const UINT CardNo);
RTC5_API UINT __stdcall n_read_io_port_buffer(const UINT CardNo, const UINT Index, UINT& Value, long& XPos, long& YPos, UINT& Time);
RTC5_API UINT __stdcall n_get_io_status(const UINT CardNo);
RTC5_API UINT __stdcall n_read_analog_in(const UINT CardNo);
RTC5_API void __stdcall n_write_da_x(const UINT CardNo, const UINT x, const UINT Value);
RTC5_API void __stdcall n_set_laser_off_default(const UINT CardNo, const UINT AnalogOut1, const UINT AnalogOut2, const UINT DigitalOut);
RTC5_API void __stdcall n_set_port_default(const UINT CardNo, const UINT Port, const UINT Value);
RTC5_API void __stdcall n_write_io_port(const UINT CardNo, const UINT Value);
RTC5_API void __stdcall n_write_da_1(const UINT CardNo, const UINT Value);
RTC5_API void __stdcall n_write_da_2(const UINT CardNo, const UINT Value);
RTC5_API void __stdcall write_io_port_mask(const UINT Value, const UINT Mask);
RTC5_API void __stdcall write_8bit_port(const UINT Value);
RTC5_API UINT __stdcall read_io_port(void);
RTC5_API UINT __stdcall read_io_port_buffer(const UINT Index, UINT& Value, long& XPos, long& YPos, UINT& Time);
RTC5_API UINT __stdcall get_io_status(void);
RTC5_API UINT __stdcall read_analog_in(void);
RTC5_API void __stdcall write_da_x(const UINT x, const UINT Value);
RTC5_API void __stdcall set_laser_off_default(const UINT AnalogOut1, const UINT AnalogOut2, const UINT DigitalOut);
RTC5_API void __stdcall set_port_default(const UINT Port, const UINT Value);
RTC5_API void __stdcall write_io_port(const UINT Value);
RTC5_API void __stdcall write_da_1(const UINT Value);
RTC5_API void __stdcall write_da_2(const UINT Value);
RTC5_API void __stdcall n_disable_laser(const UINT CardNo);
RTC5_API void __stdcall n_enable_laser(const UINT CardNo);
RTC5_API void __stdcall n_laser_signal_on(const UINT CardNo);
RTC5_API void __stdcall n_laser_signal_off(const UINT CardNo);
RTC5_API void __stdcall n_set_standby(const UINT CardNo, const UINT HalfPeriod, const UINT PulseLength);
RTC5_API void __stdcall n_set_laser_pulses_ctrl(const UINT CardNo, const UINT HalfPeriod, const UINT PulseLength);
RTC5_API void __stdcall n_set_firstpulse_killer(const UINT CardNo, const UINT Length);
RTC5_API void __stdcall n_set_qswitch_delay(const UINT CardNo, const UINT Delay);
RTC5_API void __stdcall n_set_laser_mode(const UINT CardNo, const UINT Mode);
RTC5_API void __stdcall n_set_laser_control(const UINT CardNo, const UINT Ctrl);
RTC5_API void __stdcall n_set_laser_pin_out(const UINT CardNo, const UINT Pins);
RTC5_API UINT __stdcall n_get_laser_pin_in(const UINT CardNo);
RTC5_API void __stdcall n_set_softstart_level(const UINT CardNo, const UINT Index, const UINT Level);
RTC5_API void __stdcall n_set_softstart_mode(const UINT CardNo, const UINT Mode, const UINT Number, const UINT Delay);
RTC5_API UINT __stdcall n_set_auto_laser_control(const UINT CardNo, const UINT Ctrl, const UINT Value, const UINT Mode, const UINT MinValue, const UINT MaxValue);
RTC5_API UINT __stdcall n_set_auto_laser_params(const UINT CardNo, const UINT Ctrl, const UINT Value, const UINT MinValue, const UINT MaxValue);
RTC5_API long __stdcall n_load_auto_laser_control(const UINT CardNo, const char* Name, const UINT No);
RTC5_API long __stdcall n_load_position_control(const UINT CardNo, const char* Name, const UINT No);
RTC5_API void __stdcall n_set_default_pixel(const UINT CardNo, const UINT PulseLength);
RTC5_API void __stdcall n_get_standby(const UINT CardNo, UINT& HalfPeriod, UINT& PulseLength);
RTC5_API void __stdcall n_set_pulse_picking(const UINT CardNo, const UINT No);
RTC5_API void __stdcall n_set_pulse_picking_length(const UINT CardNo, const UINT Length);
RTC5_API void __stdcall n_config_laser_signals(const UINT CardNo, const UINT Config);
RTC5_API void __stdcall disable_laser(void);
RTC5_API void __stdcall enable_laser(void);
RTC5_API void __stdcall laser_signal_on(void);
RTC5_API void __stdcall laser_signal_off(void);
RTC5_API void __stdcall set_standby(const UINT HalfPeriod, const UINT PulseLength);
RTC5_API void __stdcall set_laser_pulses_ctrl(const UINT HalfPeriod, const UINT PulseLength);
RTC5_API void __stdcall set_firstpulse_killer(const UINT Length);
RTC5_API void __stdcall set_qswitch_delay(const UINT Delay);
RTC5_API void __stdcall set_laser_mode(const UINT Mode);
RTC5_API void __stdcall set_laser_control(const UINT Ctrl);
RTC5_API void __stdcall set_laser_pin_out(const UINT Pins);
RTC5_API UINT __stdcall get_laser_pin_in(void);
RTC5_API void __stdcall set_softstart_level(const UINT Index, const UINT Level);
RTC5_API void __stdcall set_softstart_mode(const UINT Mode, const UINT Number, const UINT Delay);
RTC5_API UINT __stdcall set_auto_laser_control(const UINT Ctrl, const UINT Value, const UINT Mode, const UINT MinValue, const UINT MaxValue);
RTC5_API UINT __stdcall set_auto_laser_params(const UINT Ctrl, const UINT Value, const UINT MinValue, const UINT MaxValue);
RTC5_API long __stdcall load_auto_laser_control(const char* Name, const UINT No);
RTC5_API long __stdcall load_position_control(const char* Name, const UINT No);
RTC5_API void __stdcall set_default_pixel(const UINT PulseLength);
RTC5_API void __stdcall get_standby(UINT& HalfPeriod, UINT& PulseLength);
RTC5_API void __stdcall set_pulse_picking(const UINT No);
RTC5_API void __stdcall set_pulse_picking_length(const UINT Length);
RTC5_API void __stdcall config_laser_signals(const UINT Config);
RTC5_API void __stdcall n_set_ext_start_delay(const UINT CardNo, const long Delay, const UINT EncoderNo);
RTC5_API void __stdcall n_set_rot_center(const UINT CardNo, const long X, const long Y);
RTC5_API void __stdcall n_simulate_encoder(const UINT CardNo, const UINT EncoderNo);
RTC5_API UINT __stdcall n_get_marking_info(const UINT CardNo);
RTC5_API void __stdcall n_set_encoder_speed_ctrl(const UINT CardNo, const UINT EncoderNo, const double Speed, const double Smooth);
RTC5_API void __stdcall n_set_mcbsp_x(const UINT CardNo, const double ScaleX);
RTC5_API void __stdcall n_set_mcbsp_y(const UINT CardNo, const double ScaleY);
RTC5_API void __stdcall n_set_mcbsp_rot(const UINT CardNo, const double Resolution);
RTC5_API void __stdcall n_set_mcbsp_matrix(const UINT CardNo);
RTC5_API void __stdcall n_set_mcbsp_in(const UINT CardNo, const UINT Mode, const double Scale);
RTC5_API void __stdcall n_set_multi_mcbsp_in(const UINT CardNo, const UINT Ctrl, const UINT P, const UINT Mode);
RTC5_API void __stdcall n_set_fly_tracking_error(const UINT CardNo, const UINT TrackingErrorX, const UINT TrackingErrorY);
RTC5_API long __stdcall n_load_fly_2d_table(const UINT CardNo, const char* Name, const UINT No);
RTC5_API void __stdcall n_init_fly_2d(const UINT CardNo, const long OffsetX, const long OffsetY);
RTC5_API void __stdcall n_get_fly_2d_offset(const UINT CardNo, long& OffsetX, long& OffsetY);
RTC5_API void __stdcall n_get_encoder(const UINT CardNo, long& Encoder0, long& Encoder1);
RTC5_API void __stdcall n_read_encoder(const UINT CardNo, long& Encoder0_1, long& Encoder1_1, long& Encoder0_2, long& Encoder1_2);
RTC5_API long __stdcall n_get_mcbsp(const UINT CardNo);
RTC5_API long __stdcall n_read_mcbsp(const UINT CardNo, const UINT No);
RTC5_API long __stdcall n_read_multi_mcbsp(const UINT CardNo, const UINT No);
RTC5_API void __stdcall set_ext_start_delay(const long Delay, const UINT EncoderNo);
RTC5_API void __stdcall set_rot_center(const long X, const long Y);
RTC5_API void __stdcall simulate_encoder(const UINT EncoderNo);
RTC5_API UINT __stdcall get_marking_info(void);
RTC5_API void __stdcall set_encoder_speed_ctrl(const UINT EncoderNo, const double Speed, const double Smooth);
RTC5_API void __stdcall set_mcbsp_x(const double ScaleX);
RTC5_API void __stdcall set_mcbsp_y(const double ScaleY);
RTC5_API void __stdcall set_mcbsp_rot(const double Resolution);
RTC5_API void __stdcall set_mcbsp_matrix(void);
RTC5_API void __stdcall set_mcbsp_in(const UINT Mode, const double Scale);
RTC5_API void __stdcall set_multi_mcbsp_in(const UINT Ctrl, const UINT P, const UINT Mode);
RTC5_API void __stdcall set_fly_tracking_error(const UINT TrackingErrorX, const UINT TrackingErrorY);
RTC5_API long __stdcall load_fly_2d_table(const char* Name, const UINT No);
RTC5_API void __stdcall init_fly_2d(const long OffsetX, const long OffsetY);
RTC5_API void __stdcall get_fly_2d_offset(long& OffsetX, long& OffsetY);
RTC5_API void __stdcall get_encoder(long& Encoder0, long& Encoder1);
RTC5_API void __stdcall read_encoder(long& Encoder0_1, long& Encoder1_1, long& Encoder0_2, long& Encoder1_2);
RTC5_API long __stdcall get_mcbsp(void);
RTC5_API long __stdcall read_mcbsp(const UINT No);
RTC5_API long __stdcall read_multi_mcbsp(const UINT No);
RTC5_API double __stdcall n_get_time(const UINT CardNo);
RTC5_API double __stdcall n_get_lap_time(const UINT CardNo);
RTC5_API void __stdcall n_measurement_status(const UINT CardNo, UINT& Busy, UINT& Pos);
RTC5_API void __stdcall n_get_waveform(const UINT CardNo, const UINT Channel, const UINT Number, const ULONG_PTR Ptr);
RTC5_API void __stdcall n_bounce_supp(const UINT CardNo, const UINT Length);
RTC5_API void __stdcall n_home_position_xyz(const UINT CardNo, const long XHome, const long YHome, const long ZHome);
RTC5_API void __stdcall n_home_position(const UINT CardNo, const long XHome, const long YHome);
RTC5_API void __stdcall n_rs232_config(const UINT CardNo, const UINT BaudRate);
RTC5_API void __stdcall n_rs232_write_data(const UINT CardNo, const UINT Data);
RTC5_API void __stdcall n_rs232_write_text(const UINT CardNo, const char* pData);
RTC5_API UINT __stdcall n_rs232_read_data(const UINT CardNo);
RTC5_API UINT __stdcall n_set_mcbsp_freq(const UINT CardNo, const UINT Freq);
RTC5_API void __stdcall n_mcbsp_init(const UINT CardNo, const UINT XDelay, const UINT RDelay);
RTC5_API void __stdcall n_mcbsp_init_spi(const UINT CardNo, const UINT ClockLevel, const UINT ClockDelay);
RTC5_API UINT __stdcall n_get_overrun(const UINT CardNo);
RTC5_API UINT __stdcall n_get_master_slave(const UINT CardNo);
RTC5_API void __stdcall n_get_transform(const UINT CardNo, const UINT Number, const ULONG_PTR Ptr1, const ULONG_PTR Ptr2, const ULONG_PTR Ptr, const UINT Code);
RTC5_API void __stdcall n_stop_trigger(const UINT CardNo);
RTC5_API void __stdcall n_move_to(const UINT CardNo, const UINT Pos);
RTC5_API void __stdcall n_set_enduring_wobbel(const UINT CardNo, const UINT CenterX, const UINT CenterY, const UINT CenterZ, const UINT LimitHi, const UINT LimitLo, const double ScaleX, const double ScaleY, const double ScaleZ);
RTC5_API void __stdcall n_set_enduring_wobbel_2(const UINT CardNo, const UINT CenterX, const UINT CenterY, const UINT CenterZ, const UINT LimitHi, const UINT LimitLo, const double ScaleX, const double ScaleY, const double ScaleZ);
RTC5_API void __stdcall n_set_free_variable(const UINT CardNo, const UINT VarNo, const UINT Value);
RTC5_API UINT __stdcall n_get_free_variable(const UINT CardNo, const UINT VarNo);
RTC5_API void __stdcall n_set_mcbsp_out_ptr(const UINT CardNo, const UINT Number, const ULONG_PTR SignalPtr);
RTC5_API void __stdcall n_periodic_toggle(const UINT CardNo, const UINT Port, const UINT Mask, const UINT P1, const UINT P2, const UINT Count, const UINT Start);
RTC5_API UINT __stdcall n_load_wobbel_power(const UINT CardNo, const UINT TableNo, const ULONG_PTR Ptr, const long Flag);
RTC5_API double __stdcall get_time(void);
RTC5_API double __stdcall get_lap_time(void);
RTC5_API void __stdcall measurement_status(UINT& Busy, UINT& Pos);
RTC5_API void __stdcall get_waveform(const UINT Channel, const UINT Number, const ULONG_PTR Ptr);
RTC5_API void __stdcall bounce_supp(const UINT Length);
RTC5_API void __stdcall home_position_xyz(const long XHome, const long YHome, const long ZHome);
RTC5_API void __stdcall home_position(const long XHome, const long YHome);
RTC5_API void __stdcall rs232_config(const UINT BaudRate);
RTC5_API void __stdcall rs232_write_data(const UINT Data);
RTC5_API void __stdcall rs232_write_text(const char* pData);
RTC5_API UINT __stdcall rs232_read_data(void);
RTC5_API UINT __stdcall set_mcbsp_freq(const UINT Freq);
RTC5_API void __stdcall mcbsp_init(const UINT XDelay, const UINT RDelay);
RTC5_API void __stdcall mcbsp_init_spi(const UINT ClockLevel, const UINT ClockDelay);
RTC5_API UINT __stdcall get_overrun(void);
RTC5_API UINT __stdcall get_master_slave(void);
RTC5_API void __stdcall get_transform(const UINT Number, const ULONG_PTR Ptr1, const ULONG_PTR Ptr2, const ULONG_PTR Ptr, const UINT Code);
RTC5_API void __stdcall stop_trigger(void);
RTC5_API void __stdcall move_to(const UINT Pos);
RTC5_API void __stdcall set_enduring_wobbel(const UINT CenterX, const UINT CenterY, const UINT CenterZ, const UINT LimitHi, const UINT LimitLo, const double ScaleX, const double ScaleY, const double ScaleZ);
RTC5_API void __stdcall set_enduring_wobbel_2(const UINT CenterX, const UINT CenterY, const UINT CenterZ, const UINT LimitHi, const UINT LimitLo, const double ScaleX, const double ScaleY, const double ScaleZ);
RTC5_API void __stdcall set_free_variable(const UINT VarNo, const UINT Value);
RTC5_API UINT __stdcall get_free_variable(const UINT VarNo);
RTC5_API void __stdcall set_mcbsp_out_ptr(const UINT Number, const ULONG_PTR SignalPtr);
RTC5_API void __stdcall periodic_toggle(const UINT Port, const UINT Mask, const UINT P1, const UINT P2, const UINT Count, const UINT Start);
RTC5_API UINT __stdcall load_wobbel_power(const UINT TableNo, const ULONG_PTR Ptr, const long Flag);
RTC5_API void __stdcall n_set_defocus(const UINT CardNo, const long Shift);
RTC5_API void __stdcall n_set_defocus_offset(const UINT CardNo, const long Shift);
RTC5_API void __stdcall n_goto_xyz(const UINT CardNo, const long X, const long Y, const long Z);
RTC5_API void __stdcall n_set_zoom(const UINT CardNo, const UINT Zoom);
RTC5_API void __stdcall n_goto_xy(const UINT CardNo, const long X, const long Y);
RTC5_API long __stdcall n_get_z_distance(const UINT CardNo, const long X, const long Y, const long Z);
RTC5_API void __stdcall set_defocus(const long Shift);
RTC5_API void __stdcall set_defocus_offset(const long Shift);
RTC5_API void __stdcall goto_xyz(const long X, const long Y, const long Z);
RTC5_API void __stdcall goto_xy(const long X, const long Y);
RTC5_API void __stdcall set_zoom(const UINT Zoom);
RTC5_API long __stdcall get_z_distance(const long X, const long Y, const long Z);
RTC5_API void __stdcall n_set_offset_xyz(const UINT CardNo, const UINT HeadNo, const long XOffset, const long YOffset, const long ZOffset, const UINT at_once);
RTC5_API void __stdcall n_set_offset(const UINT CardNo, const UINT HeadNo, const long XOffset, const long YOffset, const UINT at_once);
RTC5_API void __stdcall n_set_matrix(const UINT CardNo, const UINT HeadNo, const double M11, const double M12, const double M21, const double M22, const UINT at_once);
RTC5_API void __stdcall n_set_angle(const UINT CardNo, const UINT HeadNo, const double Angle, const UINT at_once);
RTC5_API void __stdcall n_set_scale(const UINT CardNo, const UINT HeadNo, const double Scale, const UINT at_once);
RTC5_API void __stdcall n_apply_mcbsp(const UINT CardNo, const UINT HeadNo, const UINT at_once);
RTC5_API UINT __stdcall n_upload_transform(const UINT CardNo, const UINT HeadNo, const ULONG_PTR Ptr);
RTC5_API void __stdcall set_offset_xyz(const UINT HeadNo, const long XOffset, const long YOffset, const long ZOffset, const UINT at_once);
RTC5_API void __stdcall set_offset(const UINT HeadNo, const long XOffset, const long YOffset, const UINT at_once);
RTC5_API void __stdcall set_matrix(const UINT HeadNo, const double M11, const double M12, const double M21, const double M22, const UINT at_once);
RTC5_API void __stdcall set_angle(const UINT HeadNo, const double Angle, const UINT at_once);
RTC5_API void __stdcall set_scale(const UINT HeadNo, const double Scale, const UINT at_once);
RTC5_API void __stdcall apply_mcbsp(const UINT HeadNo, const UINT at_once);
RTC5_API UINT __stdcall upload_transform(const UINT HeadNo, const ULONG_PTR Ptr);
RTC5_API UINT __stdcall transform(long& Sig1, long& Sig2, const ULONG_PTR Ptr, const UINT Code);
RTC5_API void __stdcall n_set_delay_mode(const UINT CardNo, const UINT VarPoly, const UINT DirectMove3D, const UINT EdgeLevel, const UINT MinJumpDelay, const UINT JumpLengthLimit);
RTC5_API void __stdcall n_set_jump_speed_ctrl(const UINT CardNo, const double Speed);
RTC5_API void __stdcall n_set_mark_speed_ctrl(const UINT CardNo, const double Speed);
RTC5_API void __stdcall n_set_sky_writing_para(const UINT CardNo, const double Timelag, const long LaserOnShift, const UINT Nprev, const UINT Npost);
RTC5_API void __stdcall n_set_sky_writing_limit(const UINT CardNo, const double CosAngle);
RTC5_API void __stdcall n_set_sky_writing_mode(const UINT CardNo, const UINT Mode);
RTC5_API long __stdcall n_load_varpolydelay(const UINT CardNo, const char* Name, const UINT No);
RTC5_API void __stdcall n_set_hi(const UINT CardNo, const UINT HeadNo, const double GalvoGainX, const double GalvoGainY, const long GalvoOffsetX, const long GalvoOffsetY);
RTC5_API void __stdcall n_get_hi_pos(const UINT CardNo, const UINT HeadNo, long& X1, long& X2, long& Y1, long& Y2);
RTC5_API UINT __stdcall n_auto_cal(const UINT CardNo, const UINT HeadNo, const UINT Command);
RTC5_API UINT __stdcall n_get_auto_cal(const UINT CardNo, const UINT HeadNo);
RTC5_API UINT __stdcall n_write_hi_pos(const UINT CardNo, const UINT HeadNo, const long X1, const long X2, const long Y1, const long Y2);
RTC5_API void __stdcall n_set_sky_writing(const UINT CardNo, const double Timelag, const long LaserOnShift);
RTC5_API void __stdcall n_get_hi_data(const UINT CardNo, long& X1, long& X2, long& Y1, long& Y2);
RTC5_API void __stdcall set_delay_mode(const UINT VarPoly, const UINT DirectMove3D, const UINT EdgeLevel, const UINT MinJumpDelay, const UINT JumpLengthLimit);
RTC5_API void __stdcall set_jump_speed_ctrl(const double Speed);
RTC5_API void __stdcall set_mark_speed_ctrl(const double Speed);
RTC5_API void __stdcall set_sky_writing_para(const double Timelag, const long LaserOnShift, const UINT Nprev, const UINT Npost);
RTC5_API void __stdcall set_sky_writing_limit(const double CosAngle);
RTC5_API void __stdcall set_sky_writing_mode(const UINT Mode);
RTC5_API long __stdcall load_varpolydelay(const char* Name, const UINT No);
RTC5_API void __stdcall set_hi(const UINT HeadNo, const double GalvoGainX, const double GalvoGainY, const long GalvoOffsetX, const long GalvoOffsetY);
RTC5_API void __stdcall get_hi_pos(const UINT HeadNo, long& X1, long& X2, long& Y1, long& Y2);
RTC5_API UINT __stdcall auto_cal(const UINT HeadNo, const UINT Command);
RTC5_API UINT __stdcall get_auto_cal(const UINT HeadNo);
RTC5_API UINT __stdcall write_hi_pos(const UINT HeadNo, const long X1, const long X2, const long Y1, const long Y2);
RTC5_API void __stdcall set_sky_writing(const double Timelag, const long LaserOnShift);
RTC5_API void __stdcall get_hi_data(long& X1, long& X2, long& Y1, long& Y2);
RTC5_API void __stdcall n_send_user_data(const UINT CardNo, const UINT Head, const UINT Axis, const long Data0, const long Data1, const long Data2, const long Data3, const long Data4);
RTC5_API long __stdcall n_read_user_data(const UINT CardNo, const UINT Head, const UINT Axis, long& Data0, long& Data1, long& Data2, long& Data3, long& Data4);
RTC5_API void __stdcall n_control_command(const UINT CardNo, const UINT Head, const UINT Axis, const UINT Data);
RTC5_API long __stdcall n_get_value(const UINT CardNo, const UINT Signal);
RTC5_API void __stdcall n_get_values(const UINT CardNo, const ULONG_PTR SignalPtr, const ULONG_PTR ResultPtr);
RTC5_API void __stdcall n_get_galvo_controls(const UINT CardNo, const ULONG_PTR SignalPtr, const ULONG_PTR ResultPtr);
RTC5_API UINT __stdcall n_get_head_status(const UINT CardNo, const UINT Head);
RTC5_API long __stdcall n_set_jump_mode(const UINT CardNo, const long Flag, const UINT Length, const long VA1, const long VA2, const long VB1, const long VB2, const long JA1, const long JA2, const long JB1, const long JB2);
RTC5_API long __stdcall n_load_jump_table_offset(const UINT CardNo, const char* Name, const UINT No, const UINT PosAck, const long Offset, const UINT MinDelay, const UINT MaxDelay, const UINT ListPos);
RTC5_API UINT __stdcall n_get_jump_table(const UINT CardNo, const ULONG_PTR Ptr);
RTC5_API UINT __stdcall n_set_jump_table(const UINT CardNo, const ULONG_PTR Ptr);
RTC5_API long __stdcall n_load_jump_table(const UINT CardNo, const char* Name, const UINT No, const UINT PosAck, const UINT MinDelay, const UINT MaxDelay, const UINT ListPos);
RTC5_API void __stdcall send_user_data(const UINT Head, const UINT Axis, const long Data0, const long Data1, const long Data2, const long Data3, const long Data4);
RTC5_API long __stdcall read_user_data(const UINT Head, const UINT Axis, long& Data0, long& Data1, long& Data2, long& Data3, long& Data4);
RTC5_API void __stdcall control_command(const UINT Head, const UINT Axis, const UINT Data);
RTC5_API long __stdcall get_value(const UINT Signal);
RTC5_API void __stdcall get_values(const ULONG_PTR SignalPtr, const ULONG_PTR ResultPtr);
RTC5_API void __stdcall get_galvo_controls(const ULONG_PTR SignalPtr, const ULONG_PTR ResultPtr);
RTC5_API UINT __stdcall get_head_status(const UINT Head);
RTC5_API long __stdcall set_jump_mode(const long Flag, const UINT Length, const long VA1, const long VA2, const long VB1, const long VB2, const long JA1, const long JA2, const long JB1, const long JB2);
RTC5_API long __stdcall load_jump_table_offset(const char* Name, const UINT No, const UINT PosAck, const long Offset, const UINT MinDelay, const UINT MaxDelay, const UINT ListPos);
RTC5_API UINT __stdcall get_jump_table(const ULONG_PTR Ptr);
RTC5_API UINT __stdcall set_jump_table(const ULONG_PTR Ptr);
RTC5_API long __stdcall load_jump_table(const char* Name, const UINT No, const UINT PosAck, const UINT MinDelay, const UINT MaxDelay, const UINT ListPos);
RTC5_API void __stdcall n_stepper_init(const UINT CardNo, const UINT No, const UINT Period, const long Dir, const long Pos, const UINT Tol, const UINT Enable, const UINT WaitTime);
RTC5_API void __stdcall n_stepper_enable(const UINT CardNo, const long Enable1, const long Enable2);
RTC5_API void __stdcall n_stepper_disable_switch(const UINT CardNo, const long Disable1, const long Disable2);
RTC5_API void __stdcall n_stepper_control(const UINT CardNo, const long Period1, const long Period2);
RTC5_API void __stdcall n_stepper_abs_no(const UINT CardNo, const UINT No, const long Pos, const UINT WaitTime);
RTC5_API void __stdcall n_stepper_rel_no(const UINT CardNo, const UINT No, const long dPos, const UINT WaitTime);
RTC5_API void __stdcall n_stepper_abs(const UINT CardNo, const long Pos1, const long Pos2, const UINT WaitTime);
RTC5_API void __stdcall n_stepper_rel(const UINT CardNo, const long dPos1, const long dPos2, const UINT WaitTime);
RTC5_API void __stdcall n_get_stepper_status(const UINT CardNo, UINT& Status1, long& Pos1, UINT& Status2, long& Pos2);
RTC5_API void __stdcall stepper_init(const UINT No, const UINT Period, const long Dir, const long Pos, const UINT Tol, const UINT Enable, const UINT WaitTime);
RTC5_API void __stdcall stepper_enable(const long Enable1, const long Enable2);
RTC5_API void __stdcall stepper_disable_switch(const long Disable1, const long Disable2);
RTC5_API void __stdcall stepper_control(const long Period1, const long Period2);
RTC5_API void __stdcall stepper_abs_no(const UINT No, const long Pos, const UINT WaitTime);
RTC5_API void __stdcall stepper_rel_no(const UINT No, const long dPos, const UINT WaitTime);
RTC5_API void __stdcall stepper_abs(const long Pos1, const long Pos2, const UINT WaitTime);
RTC5_API void __stdcall stepper_rel(const long dPos1, const long dPos2, const UINT WaitTime);
RTC5_API void __stdcall get_stepper_status(UINT& Status1, long& Pos1, UINT& Status2, long& Pos2);
RTC5_API void __stdcall n_select_cor_table_list(const UINT CardNo, const UINT HeadA, const UINT HeadB);
RTC5_API void __stdcall select_cor_table_list(const UINT HeadA, const UINT HeadB);
RTC5_API void __stdcall n_list_nop(const UINT CardNo);
RTC5_API void __stdcall n_list_continue(const UINT CardNo);
RTC5_API void __stdcall n_list_next(const UINT CardNo);
RTC5_API void __stdcall n_long_delay(const UINT CardNo, const UINT Delay);
RTC5_API void __stdcall n_set_end_of_list(const UINT CardNo);
RTC5_API void __stdcall n_set_wait(const UINT CardNo, const UINT WaitWord);
RTC5_API void __stdcall n_list_jump_pos(const UINT CardNo, const UINT Pos);
RTC5_API void __stdcall n_list_jump_rel(const UINT CardNo, const long Pos);
RTC5_API void __stdcall n_list_repeat(const UINT CardNo);
RTC5_API void __stdcall n_list_until(const UINT CardNo, const UINT Number);
RTC5_API void __stdcall n_range_checking(const UINT CardNo, const UINT HeadNo, const UINT Mode, const UINT Data);
RTC5_API void __stdcall n_set_list_jump(const UINT CardNo, const UINT Pos);
RTC5_API void __stdcall list_nop(void);
RTC5_API void __stdcall list_continue(void);
RTC5_API void __stdcall list_next(void);
RTC5_API void __stdcall long_delay(const UINT Delay);
RTC5_API void __stdcall set_end_of_list(void);
RTC5_API void __stdcall set_wait(const UINT WaitWord);
RTC5_API void __stdcall list_jump_pos(const UINT Pos);
RTC5_API void __stdcall list_jump_rel(const long Pos);
RTC5_API void __stdcall list_repeat(void);
RTC5_API void __stdcall list_until(const UINT Number);
RTC5_API void __stdcall range_checking(const UINT HeadNo, const UINT Mode, const UINT Data);
RTC5_API void __stdcall set_list_jump(const UINT Pos);
RTC5_API void __stdcall n_set_extstartpos_list(const UINT CardNo, const UINT Pos);
RTC5_API void __stdcall n_set_control_mode_list(const UINT CardNo, const UINT Mode);
RTC5_API void __stdcall n_simulate_ext_start(const UINT CardNo, const long Delay, const UINT EncoderNo);
RTC5_API void __stdcall set_extstartpos_list(const UINT Pos);
RTC5_API void __stdcall set_control_mode_list(const UINT Mode);
RTC5_API void __stdcall simulate_ext_start(const long Delay, const UINT EncoderNo);
RTC5_API void __stdcall n_list_return(const UINT CardNo);
RTC5_API void __stdcall n_list_call_repeat(const UINT CardNo, const UINT Pos, const UINT Number);
RTC5_API void __stdcall n_list_call_abs_repeat(const UINT CardNo, const UINT Pos, const UINT Number);
RTC5_API void __stdcall n_list_call(const UINT CardNo, const UINT Pos);
RTC5_API void __stdcall n_list_call_abs(const UINT CardNo, const UINT Pos);
RTC5_API void __stdcall n_sub_call_repeat(const UINT CardNo, const UINT Index, const UINT Number);
RTC5_API void __stdcall n_sub_call_abs_repeat(const UINT CardNo, const UINT Index, const UINT Number);
RTC5_API void __stdcall n_sub_call(const UINT CardNo, const UINT Index);
RTC5_API void __stdcall n_sub_call_abs(const UINT CardNo, const UINT Index);
RTC5_API void __stdcall list_return(void);
RTC5_API void __stdcall list_call_repeat(const UINT Pos, const UINT Number);
RTC5_API void __stdcall list_call_abs_repeat(const UINT Pos, const UINT Number);
RTC5_API void __stdcall list_call(const UINT Pos);
RTC5_API void __stdcall list_call_abs(const UINT Pos);
RTC5_API void __stdcall sub_call_repeat(const UINT Index, const UINT Number);
RTC5_API void __stdcall sub_call_abs_repeat(const UINT Index, const UINT Number);
RTC5_API void __stdcall sub_call(const UINT Index);
RTC5_API void __stdcall sub_call_abs(const UINT Index);
RTC5_API void __stdcall n_list_call_cond(const UINT CardNo, const UINT Mask1, const UINT Mask0, const UINT Pos);
RTC5_API void __stdcall n_list_call_abs_cond(const UINT CardNo, const UINT Mask1, const UINT Mask0, const UINT Pos);
RTC5_API void __stdcall n_sub_call_cond(const UINT CardNo, const UINT Mask1, const UINT Mask0, const UINT Pos);
RTC5_API void __stdcall n_sub_call_abs_cond(const UINT CardNo, const UINT Mask1, const UINT Mask0, const UINT Pos);
RTC5_API void __stdcall n_list_jump_pos_cond(const UINT CardNo, const UINT Mask1, const UINT Mask0, const UINT Index);
RTC5_API void __stdcall n_list_jump_rel_cond(const UINT CardNo, const UINT Mask1, const UINT Mask0, const long Index);
RTC5_API void __stdcall n_if_cond(const UINT CardNo, const UINT Mask1, const UINT Mask0);
RTC5_API void __stdcall n_if_not_cond(const UINT CardNo, const UINT Mask1, const UINT Mask0);
RTC5_API void __stdcall n_if_pin_cond(const UINT CardNo, const UINT Mask1, const UINT Mask0);
RTC5_API void __stdcall n_if_not_pin_cond(const UINT CardNo, const UINT Mask1, const UINT Mask0);
RTC5_API void __stdcall n_switch_ioport(const UINT CardNo, const UINT MaskBits, const UINT ShiftBits);
RTC5_API void __stdcall n_list_jump_cond(const UINT CardNo, const UINT Mask1, const UINT Mask0, const UINT Pos);
RTC5_API void __stdcall list_call_cond(const UINT Mask1, const UINT Mask0, const UINT Pos);
RTC5_API void __stdcall list_call_abs_cond(const UINT Mask1, const UINT Mask0, const UINT Pos);
RTC5_API void __stdcall sub_call_cond(const UINT Mask1, const UINT Mask0, const UINT Index);
RTC5_API void __stdcall sub_call_abs_cond(const UINT Mask1, const UINT Mask0, const UINT Index);
RTC5_API void __stdcall list_jump_pos_cond(const UINT Mask1, const UINT Mask0, const UINT Pos);
RTC5_API void __stdcall list_jump_rel_cond(const UINT Mask1, const UINT Mask0, const long Pos);
RTC5_API void __stdcall if_cond(const UINT Mask1, const UINT Mask0);
RTC5_API void __stdcall if_not_cond(const UINT Mask1, const UINT Mask0);
RTC5_API void __stdcall if_pin_cond(const UINT Mask1, const UINT Mask0);
RTC5_API void __stdcall if_not_pin_cond(const UINT Mask1, const UINT Mask0);
RTC5_API void __stdcall switch_ioport(const UINT MaskBits, const UINT ShiftBits);
RTC5_API void __stdcall list_jump_cond(const UINT Mask1, const UINT Mask0, const UINT Pos);
RTC5_API void __stdcall n_select_char_set(const UINT CardNo, const UINT No);
RTC5_API void __stdcall n_mark_text(const UINT CardNo, const char* Text);
RTC5_API void __stdcall n_mark_text_abs(const UINT CardNo, const char* Text);
RTC5_API void __stdcall n_mark_char(const UINT CardNo, const UINT Char);
RTC5_API void __stdcall n_mark_char_abs(const UINT CardNo, const UINT Char);
RTC5_API void __stdcall select_char_set(const UINT No);
RTC5_API void __stdcall mark_text(const char* Text);
RTC5_API void __stdcall mark_text_abs(const char* Text);
RTC5_API void __stdcall mark_char(const UINT Char);
RTC5_API void __stdcall mark_char_abs(const UINT Char);
RTC5_API void __stdcall n_mark_serial(const UINT CardNo, const UINT Mode, const UINT Digits);
RTC5_API void __stdcall n_mark_serial_abs(const UINT CardNo, const UINT Mode, const UINT Digits);
RTC5_API void __stdcall n_mark_date(const UINT CardNo, const UINT Part, const UINT Mode);
RTC5_API void __stdcall n_mark_date_abs(const UINT CardNo, const UINT Part, const UINT Mode);
RTC5_API void __stdcall n_mark_time(const UINT CardNo, const UINT Part, const UINT Mode);
RTC5_API void __stdcall n_mark_time_abs(const UINT CardNo, const UINT Part, const UINT Mode);
RTC5_API void __stdcall n_select_serial_set_list(const UINT CardNo, const UINT No);
RTC5_API void __stdcall n_set_serial_step_list(const UINT CardNo, const UINT No, const UINT Step);
RTC5_API void __stdcall n_time_fix_f_off(const UINT CardNo, const UINT FirstDay, const UINT Offset);
RTC5_API void __stdcall n_time_fix_f(const UINT CardNo, const UINT FirstDay);
RTC5_API void __stdcall n_time_fix(const UINT CardNo);
RTC5_API void __stdcall mark_serial(const UINT Mode, const UINT Digits);
RTC5_API void __stdcall mark_serial_abs(const UINT Mode, const UINT Digits);
RTC5_API void __stdcall mark_date(const UINT Part, const UINT Mode);
RTC5_API void __stdcall mark_date_abs(const UINT Part, const UINT Mode);
RTC5_API void __stdcall mark_time(const UINT Part, const UINT Mode);
RTC5_API void __stdcall mark_time_abs(const UINT Part, const UINT Mode);
RTC5_API void __stdcall time_fix_f_off(const UINT FirstDay, const UINT Offset);
RTC5_API void __stdcall select_serial_set_list(const UINT No);
RTC5_API void __stdcall set_serial_step_list(const UINT No, const UINT Step);
RTC5_API void __stdcall time_fix_f(const UINT FirstDay);
RTC5_API void __stdcall time_fix(void);
RTC5_API void __stdcall n_clear_io_cond_list(const UINT CardNo, const UINT Mask1, const UINT Mask0, const UINT Mask);
RTC5_API void __stdcall n_set_io_cond_list(const UINT CardNo, const UINT Mask1, const UINT Mask0, const UINT Mask);
RTC5_API void __stdcall n_write_io_port_mask_list(const UINT CardNo, const UINT Value, const UINT Mask);
RTC5_API void __stdcall n_write_8bit_port_list(const UINT CardNo, const UINT Value);
RTC5_API void __stdcall n_read_io_port_list(const UINT CardNo);
RTC5_API void __stdcall n_write_da_x_list(const UINT CardNo, const UINT x, const UINT Value);
RTC5_API void __stdcall n_write_io_port_list(const UINT CardNo, const UINT Value);
RTC5_API void __stdcall n_write_da_1_list(const UINT CardNo, const UINT Value);
RTC5_API void __stdcall n_write_da_2_list(const UINT CardNo, const UINT Value);
RTC5_API void __stdcall clear_io_cond_list(const UINT Mask1, const UINT Mask0, const UINT MaskClear);
RTC5_API void __stdcall set_io_cond_list(const UINT Mask1, const UINT Mask0, const UINT MaskSet);
RTC5_API void __stdcall write_io_port_mask_list(const UINT Value, const UINT Mask);
RTC5_API void __stdcall write_8bit_port_list(const UINT Value);
RTC5_API void __stdcall read_io_port_list(void);
RTC5_API void __stdcall write_da_x_list(const UINT x, const UINT Value);
RTC5_API void __stdcall write_io_port_list(const UINT Value);
RTC5_API void __stdcall write_da_1_list(const UINT Value);
RTC5_API void __stdcall write_da_2_list(const UINT Value);
RTC5_API void __stdcall n_laser_signal_on_list(const UINT CardNo);
RTC5_API void __stdcall n_laser_signal_off_list(const UINT CardNo);
RTC5_API void __stdcall n_para_laser_on_pulses_list(const UINT CardNo, const UINT Period, const UINT Pulses, const UINT P);
RTC5_API void __stdcall n_laser_on_pulses_list(const UINT CardNo, const UINT Period, const UINT Pulses);
RTC5_API void __stdcall n_laser_on_list(const UINT CardNo, const UINT Period);
RTC5_API void __stdcall n_set_laser_delays(const UINT CardNo, const long LaserOnDelay, const UINT LaserOffDelay);
RTC5_API void __stdcall n_set_standby_list(const UINT CardNo, const UINT HalfPeriod, const UINT PulseLength);
RTC5_API void __stdcall n_set_laser_pulses(const UINT CardNo, const UINT HalfPeriod, const UINT PulseLength);
RTC5_API void __stdcall n_set_firstpulse_killer_list(const UINT CardNo, const UINT Length);
RTC5_API void __stdcall n_set_qswitch_delay_list(const UINT CardNo, const UINT Delay);
RTC5_API void __stdcall n_set_laser_pin_out_list(const UINT CardNo, const UINT Pins);
RTC5_API void __stdcall n_set_vector_control(const UINT CardNo, const UINT Ctrl, const UINT Value);
RTC5_API void __stdcall n_set_default_pixel_list(const UINT CardNo, const UINT PulseLength);
RTC5_API void __stdcall n_set_port_default_list(const UINT CardNo, const UINT Port, const UINT Value);
RTC5_API void __stdcall n_set_auto_laser_params_list(const UINT CardNo, const UINT Ctrl, const UINT Value, const UINT MinValue, const UINT MaxValue);
RTC5_API void __stdcall n_set_pulse_picking_list(const UINT CardNo, const UINT No);
RTC5_API void __stdcall n_set_softstart_level_list(const UINT CardNo, const UINT Index, const UINT Level1, const UINT Level2, const UINT Level3);
RTC5_API void __stdcall n_set_softstart_mode_list(const UINT CardNo, const UINT Mode, const UINT Number, const UINT Delay);
RTC5_API void __stdcall n_config_laser_signals_list(const UINT CardNo, const UINT Config);
RTC5_API void __stdcall n_set_laser_timing(const UINT CardNo, const UINT HalfPeriod, const UINT PulseLength1, const UINT PulseLength2, const UINT TimeBase);
RTC5_API void __stdcall laser_signal_on_list(void);
RTC5_API void __stdcall laser_signal_off_list(void);
RTC5_API void __stdcall para_laser_on_pulses_list(const UINT Period, const UINT Pulses, const UINT P);
RTC5_API void __stdcall laser_on_pulses_list(const UINT Period, const UINT Pulses);
RTC5_API void __stdcall laser_on_list(const UINT Period);
RTC5_API void __stdcall set_laser_delays(const long LaserOnDelay, const UINT LaserOffDelay);
RTC5_API void __stdcall set_standby_list(const UINT HalfPeriod, const UINT PulseLength);
RTC5_API void __stdcall set_laser_pulses(const UINT HalfPeriod, const UINT PulseLength);
RTC5_API void __stdcall set_firstpulse_killer_list(const UINT Length);
RTC5_API void __stdcall set_qswitch_delay_list(const UINT Delay);
RTC5_API void __stdcall set_laser_pin_out_list(const UINT Pins);
RTC5_API void __stdcall set_vector_control(const UINT Ctrl, const UINT Value);
RTC5_API void __stdcall set_default_pixel_list(const UINT PulseLength);
RTC5_API void __stdcall set_port_default_list(const UINT Port, const UINT Value);
RTC5_API void __stdcall set_auto_laser_params_list(const UINT Ctrl, const UINT Value, const UINT MinValue, const UINT MaxValue);
RTC5_API void __stdcall set_pulse_picking_list(const UINT No);
RTC5_API void __stdcall set_softstart_level_list(const UINT Index, const UINT Level1, const UINT Level2, const UINT Level3);
RTC5_API void __stdcall set_softstart_mode_list(const UINT Mode, const UINT Number, const UINT Delay);
RTC5_API void __stdcall config_laser_signals_list(const UINT Config);
RTC5_API void __stdcall set_laser_timing(const UINT HalfPeriod, const UINT PulseLength1, const UINT PulseLength2, const UINT TimeBase);
RTC5_API void __stdcall n_fly_return_z(const UINT CardNo, const long X, const long Y, const long Z);
RTC5_API void __stdcall n_fly_return(const UINT CardNo, const long X, const long Y);
RTC5_API void __stdcall n_set_rot_center_list(const UINT CardNo, const long X, const long Y);
RTC5_API void __stdcall n_set_ext_start_delay_list(const UINT CardNo, const long Delay, const UINT EncoderNo);
RTC5_API void __stdcall n_set_fly_x(const UINT CardNo, const double ScaleX);
RTC5_API void __stdcall n_set_fly_y(const UINT CardNo, const double ScaleY);
RTC5_API void __stdcall n_set_fly_z(const UINT CardNo, const double ScaleZ, const UINT EndoderNo);
RTC5_API void __stdcall n_set_fly_rot(const UINT CardNo, const double Resolution);
RTC5_API void __stdcall n_set_fly_2d(const UINT CardNo, const double ScaleX, const double ScaleY);
RTC5_API void __stdcall n_set_fly_x_pos(const UINT CardNo, const double ScaleX);
RTC5_API void __stdcall n_set_fly_y_pos(const UINT CardNo, const double ScaleY);
RTC5_API void __stdcall n_set_fly_rot_pos(const UINT CardNo, const double Resolution);
RTC5_API void __stdcall n_set_fly_limits(const UINT CardNo, const long Xmin, const long Xmax, const long Ymin, const long Ymax);
RTC5_API void __stdcall n_set_fly_limits_z(const UINT CardNo, const long Zmin, const long Zmax);
RTC5_API void __stdcall n_if_fly_x_overflow(const UINT CardNo, const long Mode);
RTC5_API void __stdcall n_if_fly_y_overflow(const UINT CardNo, const long Mode);
RTC5_API void __stdcall n_if_fly_z_overflow(const UINT CardNo, const long Mode);
RTC5_API void __stdcall n_if_not_fly_x_overflow(const UINT CardNo, const long Mode);
RTC5_API void __stdcall n_if_not_fly_y_overflow(const UINT CardNo, const long Mode);
RTC5_API void __stdcall n_if_not_fly_z_overflow(const UINT CardNo, const long Mode);
RTC5_API void __stdcall n_clear_fly_overflow(const UINT CardNo, const UINT Mode);
RTC5_API void __stdcall n_set_mcbsp_x_list(const UINT CardNo, const double ScaleX);
RTC5_API void __stdcall n_set_mcbsp_y_list(const UINT CardNo, const double ScaleY);
RTC5_API void __stdcall n_set_mcbsp_rot_list(const UINT CardNo, const double Resolution);
RTC5_API void __stdcall n_set_mcbsp_matrix_list(const UINT CardNo);
RTC5_API void __stdcall n_set_mcbsp_in_list(const UINT CardNo, const UINT Mode, const double Scale);
RTC5_API void __stdcall n_set_multi_mcbsp_in_list(const UINT CardNo, const UINT Ctrl, const UINT P, const UINT Mode);
RTC5_API void __stdcall n_wait_for_encoder_mode(const UINT CardNo, const long Value, const UINT EncoderNo, const long Mode);
RTC5_API void __stdcall n_wait_for_mcbsp(const UINT CardNo, const UINT Axis, const long Value, const long Mode);
RTC5_API void __stdcall n_set_encoder_speed(const UINT CardNo, const UINT EncoderNo, const double Speed, const double Smooth);
RTC5_API void __stdcall n_get_mcbsp_list(const UINT CardNo);
RTC5_API void __stdcall n_store_encoder(const UINT CardNo, const UINT Pos);
RTC5_API void __stdcall n_wait_for_encoder_in_range(const UINT CardNo, const long EncXmin, const long EncXmax, const long EncYmin, const long EncYmax);
RTC5_API void __stdcall n_activate_fly_xy(const UINT CardNo, const double ScaleX, const double ScaleY);
RTC5_API void __stdcall n_activate_fly_2d(const UINT CardNo, const double ScaleX, const double ScaleY);
RTC5_API void __stdcall n_activate_fly_xy_encoder(const UINT CardNo, const double ScaleX, const double ScaleY, const long EncX, const long EncY);
RTC5_API void __stdcall n_activate_fly_2d_encoder(const UINT CardNo, const double ScaleX, const double ScaleY, const long EncX, const long EncY);
RTC5_API void __stdcall n_if_not_activated(const UINT CardNo);
RTC5_API void __stdcall n_park_position(const UINT CardNo, const UINT Mode, const long X, const long Y);
RTC5_API void __stdcall n_park_return(const UINT CardNo, const UINT Mode, const long X, const long Y);
RTC5_API void __stdcall n_wait_for_encoder(const UINT CardNo, const long Value, const UINT EncoderNo);
RTC5_API void __stdcall fly_return_z(const long X, const long Y, const long Z);
RTC5_API void __stdcall fly_return(const long X, const long Y);
RTC5_API void __stdcall set_rot_center_list(const long X, const long Y);
RTC5_API void __stdcall set_ext_start_delay_list(const long Delay, const UINT EncoderNo);
RTC5_API void __stdcall set_fly_x(const double ScaleX);
RTC5_API void __stdcall set_fly_y(const double ScaleY);
RTC5_API void __stdcall set_fly_z(const double ScaleZ, const UINT EncoderNo);
RTC5_API void __stdcall set_fly_rot(const double Resolution);
RTC5_API void __stdcall set_fly_2d(const double ScaleX, const double ScaleY);
RTC5_API void __stdcall set_fly_x_pos(const double ScaleX);
RTC5_API void __stdcall set_fly_y_pos(const double ScaleY);
RTC5_API void __stdcall set_fly_rot_pos(const double Resolution);
RTC5_API void __stdcall set_fly_limits(const long Xmin, const long Xmax, const long Ymin, const long Ymax);
RTC5_API void __stdcall set_fly_limits_z(const long Zmin, const long Zmax);
RTC5_API void __stdcall if_fly_x_overflow(const long Mode);
RTC5_API void __stdcall if_fly_y_overflow(const long Mode);
RTC5_API void __stdcall if_fly_z_overflow(const long Mode);
RTC5_API void __stdcall if_not_fly_x_overflow(const long Mode);
RTC5_API void __stdcall if_not_fly_y_overflow(const long Mode);
RTC5_API void __stdcall if_not_fly_z_overflow(const long Mode);
RTC5_API void __stdcall clear_fly_overflow(const UINT Mode);
RTC5_API void __stdcall set_mcbsp_x_list(const double ScaleX);
RTC5_API void __stdcall set_mcbsp_y_list(const double ScaleY);
RTC5_API void __stdcall set_mcbsp_rot_list(const double Resolution);
RTC5_API void __stdcall set_mcbsp_matrix_list(void);
RTC5_API void __stdcall set_mcbsp_in_list(const UINT Mode, const double Scale);
RTC5_API void __stdcall set_multi_mcbsp_in_list(const UINT Ctrl, const UINT P, const UINT Mode);
RTC5_API void __stdcall wait_for_encoder_mode(const long Value, const UINT EncoderNo, const long Mode);
RTC5_API void __stdcall wait_for_mcbsp(const UINT Axis, const long Value, const long Mode);
RTC5_API void __stdcall set_encoder_speed(const UINT EncoderNo, const double Speed, const double Smooth);
RTC5_API void __stdcall get_mcbsp_list(void);
RTC5_API void __stdcall store_encoder(const UINT Pos);
RTC5_API void __stdcall wait_for_encoder_in_range(const long EncXmin, const long EncXmax, const long EncYmin, const long EncYmax);
RTC5_API void __stdcall activate_fly_xy(const double ScaleX, const double ScaleY);
RTC5_API void __stdcall activate_fly_2d(const double ScaleX, const double ScaleY);
RTC5_API void __stdcall activate_fly_xy_encoder(const double ScaleX, const double ScaleY, const long EncX, const long EncY);
RTC5_API void __stdcall activate_fly_2d_encoder(const double ScaleX, const double ScaleY, const long EncX, const long EncY);
RTC5_API void __stdcall if_not_activated(void);
RTC5_API void __stdcall park_position(const UINT Mode, const long X, const long Y);
RTC5_API void __stdcall park_return(const UINT Mode, const long X, const long Y);
RTC5_API void __stdcall wait_for_encoder(const long Value, const UINT EncoderNo);
RTC5_API void __stdcall n_save_and_restart_timer(const UINT CardNo);
RTC5_API void __stdcall n_set_wobbel(const UINT CardNo, const UINT Transversal, const UINT Longitudinal, const double Freq);
RTC5_API void __stdcall n_set_wobbel_mode(const UINT CardNo, const UINT Transversal, const UINT Longitudinal, const double Freq, const long Mode);
RTC5_API void __stdcall n_set_wobbel_mode_phase(const UINT CardNo, const UINT Transversal, const UINT Longitudinal, const double Freq, const long Mode, const double Phase);
RTC5_API void __stdcall n_set_wobbel_direction(const UINT CardNo, const long dX, const long dY);
RTC5_API void __stdcall n_set_wobbel_control(const UINT CardNo, const UINT Ctrl, const UINT Value, const UINT MinValue, const UINT MaxValue);
RTC5_API void __stdcall n_set_wobbel_vector(const UINT CardNo, const double dTrans, const double dLong, const UINT Period, const double dPower);
RTC5_API void __stdcall n_set_wobbel_offset(const UINT CardNo, const long OffsetTrans, const long OffsetLong);
RTC5_API void __stdcall n_load_wobbel_power_list(const UINT CardNo, const UINT TableNo, const ULONG_PTR Ptr, const long Flag);
RTC5_API void __stdcall n_set_wobbel_power_angle(const UINT CardNo, const UINT Angle);
RTC5_API void __stdcall n_set_trigger(const UINT CardNo, const UINT Period, const UINT Signal1, const UINT Signal2);
RTC5_API void __stdcall n_set_trigger4(const UINT CardNo, const UINT Period, const UINT Signal1, const UINT Signal2, const UINT Signal3, const UINT Signal4);
RTC5_API void __stdcall n_set_pixel_line_3d(const UINT CardNo, const UINT Channel, const UINT HalfPeriod, const double dX, const double dY, const double dZ);
RTC5_API void __stdcall n_set_pixel_line(const UINT CardNo, const UINT Channel, const UINT HalfPeriod, const double dX, const double dY);
RTC5_API void __stdcall n_stretch_pixel_line(const UINT CardNo, const UINT Delay, const UINT Period);
RTC5_API void __stdcall n_set_n_pixel(const UINT CardNo, const UINT PulseLength, const UINT AnalogOut, const UINT Number);
RTC5_API void __stdcall n_set_pixel(const UINT CardNo, const UINT PulseLength, const UINT AnalogOut);
RTC5_API void __stdcall n_rs232_write_text_list(const UINT CardNo, const char* pData);
RTC5_API void __stdcall n_set_mcbsp_out(const UINT CardNo, const UINT Signal1, const UINT Signal2);
RTC5_API void __stdcall n_camming(const UINT CardNo, const UINT FirstPos, const UINT NPos, const UINT No, const UINT Ctrl, const double Scale, const UINT Code);
RTC5_API void __stdcall n_periodic_toggle_list(const UINT CardNo, const UINT Port, const UINT Mask, const UINT P1, const UINT P2, const UINT Count, const UINT Start);
RTC5_API void __stdcall n_micro_vector_abs_3d(const UINT CardNo, const long X, const long Y, const long Z, const long LasOn, const long LasOf);
RTC5_API void __stdcall n_micro_vector_rel_3d(const UINT CardNo, const long dX, const long dY, const long dZ, const long LasOn, const long LasOf);
RTC5_API void __stdcall n_micro_vector_abs(const UINT CardNo, const long X, const long Y, const long LasOn, const long LasOf);
RTC5_API void __stdcall n_micro_vector_rel(const UINT CardNo, const long dX, const long dY, const long LasOn, const long LasOf);
RTC5_API void __stdcall n_set_free_variable_list(const UINT CardNo, const UINT VarNo, const UINT Value);
RTC5_API void __stdcall n_control_command_list(const UINT CardNo, const UINT Head, const UINT Axis, const UINT Data);
RTC5_API void __stdcall n_jump_abs_drill_2(const UINT CardNo, const long X, const long Y, const UINT DrillTime, const long XOff, const long YOff);
RTC5_API void __stdcall n_jump_rel_drill_2(const UINT CardNo, const long dX, const long dY, const UINT DrillTime, const long XOff, const long YOff);
RTC5_API void __stdcall n_jump_abs_drill(const UINT CardNo, const long X, const long Y, const UINT DrillTime);
RTC5_API void __stdcall n_jump_rel_drill(const UINT CardNo, const long dX, const long dY, const UINT DrillTime);
RTC5_API void __stdcall save_and_restart_timer(void);
RTC5_API void __stdcall set_wobbel(const UINT Transversal, const UINT Longitudinal, const double Freq);
RTC5_API void __stdcall set_wobbel_mode(const UINT Transversal, const UINT Longitudinal, const double Freq, const long Mode);
RTC5_API void __stdcall set_wobbel_mode_phase(const UINT Transversal, const UINT Longitudinal, const double Freq, const long Mode, const double Phase);
RTC5_API void __stdcall set_wobbel_direction(const long dX, const long dY);
RTC5_API void __stdcall set_wobbel_control(const UINT Ctrl, const UINT Value, const UINT MinValue, const UINT MaxValue);
RTC5_API void __stdcall set_wobbel_vector(const double dTrans, const double dLong, const UINT Period, const double dPower);
RTC5_API void __stdcall set_wobbel_offset(const long OffsetTrans, const long OffsetLong);
RTC5_API void __stdcall load_wobbel_power_list(const UINT TableNo, const ULONG_PTR Ptr, const long Flag);
RTC5_API void __stdcall set_wobbel_power_angle(const UINT Angle);
RTC5_API void __stdcall set_trigger(const UINT Period, const UINT Signal1, const UINT Signal2);
RTC5_API void __stdcall set_trigger4(const UINT Period, const UINT Signal1, const UINT Signal2, const UINT Signal3, const UINT Signal4);
RTC5_API void __stdcall set_pixel_line_3d(const UINT Channel, const UINT HalfPeriod, const double dX, const double dY, const double dZ);
RTC5_API void __stdcall set_pixel_line(const UINT Channel, const UINT HalfPeriod, const double dX, const double dY);
RTC5_API void __stdcall stretch_pixel_line(const UINT Delay, const UINT Period);
RTC5_API void __stdcall set_n_pixel(const UINT PulseLength, const UINT AnalogOut, const UINT Number);
RTC5_API void __stdcall set_pixel(const UINT PulseLength, const UINT AnalogOut);
RTC5_API void __stdcall rs232_write_text_list(const char* pData);
RTC5_API void __stdcall set_mcbsp_out(const UINT Signal1, const UINT Signal2);
RTC5_API void __stdcall camming(const UINT FirstPos, const UINT NPos, const UINT No, const UINT Ctrl, const double Scale, const UINT Code);
RTC5_API void __stdcall periodic_toggle_list(const UINT Port, const UINT Mask, const UINT P1, const UINT P2, const UINT Count, const UINT Start);
RTC5_API void __stdcall micro_vector_abs_3d(const long X, const long Y, const long Z, const long LasOn, const long LasOf);
RTC5_API void __stdcall micro_vector_rel_3d(const long dX, const long dY, const long dZ, const long LasOn, const long LasOf);
RTC5_API void __stdcall micro_vector_abs(const long X, const long Y, const long LasOn, const long LasOf);
RTC5_API void __stdcall micro_vector_rel(const long dX, const long dY, const long LasOn, const long LasOf);
RTC5_API void __stdcall set_free_variable_list(const UINT VarNo, const UINT Value);
RTC5_API void __stdcall control_command_list(const UINT Head, const UINT Axis, const UINT Data);
RTC5_API void __stdcall jump_abs_drill_2(const long X, const long Y, const UINT DrillTime, const long XOff, const long YOff);
RTC5_API void __stdcall jump_rel_drill_2(const long dX, const long dY, const UINT DrillTime, const long XOff, const long YOff);
RTC5_API void __stdcall jump_abs_drill(const long X, const long Y, const UINT DrillTime);
RTC5_API void __stdcall jump_rel_drill(const long dX, const long dY, const UINT DrillTime);
RTC5_API void __stdcall n_timed_mark_abs_3d(const UINT CardNo, const long X, const long Y, const long Z, const double T);
RTC5_API void __stdcall n_timed_mark_rel_3d(const UINT CardNo, const long dX, const long dY, const long dZ, const double T);
RTC5_API void __stdcall n_timed_mark_abs(const UINT CardNo, const long X, const long Y, const double T);
RTC5_API void __stdcall n_timed_mark_rel(const UINT CardNo, const long dX, const long dY, const double T);
RTC5_API void __stdcall timed_mark_abs_3d(const long X, const long Y, const long Z, const double T);
RTC5_API void __stdcall timed_mark_rel_3d(const long dX, const long dY, const long dZ, const double T);
RTC5_API void __stdcall timed_mark_abs(const long X, const long Y, const double T);
RTC5_API void __stdcall timed_mark_rel(const long dX, const long dY, const double T);
RTC5_API void __stdcall n_mark_abs_3d(const UINT CardNo, const long X, const long Y, const long Z);
RTC5_API void __stdcall n_mark_rel_3d(const UINT CardNo, const long dX, const long dY, const long dZ);
RTC5_API void __stdcall n_mark_abs(const UINT CardNo, const long X, const long Y);
RTC5_API void __stdcall n_mark_rel(const UINT CardNo, const long dX, const long dY);
RTC5_API void __stdcall mark_abs_3d(const long X, const long Y, const long Z);
RTC5_API void __stdcall mark_rel_3d(const long dX, const long dY, const long dZ);
RTC5_API void __stdcall mark_abs(const long X, const long Y);
RTC5_API void __stdcall mark_rel(const long dX, const long dY);
RTC5_API void __stdcall n_timed_jump_abs_3d(const UINT CardNo, const long X, const long Y, const long Z, const double T);
RTC5_API void __stdcall n_timed_jump_rel_3d(const UINT CardNo, const long dX, const long dY, const long dZ, const double T);
RTC5_API void __stdcall n_timed_jump_abs(const UINT CardNo, const long X, const long Y, const double T);
RTC5_API void __stdcall n_timed_jump_rel(const UINT CardNo, const long dX, const long dY, const double T);
RTC5_API void __stdcall timed_jump_abs_3d(const long X, const long Y, const long Z, const double T);
RTC5_API void __stdcall timed_jump_rel_3d(const long dX, const long dY, const long dZ, const double T);
RTC5_API void __stdcall timed_jump_abs(const long X, const long Y, const double T);
RTC5_API void __stdcall timed_jump_rel(const long dX, const long dY, const double T);
RTC5_API void __stdcall n_jump_abs_3d(const UINT CardNo, const long X, const long Y, const long Z);
RTC5_API void __stdcall n_jump_rel_3d(const UINT CardNo, const long dX, const long dY, const long dZ);
RTC5_API void __stdcall n_jump_abs(const UINT CardNo, const long X, const long Y);
RTC5_API void __stdcall n_jump_rel(const UINT CardNo, const long dX, const long dY);
RTC5_API void __stdcall jump_abs_3d(const long X, const long Y, const long Z);
RTC5_API void __stdcall jump_rel_3d(const long dX, const long dY, const long dZ);
RTC5_API void __stdcall jump_abs(const long X, const long Y);
RTC5_API void __stdcall jump_rel(const long dX, const long dY);
RTC5_API void __stdcall n_para_mark_abs_3d(const UINT CardNo, const long X, const long Y, const long Z, const UINT P);
RTC5_API void __stdcall n_para_mark_rel_3d(const UINT CardNo, const long dX, const long dY, const long dZ, const UINT P);
RTC5_API void __stdcall n_para_mark_abs(const UINT CardNo, const long X, const long Y, const UINT P);
RTC5_API void __stdcall n_para_mark_rel(const UINT CardNo, const long dX, const long dY, const UINT P);
RTC5_API void __stdcall para_mark_abs_3d(const long X, const long Y, const long Z, const UINT P);
RTC5_API void __stdcall para_mark_rel_3d(const long dX, const long dY, const long dZ, const UINT P);
RTC5_API void __stdcall para_mark_abs(const long X, const long Y, const UINT P);
RTC5_API void __stdcall para_mark_rel(const long dX, const long dY, const UINT P);
RTC5_API void __stdcall n_para_jump_abs_3d(const UINT CardNo, const long X, const long Y, const long Z, const UINT P);
RTC5_API void __stdcall n_para_jump_rel_3d(const UINT CardNo, const long dX, const long dY, const long dZ, const UINT P);
RTC5_API void __stdcall n_para_jump_abs(const UINT CardNo, const long X, const long Y, const UINT P);
RTC5_API void __stdcall n_para_jump_rel(const UINT CardNo, const long dX, const long dY, const UINT P);
RTC5_API void __stdcall para_jump_abs_3d(const long X, const long Y, const long Z, const UINT P);
RTC5_API void __stdcall para_jump_rel_3d(const long dX, const long dY, const long dZ, const UINT P);
RTC5_API void __stdcall para_jump_abs(const long X, const long Y, const UINT P);
RTC5_API void __stdcall para_jump_rel(const long dX, const long dY, const UINT P);
RTC5_API void __stdcall n_timed_para_mark_abs_3d(const UINT CardNo, const long X, const long Y, const long Z, const UINT P, const double T);
RTC5_API void __stdcall n_timed_para_mark_rel_3d(const UINT CardNo, const long dX, const long dY, const long dZ, const UINT P, const double T);
RTC5_API void __stdcall n_timed_para_jump_abs_3d(const UINT CardNo, const long X, const long Y, const long Z, const UINT P, const double T);
RTC5_API void __stdcall n_timed_para_jump_rel_3d(const UINT CardNo, const long dX, const long dY, const long dZ, const UINT P, const double T);
RTC5_API void __stdcall n_timed_para_mark_abs(const UINT CardNo, const long X, const long Y, const UINT P, const double T);
RTC5_API void __stdcall n_timed_para_mark_rel(const UINT CardNo, const long dX, const long dY, const UINT P, const double T);
RTC5_API void __stdcall n_timed_para_jump_abs(const UINT CardNo, const long X, const long Y, const UINT P, const double T);
RTC5_API void __stdcall n_timed_para_jump_rel(const UINT CardNo, const long dX, const long dY, const UINT P, const double T);
RTC5_API void __stdcall timed_para_mark_abs_3d(const long X, const long Y, const long Z, const UINT P, const double T);
RTC5_API void __stdcall timed_para_mark_rel_3d(const long dX, const long dY, const long dZ, const UINT P, const double T);
RTC5_API void __stdcall timed_para_jump_abs_3d(const long X, const long Y, const long Z, const UINT P, const double T);
RTC5_API void __stdcall timed_para_jump_rel_3d(const long dX, const long dY, const long dZ, const UINT P, const double T);
RTC5_API void __stdcall timed_para_mark_abs(const long X, const long Y, const UINT P, const double T);
RTC5_API void __stdcall timed_para_mark_rel(const long dX, const long dY, const UINT P, const double T);
RTC5_API void __stdcall timed_para_jump_abs(const long X, const long Y, const UINT P, const double T);
RTC5_API void __stdcall timed_para_jump_rel(const long dX, const long dY, const UINT P, const double T);
RTC5_API void __stdcall n_set_defocus_list(const UINT CardNo, const long Shift);
RTC5_API void __stdcall n_set_defocus_offset_list(const UINT CardNo, const long Shift);
RTC5_API void __stdcall n_set_zoom_list(const UINT CardNo, const UINT Zoom);
RTC5_API void __stdcall set_defocus_list(const long Shift);
RTC5_API void __stdcall set_defocus_offset_list(const long Shift);
RTC5_API void __stdcall set_zoom_list(const UINT Zoom);
RTC5_API void __stdcall n_timed_arc_abs(const UINT CardNo, const long X, const long Y, const double Angle, const double T);
RTC5_API void __stdcall n_timed_arc_rel(const UINT CardNo, const long dX, const long dY, const double Angle, const double T);
RTC5_API void __stdcall timed_arc_abs(const long X, const long Y, const double Angle, const double T);
RTC5_API void __stdcall timed_arc_rel(const long dX, const long dY, const double Angle, const double T);
RTC5_API void __stdcall n_arc_abs_3d(const UINT CardNo, const long X, const long Y, const long Z, const double Angle);
RTC5_API void __stdcall n_arc_rel_3d(const UINT CardNo, const long dX, const long dY, const long dZ, const double Angle);
RTC5_API void __stdcall n_arc_abs(const UINT CardNo, const long X, const long Y, const double Angle);
RTC5_API void __stdcall n_arc_rel(const UINT CardNo, const long dX, const long dY, const double Angle);
RTC5_API void __stdcall n_set_ellipse(const UINT CardNo, const UINT A, const UINT B, const double Phi0, const double Phi);
RTC5_API void __stdcall n_mark_ellipse_abs(const UINT CardNo, const long X, const long Y, const double Alpha);
RTC5_API void __stdcall n_mark_ellipse_rel(const UINT CardNo, const long dX, const long dY, const double Alpha);
RTC5_API void __stdcall arc_abs_3d(const long X, const long Y, const long Z, const double Angle);
RTC5_API void __stdcall arc_rel_3d(const long dX, const long dY, const long dZ, const double Angle);
RTC5_API void __stdcall arc_abs(const long X, const long Y, const double Angle);
RTC5_API void __stdcall arc_rel(const long dX, const long dY, const double Angle);
RTC5_API void __stdcall set_ellipse(const UINT A, const UINT B, const double Phi0, const double Phi);
RTC5_API void __stdcall mark_ellipse_abs(const long X, const long Y, const double Alpha);
RTC5_API void __stdcall mark_ellipse_rel(const long dX, const long dY, const double Alpha);
RTC5_API void __stdcall n_set_offset_xyz_list(const UINT CardNo, const UINT HeadNo, const long XOffset, const long YOffset, const long ZOffset, const UINT at_once);
RTC5_API void __stdcall n_set_offset_list(const UINT CardNo, const UINT HeadNo, const long XOffset, const long YOffset, const UINT at_once);
RTC5_API void __stdcall n_set_matrix_list(const UINT CardNo, const UINT HeadNo, const UINT Ind1, const UINT Ind2, const double Mij, const UINT at_once);
RTC5_API void __stdcall n_set_angle_list(const UINT CardNo, const UINT HeadNo, const double Angle, const UINT at_once);
RTC5_API void __stdcall n_set_scale_list(const UINT CardNo, const UINT HeadNo, const double Scale, const UINT at_once);
RTC5_API void __stdcall n_apply_mcbsp_list(const UINT CardNo, const UINT HeadNo, const UINT at_once);
RTC5_API void __stdcall set_offset_xyz_list(const UINT HeadNo, const long XOffset, const long YOffset, const long ZOffset, const UINT at_once);
RTC5_API void __stdcall set_offset_list(const UINT HeadNo, const long XOffset, const long YOffset, const UINT at_once);
RTC5_API void __stdcall set_matrix_list(const UINT HeadNo, const UINT Ind1, const UINT Ind2, const double Mij, const UINT at_once);
RTC5_API void __stdcall set_angle_list(const UINT HeadNo, const double Angle, const UINT at_once);
RTC5_API void __stdcall set_scale_list(const UINT HeadNo, const double Scale, const UINT at_once);
RTC5_API void __stdcall apply_mcbsp_list(const UINT HeadNo, const UINT at_once);
RTC5_API void __stdcall n_set_mark_speed(const UINT CardNo, const double Speed);
RTC5_API void __stdcall n_set_jump_speed(const UINT CardNo, const double Speed);
RTC5_API void __stdcall n_set_sky_writing_para_list(const UINT CardNo, const double Timelag, const long LaserOnShift, const UINT Nprev, const UINT Npost);
RTC5_API void __stdcall n_set_sky_writing_list(const UINT CardNo, const double Timelag, const long LaserOnShift);
RTC5_API void __stdcall n_set_sky_writing_limit_list(const UINT CardNo, const double CosAngle);
RTC5_API void __stdcall n_set_sky_writing_mode_list(const UINT CardNo, const UINT Mode);
RTC5_API void __stdcall n_set_scanner_delays(const UINT CardNo, const UINT Jump, const UINT Mark, const UINT Polygon);
RTC5_API void __stdcall n_set_jump_mode_list(const UINT CardNo, const long Flag);
RTC5_API void __stdcall n_enduring_wobbel(const UINT CardNo);
RTC5_API void __stdcall n_set_delay_mode_list(const UINT CardNo, const UINT VarPoly, const UINT DirectMove3D, const UINT EdgeLevel, const UINT MinJumpDelay, const UINT JumpLengthLimit);
RTC5_API void __stdcall set_mark_speed(const double Speed);
RTC5_API void __stdcall set_jump_speed(const double Speed);
RTC5_API void __stdcall set_sky_writing_para_list(const double Timelag, const long LaserOnShift, const UINT Nprev, const UINT Npost);
RTC5_API void __stdcall set_sky_writing_list(const double Timelag, const long LaserOnShift);
RTC5_API void __stdcall set_sky_writing_limit_list(const double CosAngle);
RTC5_API void __stdcall set_sky_writing_mode_list(const UINT Mode);
RTC5_API void __stdcall set_scanner_delays(const UINT Jump, const UINT Mark, const UINT Polygon);
RTC5_API void __stdcall set_jump_mode_list(const long Flag);
RTC5_API void __stdcall enduring_wobbel(void);
RTC5_API void __stdcall set_delay_mode_list(const UINT VarPoly, const UINT DirectMove3D, const UINT EdgeLevel, const UINT MinJumpDelay, const UINT JumpLengthLimit);
RTC5_API void __stdcall n_stepper_enable_list(const UINT CardNo, const long Enable1, const long Enable2);
RTC5_API void __stdcall n_stepper_control_list(const UINT CardNo, const long Period1, const long Period2);
RTC5_API void __stdcall n_stepper_abs_no_list(const UINT CardNo, const UINT No, const long Pos);
RTC5_API void __stdcall n_stepper_rel_no_list(const UINT CardNo, const UINT No, const long dPos);
RTC5_API void __stdcall n_stepper_abs_list(const UINT CardNo, const long Pos1, const long Pos2);
RTC5_API void __stdcall n_stepper_rel_list(const UINT CardNo, const long dPos1, const long dPos2);
RTC5_API void __stdcall n_stepper_wait(const UINT CardNo, const UINT No);
RTC5_API void __stdcall stepper_enable_list(const long Enable1, const long Enable2);
RTC5_API void __stdcall stepper_control_list(const long Period1, const long Period2);
RTC5_API void __stdcall stepper_abs_no_list(const UINT No, const long Pos);
RTC5_API void __stdcall stepper_rel_no_list(const UINT No, const long dPos);
RTC5_API void __stdcall stepper_abs_list(const long Pos1, const long Pos2);
RTC5_API void __stdcall stepper_rel_list(const long dPos1, const long dPos2);
RTC5_API void __stdcall stepper_wait(const UINT No);
#if defined(__cplusplus)
} // extern "C"
#endif //defined(__cplusplus)

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -41,23 +41,23 @@ Stream::Stub::Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, co
, rpcmethod_AllStream_(Stream_method_names[3], options.suffix_for_stats(),::grpc::internal::RpcMethod::BIDI_STREAMING, channel) , rpcmethod_AllStream_(Stream_method_names[3], options.suffix_for_stats(),::grpc::internal::RpcMethod::BIDI_STREAMING, channel)
{} {}
::grpc::Status Stream::Stub::Simple(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::stream::ResponseInfo* response) { ::grpc::Status Stream::Stub::Simple(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::stream::LayerData* response) {
return ::grpc::internal::BlockingUnaryCall< ::stream::RequestInfo, ::stream::ResponseInfo, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_Simple_, context, request, response); return ::grpc::internal::BlockingUnaryCall< ::stream::RequestInfo, ::stream::LayerData, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_Simple_, context, request, response);
} }
void Stream::Stub::async::Simple(::grpc::ClientContext* context, const ::stream::RequestInfo* request, ::stream::ResponseInfo* response, std::function<void(::grpc::Status)> f) { void Stream::Stub::async::Simple(::grpc::ClientContext* context, const ::stream::RequestInfo* request, ::stream::LayerData* response, std::function<void(::grpc::Status)> f) {
::grpc::internal::CallbackUnaryCall< ::stream::RequestInfo, ::stream::ResponseInfo, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_Simple_, context, request, response, std::move(f)); ::grpc::internal::CallbackUnaryCall< ::stream::RequestInfo, ::stream::LayerData, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_Simple_, context, request, response, std::move(f));
} }
void Stream::Stub::async::Simple(::grpc::ClientContext* context, const ::stream::RequestInfo* request, ::stream::ResponseInfo* response, ::grpc::ClientUnaryReactor* reactor) { void Stream::Stub::async::Simple(::grpc::ClientContext* context, const ::stream::RequestInfo* request, ::stream::LayerData* response, ::grpc::ClientUnaryReactor* reactor) {
::grpc::internal::ClientCallbackUnaryFactory::Create< ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_Simple_, context, request, response, reactor); ::grpc::internal::ClientCallbackUnaryFactory::Create< ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_Simple_, context, request, response, reactor);
} }
::grpc::ClientAsyncResponseReader< ::stream::ResponseInfo>* Stream::Stub::PrepareAsyncSimpleRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) { ::grpc::ClientAsyncResponseReader< ::stream::LayerData>* Stream::Stub::PrepareAsyncSimpleRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) {
return ::grpc::internal::ClientAsyncResponseReaderHelper::Create< ::stream::ResponseInfo, ::stream::RequestInfo, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), cq, rpcmethod_Simple_, context, request); return ::grpc::internal::ClientAsyncResponseReaderHelper::Create< ::stream::LayerData, ::stream::RequestInfo, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), cq, rpcmethod_Simple_, context, request);
} }
::grpc::ClientAsyncResponseReader< ::stream::ResponseInfo>* Stream::Stub::AsyncSimpleRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) { ::grpc::ClientAsyncResponseReader< ::stream::LayerData>* Stream::Stub::AsyncSimpleRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) {
auto* result = auto* result =
this->PrepareAsyncSimpleRaw(context, request, cq); this->PrepareAsyncSimpleRaw(context, request, cq);
result->StartCall(); result->StartCall();
@ -116,11 +116,11 @@ Stream::Service::Service() {
AddMethod(new ::grpc::internal::RpcServiceMethod( AddMethod(new ::grpc::internal::RpcServiceMethod(
Stream_method_names[0], Stream_method_names[0],
::grpc::internal::RpcMethod::NORMAL_RPC, ::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Stream::Service, ::stream::RequestInfo, ::stream::ResponseInfo, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>( new ::grpc::internal::RpcMethodHandler< Stream::Service, ::stream::RequestInfo, ::stream::LayerData, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Stream::Service* service, [](Stream::Service* service,
::grpc::ServerContext* ctx, ::grpc::ServerContext* ctx,
const ::stream::RequestInfo* req, const ::stream::RequestInfo* req,
::stream::ResponseInfo* resp) { ::stream::LayerData* resp) {
return service->Simple(ctx, req, resp); return service->Simple(ctx, req, resp);
}, this))); }, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod( AddMethod(new ::grpc::internal::RpcServiceMethod(
@ -158,7 +158,7 @@ Stream::Service::Service() {
Stream::Service::~Service() { Stream::Service::~Service() {
} }
::grpc::Status Stream::Service::Simple(::grpc::ServerContext* context, const ::stream::RequestInfo* request, ::stream::ResponseInfo* response) { ::grpc::Status Stream::Service::Simple(::grpc::ServerContext* context, const ::stream::RequestInfo* request, ::stream::LayerData* response) {
(void) context; (void) context;
(void) request; (void) request;
(void) response; (void) response;

View File

@ -37,12 +37,12 @@ class Stream final {
class StubInterface { class StubInterface {
public: public:
virtual ~StubInterface() {} virtual ~StubInterface() {}
virtual ::grpc::Status Simple(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::stream::ResponseInfo* response) = 0; virtual ::grpc::Status Simple(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::stream::LayerData* response) = 0;
std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::stream::ResponseInfo>> AsyncSimple(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) { std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::stream::LayerData>> AsyncSimple(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) {
return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::stream::ResponseInfo>>(AsyncSimpleRaw(context, request, cq)); return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::stream::LayerData>>(AsyncSimpleRaw(context, request, cq));
} }
std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::stream::ResponseInfo>> PrepareAsyncSimple(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) { std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::stream::LayerData>> PrepareAsyncSimple(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) {
return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::stream::ResponseInfo>>(PrepareAsyncSimpleRaw(context, request, cq)); return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::stream::LayerData>>(PrepareAsyncSimpleRaw(context, request, cq));
} }
std::unique_ptr< ::grpc::ClientReaderInterface< ::stream::ResponseInfo>> ServerStream(::grpc::ClientContext* context, const ::stream::RequestInfo& request) { std::unique_ptr< ::grpc::ClientReaderInterface< ::stream::ResponseInfo>> ServerStream(::grpc::ClientContext* context, const ::stream::RequestInfo& request) {
return std::unique_ptr< ::grpc::ClientReaderInterface< ::stream::ResponseInfo>>(ServerStreamRaw(context, request)); return std::unique_ptr< ::grpc::ClientReaderInterface< ::stream::ResponseInfo>>(ServerStreamRaw(context, request));
@ -74,8 +74,8 @@ class Stream final {
class async_interface { class async_interface {
public: public:
virtual ~async_interface() {} virtual ~async_interface() {}
virtual void Simple(::grpc::ClientContext* context, const ::stream::RequestInfo* request, ::stream::ResponseInfo* response, std::function<void(::grpc::Status)>) = 0; virtual void Simple(::grpc::ClientContext* context, const ::stream::RequestInfo* request, ::stream::LayerData* response, std::function<void(::grpc::Status)>) = 0;
virtual void Simple(::grpc::ClientContext* context, const ::stream::RequestInfo* request, ::stream::ResponseInfo* response, ::grpc::ClientUnaryReactor* reactor) = 0; virtual void Simple(::grpc::ClientContext* context, const ::stream::RequestInfo* request, ::stream::LayerData* response, ::grpc::ClientUnaryReactor* reactor) = 0;
virtual void ServerStream(::grpc::ClientContext* context, const ::stream::RequestInfo* request, ::grpc::ClientReadReactor< ::stream::ResponseInfo>* reactor) = 0; virtual void ServerStream(::grpc::ClientContext* context, const ::stream::RequestInfo* request, ::grpc::ClientReadReactor< ::stream::ResponseInfo>* reactor) = 0;
virtual void ClientStream(::grpc::ClientContext* context, ::stream::ResponseInfo* response, ::grpc::ClientWriteReactor< ::stream::RequestInfo>* reactor) = 0; virtual void ClientStream(::grpc::ClientContext* context, ::stream::ResponseInfo* response, ::grpc::ClientWriteReactor< ::stream::RequestInfo>* reactor) = 0;
virtual void AllStream(::grpc::ClientContext* context, ::grpc::ClientBidiReactor< ::stream::RequestInfo,::stream::ResponseInfo>* reactor) = 0; virtual void AllStream(::grpc::ClientContext* context, ::grpc::ClientBidiReactor< ::stream::RequestInfo,::stream::ResponseInfo>* reactor) = 0;
@ -84,8 +84,8 @@ class Stream final {
virtual class async_interface* async() { return nullptr; } virtual class async_interface* async() { return nullptr; }
class async_interface* experimental_async() { return async(); } class async_interface* experimental_async() { return async(); }
private: private:
virtual ::grpc::ClientAsyncResponseReaderInterface< ::stream::ResponseInfo>* AsyncSimpleRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) = 0; virtual ::grpc::ClientAsyncResponseReaderInterface< ::stream::LayerData>* AsyncSimpleRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) = 0;
virtual ::grpc::ClientAsyncResponseReaderInterface< ::stream::ResponseInfo>* PrepareAsyncSimpleRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) = 0; virtual ::grpc::ClientAsyncResponseReaderInterface< ::stream::LayerData>* PrepareAsyncSimpleRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) = 0;
virtual ::grpc::ClientReaderInterface< ::stream::ResponseInfo>* ServerStreamRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request) = 0; virtual ::grpc::ClientReaderInterface< ::stream::ResponseInfo>* ServerStreamRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request) = 0;
virtual ::grpc::ClientAsyncReaderInterface< ::stream::ResponseInfo>* AsyncServerStreamRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq, void* tag) = 0; virtual ::grpc::ClientAsyncReaderInterface< ::stream::ResponseInfo>* AsyncServerStreamRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq, void* tag) = 0;
virtual ::grpc::ClientAsyncReaderInterface< ::stream::ResponseInfo>* PrepareAsyncServerStreamRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) = 0; virtual ::grpc::ClientAsyncReaderInterface< ::stream::ResponseInfo>* PrepareAsyncServerStreamRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) = 0;
@ -99,12 +99,12 @@ class Stream final {
class Stub final : public StubInterface { class Stub final : public StubInterface {
public: public:
Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options = ::grpc::StubOptions()); Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options = ::grpc::StubOptions());
::grpc::Status Simple(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::stream::ResponseInfo* response) override; ::grpc::Status Simple(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::stream::LayerData* response) override;
std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::stream::ResponseInfo>> AsyncSimple(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) { std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::stream::LayerData>> AsyncSimple(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) {
return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::stream::ResponseInfo>>(AsyncSimpleRaw(context, request, cq)); return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::stream::LayerData>>(AsyncSimpleRaw(context, request, cq));
} }
std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::stream::ResponseInfo>> PrepareAsyncSimple(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) { std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::stream::LayerData>> PrepareAsyncSimple(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) {
return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::stream::ResponseInfo>>(PrepareAsyncSimpleRaw(context, request, cq)); return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::stream::LayerData>>(PrepareAsyncSimpleRaw(context, request, cq));
} }
std::unique_ptr< ::grpc::ClientReader< ::stream::ResponseInfo>> ServerStream(::grpc::ClientContext* context, const ::stream::RequestInfo& request) { std::unique_ptr< ::grpc::ClientReader< ::stream::ResponseInfo>> ServerStream(::grpc::ClientContext* context, const ::stream::RequestInfo& request) {
return std::unique_ptr< ::grpc::ClientReader< ::stream::ResponseInfo>>(ServerStreamRaw(context, request)); return std::unique_ptr< ::grpc::ClientReader< ::stream::ResponseInfo>>(ServerStreamRaw(context, request));
@ -136,8 +136,8 @@ class Stream final {
class async final : class async final :
public StubInterface::async_interface { public StubInterface::async_interface {
public: public:
void Simple(::grpc::ClientContext* context, const ::stream::RequestInfo* request, ::stream::ResponseInfo* response, std::function<void(::grpc::Status)>) override; void Simple(::grpc::ClientContext* context, const ::stream::RequestInfo* request, ::stream::LayerData* response, std::function<void(::grpc::Status)>) override;
void Simple(::grpc::ClientContext* context, const ::stream::RequestInfo* request, ::stream::ResponseInfo* response, ::grpc::ClientUnaryReactor* reactor) override; void Simple(::grpc::ClientContext* context, const ::stream::RequestInfo* request, ::stream::LayerData* response, ::grpc::ClientUnaryReactor* reactor) override;
void ServerStream(::grpc::ClientContext* context, const ::stream::RequestInfo* request, ::grpc::ClientReadReactor< ::stream::ResponseInfo>* reactor) override; void ServerStream(::grpc::ClientContext* context, const ::stream::RequestInfo* request, ::grpc::ClientReadReactor< ::stream::ResponseInfo>* reactor) override;
void ClientStream(::grpc::ClientContext* context, ::stream::ResponseInfo* response, ::grpc::ClientWriteReactor< ::stream::RequestInfo>* reactor) override; void ClientStream(::grpc::ClientContext* context, ::stream::ResponseInfo* response, ::grpc::ClientWriteReactor< ::stream::RequestInfo>* reactor) override;
void AllStream(::grpc::ClientContext* context, ::grpc::ClientBidiReactor< ::stream::RequestInfo,::stream::ResponseInfo>* reactor) override; void AllStream(::grpc::ClientContext* context, ::grpc::ClientBidiReactor< ::stream::RequestInfo,::stream::ResponseInfo>* reactor) override;
@ -152,8 +152,8 @@ class Stream final {
private: private:
std::shared_ptr< ::grpc::ChannelInterface> channel_; std::shared_ptr< ::grpc::ChannelInterface> channel_;
class async async_stub_{this}; class async async_stub_{this};
::grpc::ClientAsyncResponseReader< ::stream::ResponseInfo>* AsyncSimpleRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) override; ::grpc::ClientAsyncResponseReader< ::stream::LayerData>* AsyncSimpleRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) override;
::grpc::ClientAsyncResponseReader< ::stream::ResponseInfo>* PrepareAsyncSimpleRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) override; ::grpc::ClientAsyncResponseReader< ::stream::LayerData>* PrepareAsyncSimpleRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) override;
::grpc::ClientReader< ::stream::ResponseInfo>* ServerStreamRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request) override; ::grpc::ClientReader< ::stream::ResponseInfo>* ServerStreamRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request) override;
::grpc::ClientAsyncReader< ::stream::ResponseInfo>* AsyncServerStreamRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq, void* tag) override; ::grpc::ClientAsyncReader< ::stream::ResponseInfo>* AsyncServerStreamRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq, void* tag) override;
::grpc::ClientAsyncReader< ::stream::ResponseInfo>* PrepareAsyncServerStreamRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) override; ::grpc::ClientAsyncReader< ::stream::ResponseInfo>* PrepareAsyncServerStreamRaw(::grpc::ClientContext* context, const ::stream::RequestInfo& request, ::grpc::CompletionQueue* cq) override;
@ -174,7 +174,7 @@ class Stream final {
public: public:
Service(); Service();
virtual ~Service(); virtual ~Service();
virtual ::grpc::Status Simple(::grpc::ServerContext* context, const ::stream::RequestInfo* request, ::stream::ResponseInfo* response); virtual ::grpc::Status Simple(::grpc::ServerContext* context, const ::stream::RequestInfo* request, ::stream::LayerData* response);
virtual ::grpc::Status ServerStream(::grpc::ServerContext* context, const ::stream::RequestInfo* request, ::grpc::ServerWriter< ::stream::ResponseInfo>* writer); virtual ::grpc::Status ServerStream(::grpc::ServerContext* context, const ::stream::RequestInfo* request, ::grpc::ServerWriter< ::stream::ResponseInfo>* writer);
virtual ::grpc::Status ClientStream(::grpc::ServerContext* context, ::grpc::ServerReader< ::stream::RequestInfo>* reader, ::stream::ResponseInfo* response); virtual ::grpc::Status ClientStream(::grpc::ServerContext* context, ::grpc::ServerReader< ::stream::RequestInfo>* reader, ::stream::ResponseInfo* response);
virtual ::grpc::Status AllStream(::grpc::ServerContext* context, ::grpc::ServerReaderWriter< ::stream::ResponseInfo, ::stream::RequestInfo>* stream); virtual ::grpc::Status AllStream(::grpc::ServerContext* context, ::grpc::ServerReaderWriter< ::stream::ResponseInfo, ::stream::RequestInfo>* stream);
@ -191,11 +191,11 @@ class Stream final {
BaseClassMustBeDerivedFromService(this); BaseClassMustBeDerivedFromService(this);
} }
// disable synchronous version of this method // disable synchronous version of this method
::grpc::Status Simple(::grpc::ServerContext* /*context*/, const ::stream::RequestInfo* /*request*/, ::stream::ResponseInfo* /*response*/) override { ::grpc::Status Simple(::grpc::ServerContext* /*context*/, const ::stream::RequestInfo* /*request*/, ::stream::LayerData* /*response*/) override {
abort(); abort();
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
} }
void RequestSimple(::grpc::ServerContext* context, ::stream::RequestInfo* request, ::grpc::ServerAsyncResponseWriter< ::stream::ResponseInfo>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { void RequestSimple(::grpc::ServerContext* context, ::stream::RequestInfo* request, ::grpc::ServerAsyncResponseWriter< ::stream::LayerData>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
::grpc::Service::RequestAsyncUnary(0, context, request, response, new_call_cq, notification_cq, tag); ::grpc::Service::RequestAsyncUnary(0, context, request, response, new_call_cq, notification_cq, tag);
} }
}; };
@ -267,25 +267,25 @@ class Stream final {
public: public:
WithCallbackMethod_Simple() { WithCallbackMethod_Simple() {
::grpc::Service::MarkMethodCallback(0, ::grpc::Service::MarkMethodCallback(0,
new ::grpc::internal::CallbackUnaryHandler< ::stream::RequestInfo, ::stream::ResponseInfo>( new ::grpc::internal::CallbackUnaryHandler< ::stream::RequestInfo, ::stream::LayerData>(
[this]( [this](
::grpc::CallbackServerContext* context, const ::stream::RequestInfo* request, ::stream::ResponseInfo* response) { return this->Simple(context, request, response); }));} ::grpc::CallbackServerContext* context, const ::stream::RequestInfo* request, ::stream::LayerData* response) { return this->Simple(context, request, response); }));}
void SetMessageAllocatorFor_Simple( void SetMessageAllocatorFor_Simple(
::grpc::MessageAllocator< ::stream::RequestInfo, ::stream::ResponseInfo>* allocator) { ::grpc::MessageAllocator< ::stream::RequestInfo, ::stream::LayerData>* allocator) {
::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(0); ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(0);
static_cast<::grpc::internal::CallbackUnaryHandler< ::stream::RequestInfo, ::stream::ResponseInfo>*>(handler) static_cast<::grpc::internal::CallbackUnaryHandler< ::stream::RequestInfo, ::stream::LayerData>*>(handler)
->SetMessageAllocator(allocator); ->SetMessageAllocator(allocator);
} }
~WithCallbackMethod_Simple() override { ~WithCallbackMethod_Simple() override {
BaseClassMustBeDerivedFromService(this); BaseClassMustBeDerivedFromService(this);
} }
// disable synchronous version of this method // disable synchronous version of this method
::grpc::Status Simple(::grpc::ServerContext* /*context*/, const ::stream::RequestInfo* /*request*/, ::stream::ResponseInfo* /*response*/) override { ::grpc::Status Simple(::grpc::ServerContext* /*context*/, const ::stream::RequestInfo* /*request*/, ::stream::LayerData* /*response*/) override {
abort(); abort();
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
} }
virtual ::grpc::ServerUnaryReactor* Simple( virtual ::grpc::ServerUnaryReactor* Simple(
::grpc::CallbackServerContext* /*context*/, const ::stream::RequestInfo* /*request*/, ::stream::ResponseInfo* /*response*/) { return nullptr; } ::grpc::CallbackServerContext* /*context*/, const ::stream::RequestInfo* /*request*/, ::stream::LayerData* /*response*/) { return nullptr; }
}; };
template <class BaseClass> template <class BaseClass>
class WithCallbackMethod_ServerStream : public BaseClass { class WithCallbackMethod_ServerStream : public BaseClass {
@ -368,7 +368,7 @@ class Stream final {
BaseClassMustBeDerivedFromService(this); BaseClassMustBeDerivedFromService(this);
} }
// disable synchronous version of this method // disable synchronous version of this method
::grpc::Status Simple(::grpc::ServerContext* /*context*/, const ::stream::RequestInfo* /*request*/, ::stream::ResponseInfo* /*response*/) override { ::grpc::Status Simple(::grpc::ServerContext* /*context*/, const ::stream::RequestInfo* /*request*/, ::stream::LayerData* /*response*/) override {
abort(); abort();
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
} }
@ -436,7 +436,7 @@ class Stream final {
BaseClassMustBeDerivedFromService(this); BaseClassMustBeDerivedFromService(this);
} }
// disable synchronous version of this method // disable synchronous version of this method
::grpc::Status Simple(::grpc::ServerContext* /*context*/, const ::stream::RequestInfo* /*request*/, ::stream::ResponseInfo* /*response*/) override { ::grpc::Status Simple(::grpc::ServerContext* /*context*/, const ::stream::RequestInfo* /*request*/, ::stream::LayerData* /*response*/) override {
abort(); abort();
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
} }
@ -519,7 +519,7 @@ class Stream final {
BaseClassMustBeDerivedFromService(this); BaseClassMustBeDerivedFromService(this);
} }
// disable synchronous version of this method // disable synchronous version of this method
::grpc::Status Simple(::grpc::ServerContext* /*context*/, const ::stream::RequestInfo* /*request*/, ::stream::ResponseInfo* /*response*/) override { ::grpc::Status Simple(::grpc::ServerContext* /*context*/, const ::stream::RequestInfo* /*request*/, ::stream::LayerData* /*response*/) override {
abort(); abort();
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
} }
@ -601,10 +601,10 @@ class Stream final {
WithStreamedUnaryMethod_Simple() { WithStreamedUnaryMethod_Simple() {
::grpc::Service::MarkMethodStreamed(0, ::grpc::Service::MarkMethodStreamed(0,
new ::grpc::internal::StreamedUnaryHandler< new ::grpc::internal::StreamedUnaryHandler<
::stream::RequestInfo, ::stream::ResponseInfo>( ::stream::RequestInfo, ::stream::LayerData>(
[this](::grpc::ServerContext* context, [this](::grpc::ServerContext* context,
::grpc::ServerUnaryStreamer< ::grpc::ServerUnaryStreamer<
::stream::RequestInfo, ::stream::ResponseInfo>* streamer) { ::stream::RequestInfo, ::stream::LayerData>* streamer) {
return this->StreamedSimple(context, return this->StreamedSimple(context,
streamer); streamer);
})); }));
@ -613,12 +613,12 @@ class Stream final {
BaseClassMustBeDerivedFromService(this); BaseClassMustBeDerivedFromService(this);
} }
// disable regular version of this method // disable regular version of this method
::grpc::Status Simple(::grpc::ServerContext* /*context*/, const ::stream::RequestInfo* /*request*/, ::stream::ResponseInfo* /*response*/) override { ::grpc::Status Simple(::grpc::ServerContext* /*context*/, const ::stream::RequestInfo* /*request*/, ::stream::LayerData* /*response*/) override {
abort(); abort();
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
} }
// replace default version of method with streamed unary // replace default version of method with streamed unary
virtual ::grpc::Status StreamedSimple(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::stream::RequestInfo,::stream::ResponseInfo>* server_unary_streamer) = 0; virtual ::grpc::Status StreamedSimple(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::stream::RequestInfo,::stream::LayerData>* server_unary_streamer) = 0;
}; };
typedef WithStreamedUnaryMethod_Simple<Service > StreamedUnaryService; typedef WithStreamedUnaryMethod_Simple<Service > StreamedUnaryService;
template <class BaseClass> template <class BaseClass>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -19,6 +19,8 @@ enum TYPE{
iSTRING = 6; iSTRING = 6;
} }
/*==================begin 通用通信结构体====================*/
message ParamInfo{ message ParamInfo{
bytes nameKey = 1; //key bytes nameKey = 1; //key
bytes strValue = 2; //value bytes strValue = 2; //value
@ -40,9 +42,60 @@ message ResponseInfo {
repeated ParamInfo item = 3; // repeated ParamInfo item = 3; //
} }
/*==================end 通用通信结构体====================*/
/*==================begin h3d图层结构体===================*/
message LayerData{
float zCooldinate = 1; // Z : Float mm
float powder = 2; // : Float mm
float layerThickness = 3; //
//LayerSummary layerSummary = 3; // () : Struct
//uint32 layerBlock = 5; //
repeated LayerDataBlock layerDataBlock = 4; //
bool result = 5; //ok
}
message LayerDataBlock
{
int32 elementId = 1; // ID : Int32
int32 elementParamId = 2; // ID : Int32
//DataBlockSummary dbSummary = 3; // : Struct
//uint32 blockNum = 4; // : Uint32 //
uint32 blockType = 3; // : Char //1 3
repeated VectorDataBlock vecBlocks= 4; //
repeated ChainDataBlock chainBlocks = 5; //
uint32 order = 6;
}
message VectorDataBlock{
float startX = 1; // X : Float // mm
float startY=2; // Y : Float // mm
float endX = 3; // X : Float // mm
float endY = 4; // Y : Float // mm
}
message ChainDataBlock
{
uint32 dotNum = 1; // :Uint32 //
repeated Point pointVec = 2; //
}
message Point{
float xPos = 1; // X : Float // mm
float yPos = 2; // Y : Float // mm
}
service Stream { service Stream {
rpc Simple(RequestInfo) returns (ResponseInfo) {} // rpc Simple(RequestInfo) returns (LayerData) {} //
rpc ServerStream (RequestInfo) returns (stream ResponseInfo) {} // rpc ServerStream (RequestInfo) returns (stream ResponseInfo) {} //
rpc ClientStream (stream RequestInfo) returns (ResponseInfo) {} // rpc ClientStream (stream RequestInfo) returns (ResponseInfo) {} //
rpc AllStream (stream RequestInfo) returns (stream ResponseInfo) {} // rpc AllStream (stream RequestInfo) returns (stream ResponseInfo) {} //

View File

@ -14,3 +14,7 @@
服务端保存一份数据, 服务端保存一份数据,
plcparam 重复code:
ArmFrontLimit
ArmBackLimit