MADARA  3.4.1
ZMQTransport.h
Go to the documentation of this file.
1 #ifndef _MADARA_ZEROMQ_TRANSPORT_H_
2 #define _MADARA_ZEROMQ_TRANSPORT_H_
3 
12 #include <string>
13 
14 #include "madara/MadaraExport.h"
19 
20 #include <zmq.h>
21 
26 
27 namespace madara
28 {
29 namespace transport
30 {
43 class MADARA_EXPORT ZMQTransport : public Base
44 {
45 public:
53  ZMQTransport(const std::string& id,
55  bool launch_transport);
56 
60  virtual ~ZMQTransport();
61 
67  long send_data(
68  const madara::knowledge::KnowledgeMap& updates) override;
69 
73  virtual void close(void) override;
74 
79  int reliability(void) const;
80 
85  int reliability(const int& setting);
86 
91  virtual int setup(void) override;
92 
93 private:
96 
99 
102 
105 
108 
111 
114 
117 };
118 }
119 }
120 
121 #endif // _MADARA_ZEROMQ_TRANSPORT_H_
This class provides a distributed knowledge base to users.
Definition: KnowledgeBase.h:45
This class stores variables and their values for use by any entity needing state information in a thr...
This class stores an integer within a variable context.
Definition: Integer.h:32
Starts threads with first class support of MADARA contexts.
Definition: Threader.h:36
Base class from which all transports must be derived.
Definition: Transport.h:46
Holds basic transport settings.
ZMQ-based transport for knowledge.
Definition: ZMQTransport.h:44
knowledge::containers::Integer failed_sends_
failed sends
Definition: ZMQTransport.h:107
knowledge::containers::Integer sent_data_min_
min data sent
Definition: ZMQTransport.h:116
void * write_socket_
underlying socket for sending
Definition: ZMQTransport.h:101
threads::Threader read_threads_
threads for reading knowledge updates
Definition: ZMQTransport.h:98
knowledge::containers::Integer sent_data_max_
max data sent
Definition: ZMQTransport.h:113
knowledge::containers::Integer sent_data_
sent data
Definition: ZMQTransport.h:110
knowledge::containers::Integer sent_packets_
sent packets
Definition: ZMQTransport.h:104
knowledge::KnowledgeBase knowledge_
knowledge base for threads to use
Definition: ZMQTransport.h:95
constexpr string_t string
::std::map< std::string, KnowledgeRecord > KnowledgeMap
Copyright(c) 2020 Galois.