9 #ifndef RAD_TOPIC_PUB_HPP
10 #define RAD_TOPIC_PUB_HPP
12 #include <rad/logger.hpp>
14 #include <azmq/message.hpp>
15 #include <azmq/socket.hpp>
17 #include <boost/asio.hpp>
26 TopicPub(boost::asio::io_service& ios,
const std::string& endpoint);
29 size_t PublishRaw(
const std::string& topic,
const std::string& buffer);
31 template <
typename TYPE>
32 size_t Publish(
const std::string& topic,
const TYPE& buffer);
38 azmq::pub_socket m_socket;
46 template <
typename TYPE>
50 std::string serialized_buffer;
51 if (buffer.SerializeToString(&serialized_buffer) ==
false) {
52 LOG4CPLUS_ERROR(
GetLogger(),
"serializing topic " << topic);
60 #endif // RAD_TOPIC_PUB_HPP
log4cplus::Logger & GetLogger()
Definition: logger.cpp:43
size_t Publish(const std::string &topic, const TYPE &buffer)
Definition: topicPub.hpp:47
Definition: topicPub.hpp:24
size_t PublishRaw(const std::string &topic, const std::string &buffer)
Definition: topicPub.cpp:59
virtual ~TopicPub()
Definition: topicPub.cpp:50
TopicPub(boost::asio::io_service &ios, const std::string &endpoint)
Definition: topicPub.cpp:28
TopicPub & operator=(const TopicPub &)=delete
#define RAD_TRACE(logger)
Definition: logger.hpp:19