#ifndef Hd_SocketInovance_module_H #define Hd_SocketInovance_module_H #include #include #include #include #include #include "base.h" #include #include #include #using "../../bin/HslCommunicationNew.dll" using namespace HslCommunication; using namespace std; using namespace cli; class Hd_SocketModule_InovanceH5UTcp :public Base { Q_OBJECT public: Hd_SocketModule_InovanceH5UTcp(); virtual ~Hd_SocketModule_InovanceH5UTcp(); bool readData(std::vector& vec_mat, QByteArray& data); // readData将PLC读取或者发送的返回值发回给主线程,通过全局变量的方式逐条发送 bool writeData(std::vector& vec_mat, QByteArray& data); // writeData调用PLC的收发,将需要的数据发给寄存器,返回OK/NG bool initParas(QByteArray&); bool run(); bool decodeWriteResult(QByteArray byte, QVector& vec_ret); private: //HslCommunication.Profinet.Keyence gcroot* m_InovanceTcpNet = new gcroot; bool tcp_Status = true; // 检查tcp状态 QString m_IP; QString SA1; QString DA1; QString DA2; QString m_port; // 端口 int sleepvalue; // 刷新间隔 }; extern "C" { Q_DECL_EXPORT Hd_SocketModule_InovanceH5UTcp * create(); Q_DECL_EXPORT void destory(Hd_SocketModule_InovanceH5UTcp * ptr); } #endif // Hd_SocketInovance_module_H