]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STORAGE/alifakedisplay.cxx
Fix
[u/mrichter/AliRoot.git] / STORAGE / alifakedisplay.cxx
CommitLineData
5eb34a26 1#include "AliStorageEventManager.h"
2#include "AliStorageTypes.h"
3#include "AliESDEvent.h"
4
5#include "zmq.hpp"
6#include <iostream>
7
8using namespace std;
9using namespace zmq;
10
11/* parameters:
12
130 - connect directly to reconstruction socket
141 - connect to Storage Manager and ask for last event
15
16*/
17
18int main(int argc, char **argv)
19{
20 if(argc<2)
21 {
22 cout<<"Usage: alifakedisplay <mode>"<<endl;
23 cout<<"mode:"<<endl;
24 cout<<"0 - connect directly to reconstruction socket"<<endl;
25 cout<<"1 - connect to Storage Manager and ask for last event"<<endl;
26 return 0;
27 }
28
29 context_t *context = new context_t();
30 socket_t *socket;
31 AliStorageEventManager *manager = new AliStorageEventManager();
32 AliESDEvent *event;
33
34 if(atoi(argv[1])==0)
35 {
36 socket = new socket_t(*context,ZMQ_SUB);
37 socket->setsockopt(ZMQ_SUBSCRIBE,"",0);
38 socket->connect(Form("tcp://137.138.93.150:%d",gEventsSubscriberPort));
39 while(1)
40 {
41 event = manager->GetEvent(socket);
42 if(event)
43 {
44 cout<<"Received event. Run:"<<event->GetRunNumber()<<"\t event:"<<event->GetEventNumberInFile()<<endl;
45
46 delete event;
47 }
48 else
49 {
50 cout<<"NO EVENT"<<endl;
51 }
52 }
53 }
54 else if(atoi(argv[1])==1)
55 {
56 socket = new socket_t(*context,ZMQ_REQ);
57 socket->connect(Form("tcp://137.138.93.150:%d",gServerCommunicationPort));
58 while(1)
59 {
60 struct serverRequestStruct *requestMessage = new struct serverRequestStruct;
61 requestMessage->messageType = REQUEST_GET_LAST_EVENT;
62
63 manager->Send(requestMessage,socket);
64 event = manager->GetEvent(socket);
65 if(event)
66 {
67 cout<<"Last event - Run:"<<event->GetRunNumber()<<"\t event:"<<event->GetEventNumberInFile()<<endl;
68
69 delete event;
70 }
71 else
72 {
73 cout<<"NO EVENT"<<endl;
74 }
75 sleep(1);
76 }
77 }
78
79 return 0;
80}