|
UniSet
2.6.0
|
00001 // ------------------------------------------------------------------------- 00002 #ifndef ModbusTCPCore_H_ 00003 #define ModbusTCPCore_H_ 00004 // ------------------------------------------------------------------------- 00005 #include <queue> 00006 #include "ModbusRTUErrors.h" 00007 #include "UTCPStream.h" 00008 // ------------------------------------------------------------------------- 00009 namespace uniset 00010 { 00011 // ------------------------------------------------------------------------- 00013 namespace ModbusTCPCore 00014 { 00015 // Если соединение закрыто (другой стороной), функции выкидывают исключение uniset::CommFailed 00016 00017 // t - msec (сколько ждать) 00018 size_t readNextData(UTCPStream* tcp, std::queue<unsigned char>& qrecv, size_t max = 100); 00019 size_t getNextData( UTCPStream* tcp, std::queue<unsigned char>& qrecv, unsigned char* buf, size_t len ); 00020 ModbusRTU::mbErrCode sendData(UTCPStream* tcp, unsigned char* buf, size_t len ); 00021 00022 // работа напрямую с сокетом 00023 size_t readDataFD(int fd, std::queue<unsigned char>& qrecv, size_t max = 100, size_t attempts = 1 ); 00024 size_t getDataFD( int fd, std::queue<unsigned char>& qrecv, unsigned char* buf, size_t len, size_t attempts = 1 ); 00025 ModbusRTU::mbErrCode sendDataFD( int fd, unsigned char* buf, size_t len ); 00026 } 00027 // ------------------------------------------------------------------------- 00028 } // end of namespace uniset 00029 // ------------------------------------------------------------------------- 00030 #endif // ModbusTCPCore_H_ 00031 // -------------------------------------------------------------------------
1.7.6.1