otsdaq  3.06.00
TransceiverSocket.h
1 #ifndef _ots_TransceiverSocket_h_
2 #define _ots_TransceiverSocket_h_
3 
4 #include "otsdaq/NetworkUtilities/ReceiverSocket.h"
5 #include "otsdaq/NetworkUtilities/TransmitterSocket.h"
6 
7 #include <string>
8 
9 namespace ots
10 {
12 {
13  public:
14  TransceiverSocket(std::string IPAddress, unsigned int port = 0);
15  virtual ~TransceiverSocket(void);
16 
17  int acknowledge(const std::string& buffer,
18  bool verbose = false,
19  size_t maxChunkSize = 1500);
20 
21  std::string sendAndReceive(Socket& toSocket,
22  const std::string& sendBuffer,
23  unsigned int timeoutSeconds = 1,
24  unsigned int timeoutUSeconds = 0,
25  bool verbose = false,
26  unsigned int interPacketTimeoutUSeconds = 10000);
27 
28  protected:
29  TransceiverSocket(void);
30 
31  private:
32  std::mutex sendAndReceiveMutex_;
33 };
34 
35 } // namespace ots
36 
37 #endif
int acknowledge(const std::string &buffer, bool verbose=false, size_t maxChunkSize=1500)
responds to last receive location
std::string sendAndReceive(Socket &toSocket, const std::string &sendBuffer, unsigned int timeoutSeconds=1, unsigned int timeoutUSeconds=0, bool verbose=false, unsigned int interPacketTimeoutUSeconds=10000)
defines used also by OtsConfigurationWizardSupervisor