/************************************************************************* > File Name : CZeroMQ.h > Author : FengChao > EMail : smile.fengchao@gmail.com > Created Time : Fri 17 Jul 2020 09:30:51 AM CST ************************************************************************/ #ifndef CZEROMQ_H #define CZEROMQ_H #include class CZMQSubscriber { public: explicit CZMQSubscriber(const char *pcAddrPort); ~CZMQSubscriber(); int SetRecvTimeout(unsigned int uiSeconds = 3); int RecvData(void *pvBuff, unsigned int uiBuffLen); private: int SocketInit(); private: void *m_pvSubCtx; void *m_pvSubSock; std::string m_strAddrPort; }; class CZMQReqRep { public: explicit CZMQReqRep(int iType, const char *pcAddrPort); ~CZMQReqRep(); int RecvData(void *pvBuff, unsigned int uiBuffLen); int SendData(const void *pvData, unsigned int uiDataLen); int SetRecvTimeout(unsigned int uiSeconds = 3); int SetSendTimeout(unsigned int uiSeconds = 3); private: int SocketInit(); private: int m_iType; void *m_pvCtx; void *m_pvSock; std::string m_strAddrPort; }; #endif /*CZEROMQ_H*/