]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MONITOR/AliSocket.h
Merge branch 'master' into TPCdev
[u/mrichter/AliRoot.git] / MONITOR / AliSocket.h
1 #ifndef ALISOCKET_H
2 #define ALISOCKET_H
3
4 #include <TObject.h>
5 #include <TString.h>
6
7 class AliNetMessage;
8
9 namespace zmq
10 {
11         class context_t;
12         class socket_t;
13 }
14
15 class AliSocket : public TObject
16 {
17 public:
18         AliSocket(zmq::context_t* context, int type);
19         virtual ~AliSocket();
20         
21         void Bind(const char* endpoint);
22         void Connect(const char* endpoint);
23         void Subscribe(const char* filter);
24         
25   bool Recv(AliNetMessage *&mess, int flags = 0);
26   bool Send(AliNetMessage &message, int flags = 0);
27   
28 private:
29         AliSocket(const AliSocket &); // Not implemented
30         void operator=(const AliSocket &); // Not implemented
31         
32         zmq::context_t *fContext; //! the zmq context
33         zmq::socket_t *fSocket; //! the socket
34         TString fEndPoint; //!
35         
36   ClassDef(AliSocket, 0);  
37 };
38
39 #endif