AliRoot Core  v5-06-30 (35d6c57)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliStorageAdministratorPanelListEvents.cxx
Go to the documentation of this file.
2 #include "AliOnlineReconstructionUtil.h"
3 
4 #include <iostream>
5 #include <sstream>
6 #include <vector>
7 #include <set>
8 
9 #include <TG3DLine.h>
10 #include <TGButton.h>
11 #include <TGFrame.h>
12 
13 #include <TEnv.h>
14 #include <TSQLServer.h>
15 #include <TSQLResult.h>
16 #include <TSQLRow.h>
17 
18 using namespace std;
19 
21 
23 
24 #define WINDOWS_WIDTH 400
25 #define WINDOWS_HEIGHT 500
26 
27 enum BUTTON{
38 };
39 
40 enum ENTRY{
47 };
48 
50 TGMainFrame(gClient->GetRoot(),10,10,kMainFrame | kVerticalFrame),
51 fStatusLabel(0),
52 fRunMinEntry(0),
53 fRunMaxEntry(0),
54 fEventMinEntry(0),
55 fEventMaxEntry(0),
56 fMultiplicityMinEntry(0),
57 fMultiplicityMaxEntry(0),
58 fPPcheckbox(0),
59 fPbPbcheckbox(0),
60 fTemporaryCheckbox(0),
61 fPermanentCheckbox(0),
62 fGetListButton(0),
63 fMarkButton(0),
64 fLoadButton(0),
65 fListBox(0),
66 fEventsListVector(0),
67 fServerSocket(SERVER_COMMUNICATION_REQ),
68 fEventManager(0),
69 fCurrentEvent(0),
70 fOnlineMode(0)
71 {
74 
75  SetName("List");
76  SetLayoutBroken(kTRUE);
77 
78  InitWindow();
80  fTriggerBox->Select(-1);
81 }
82 
84 {
85  cout<<"ADMIN PANEL -- List events descructor called";
86  cout<<" --- OK"<<endl;
87 }
88 
90 {
92  return fInstance;
93 }
94 
95 
97 {
98  Emit("SelectedEvent()");
99 }
100 
102 {
103  // "Run" group frame
104  TGGroupFrame *fRunGroupFrame = new TGGroupFrame(this,"Run");
105  fRunGroupFrame->SetLayoutBroken(kTRUE);
106 
107  fRunMinEntry = new TGNumberEntry(fRunGroupFrame,0,9,ENTRY_RUN_MIN,(TGNumberFormat::EStyle) 5);
108  fRunGroupFrame->AddFrame(fRunMinEntry, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
109  fRunMinEntry->MoveResize(38,22,80,22);
110 
111  TGLabel *fRunMinLabel = new TGLabel(fRunGroupFrame,"Min:");
112  fRunMinLabel->SetTextJustify(36);
113  fRunMinLabel->SetMargins(0,0,0,0);
114  fRunMinLabel->SetWrapLength(-1);
115  fRunGroupFrame->AddFrame(fRunMinLabel, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
116  fRunMinLabel->MoveResize(8,22,30,18);
117 
118  TGLabel *fRunMaxLabel = new TGLabel(fRunGroupFrame,"Max:");
119  fRunMaxLabel->SetTextJustify(36);
120  fRunMaxLabel->SetMargins(0,0,0,0);
121  fRunMaxLabel->SetWrapLength(-1);
122  fRunGroupFrame->AddFrame(fRunMaxLabel, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
123  fRunMaxLabel->MoveResize(120,22,30,24);
124 
125  fRunMaxEntry = new TGNumberEntry(fRunGroupFrame,999999,8,ENTRY_RUN_MAX,(TGNumberFormat::EStyle) 5);
126  fRunGroupFrame->AddFrame(fRunMaxEntry, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
127  fRunMaxEntry->MoveResize(150,22,72,22);
128 
129  fRunGroupFrame->SetLayoutManager(new TGVerticalLayout(fRunGroupFrame));
130  AddFrame(fRunGroupFrame, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
131  fRunGroupFrame->MoveResize(8,8,230,60);
132 
133  // "Event" group frame
134  TGGroupFrame *fEventGroupFrame = new TGGroupFrame(this,"Event");
135  fEventGroupFrame->SetLayoutBroken(kTRUE);
136 
137  fEventMinEntry = new TGNumberEntry(fEventGroupFrame,0,9,ENTRY_EVENT_MIN,(TGNumberFormat::EStyle) 5);
138  fEventGroupFrame->AddFrame(fEventMinEntry, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
139  fEventMinEntry->MoveResize(38,22,80,22);
140 
141  TGLabel *fEventMinLabel = new TGLabel(fEventGroupFrame,"Min:");
142  fEventMinLabel->SetTextJustify(36);
143  fEventMinLabel->SetMargins(0,0,0,0);
144  fEventMinLabel->SetWrapLength(-1);
145  fEventGroupFrame->AddFrame(fEventMinLabel, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
146  fEventMinLabel->MoveResize(8,22,30,18);
147 
148  TGLabel *fEventMaxLabel = new TGLabel(fEventGroupFrame,"Max:");
149  fEventMaxLabel->SetTextJustify(36);
150  fEventMaxLabel->SetMargins(0,0,0,0);
151  fEventMaxLabel->SetWrapLength(-1);
152  fEventGroupFrame->AddFrame(fEventMaxLabel, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
153  fEventMaxLabel->MoveResize(120,22,30,24);
154 
155  fEventMaxEntry = new TGNumberEntry(fEventGroupFrame,999999,8,ENTRY_EVENT_MAX,(TGNumberFormat::EStyle) 5);
156  fEventGroupFrame->AddFrame(fEventMaxEntry, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
157  fEventMaxEntry->MoveResize(150,22,72,22);
158 
159  fEventGroupFrame->SetLayoutManager(new TGVerticalLayout(fEventGroupFrame));
160  AddFrame(fEventGroupFrame, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
161  fEventGroupFrame->MoveResize(8,68,230,60);
162 
163  // "Multiplicity" group frame
164  TGGroupFrame *fMultiplicityGroupFrame = new TGGroupFrame(this,"Multiplicity");
165  fMultiplicityGroupFrame->SetLayoutBroken(kTRUE);
166 
167  fMultiplicityMinEntry = new TGNumberEntry(fMultiplicityGroupFrame,0,9,ENTRY_MULTIPLICITY_MIN,(TGNumberFormat::EStyle) 5);
168  fMultiplicityGroupFrame->AddFrame(fMultiplicityMinEntry, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
169  fMultiplicityMinEntry->MoveResize(38,22,80,22);
170 
171  TGLabel *fMultiplicityMinLabel = new TGLabel(fMultiplicityGroupFrame,"Min:");
172  fMultiplicityMinLabel->SetTextJustify(36);
173  fMultiplicityMinLabel->SetMargins(0,0,0,0);
174  fMultiplicityMinLabel->SetWrapLength(-1);
175  fMultiplicityGroupFrame->AddFrame(fMultiplicityMinLabel, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
176  fMultiplicityMinLabel->MoveResize(8,22,30,18);
177 
178  TGLabel *fMultiplicityMaxLabel = new TGLabel(fMultiplicityGroupFrame,"Max:");
179  fMultiplicityMaxLabel->SetTextJustify(36);
180  fMultiplicityMaxLabel->SetMargins(0,0,0,0);
181  fMultiplicityMaxLabel->SetWrapLength(-1);
182  fMultiplicityGroupFrame->AddFrame(fMultiplicityMaxLabel, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
183  fMultiplicityMaxLabel->MoveResize(120,22,30,24);
184 
185  fMultiplicityMaxEntry = new TGNumberEntry(fMultiplicityGroupFrame,999999,8,ENTRY_MULTIPLICITY_MAX,(TGNumberFormat::EStyle) 5);
186  fMultiplicityGroupFrame->AddFrame(fMultiplicityMaxEntry, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
187  fMultiplicityMaxEntry->MoveResize(150,22,72,22);
188 
189  fMultiplicityGroupFrame->SetLayoutManager(new TGVerticalLayout(fMultiplicityGroupFrame));
190  AddFrame(fMultiplicityGroupFrame, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
191  fMultiplicityGroupFrame->MoveResize(8,128,230,60);
192 
193  // "Beam" group frame
194  TGGroupFrame *fBeamGroupFrame = new TGGroupFrame(this,"Beam");
195  fBeamGroupFrame->SetLayoutBroken(kTRUE);
196 
197  fPPcheckbox = new TGCheckButton(fBeamGroupFrame,"p-p",BUTTON_CHECK_PP);
198  fPPcheckbox->SetTextJustify(36);
199  fPPcheckbox->SetMargins(0,0,0,0);
200  fPPcheckbox->SetWrapLength(-1);
201  fBeamGroupFrame->AddFrame(fPPcheckbox, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
202  fPPcheckbox->MoveResize(8,22,40,19);
203 
204  fPbPbcheckbox = new TGCheckButton(fBeamGroupFrame,"Pb-Pb",BUTTON_CHECK_PBPB);
205  fPbPbcheckbox->SetTextJustify(36);
206  fPbPbcheckbox->SetMargins(0,0,0,0);
207  fPbPbcheckbox->SetWrapLength(-1);
208  fBeamGroupFrame->AddFrame(fPbPbcheckbox, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
209  fPbPbcheckbox->MoveResize(60,22,55,19);
210 
211  fBeamGroupFrame->SetLayoutManager(new TGVerticalLayout(fBeamGroupFrame));
212  AddFrame(fBeamGroupFrame, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
213  fBeamGroupFrame->MoveResize(8,188,230,60);
214 
215  // "Storage" group frame
216  TGGroupFrame *fStorageGroupFrame = new TGGroupFrame(this,"Storage");
217  fStorageGroupFrame->SetLayoutBroken(kTRUE);
218 
219  fPermanentCheckbox = new TGCheckButton(fStorageGroupFrame,"Permanent",BUTTON_CHECK_PERM);
220  fPermanentCheckbox->SetTextJustify(36);
221  fPermanentCheckbox->SetMargins(0,0,0,0);
222  fPermanentCheckbox->SetWrapLength(-1);
223  fStorageGroupFrame->AddFrame(fPermanentCheckbox, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
224  fPermanentCheckbox->MoveResize(8,22,80,19);
225 
226  fTemporaryCheckbox = new TGCheckButton(fStorageGroupFrame,"Temporary",BUTTON_CHECK_TEMP);
227  fTemporaryCheckbox->SetTextJustify(36);
228  fTemporaryCheckbox->SetMargins(0,0,0,0);
229  fTemporaryCheckbox->SetWrapLength(-1);
230  fStorageGroupFrame->AddFrame(fTemporaryCheckbox, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
231  fTemporaryCheckbox->MoveResize(120,22,80,19);
232 
233  fStorageGroupFrame->SetLayoutManager(new TGVerticalLayout(fStorageGroupFrame));
234  AddFrame(fStorageGroupFrame, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
235  fStorageGroupFrame->MoveResize(8,248,230,60);
236 
237  // "Trigger" group frame
238  TGGroupFrame *fTriggerGroupFrame = new TGGroupFrame(this,"Trigger");
239  fTriggerGroupFrame->SetLayoutBroken(kTRUE);
240 
241  fTriggerBox = new TGComboBox(fTriggerGroupFrame,TRIGGER_BOX);
242  fTriggerBox->AddEntry("No trigger selection",-1);
243  fTriggerBox->Select(-1,kTRUE);
244 // fTriggerBox->EnableTextInput(true);
245  fTriggerGroupFrame->AddFrame(fTriggerBox, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
246  fTriggerBox->MoveResize(8,22,200,19);
247 
248  fTriggerGroupFrame->SetLayoutManager(new TGVerticalLayout(fStorageGroupFrame));
249  AddFrame(fTriggerGroupFrame, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
250  fTriggerGroupFrame->MoveResize(8,310,230,60);
251 
252 
253  // Status label group frame
254  TGGroupFrame *fStatusGroupFrame = new TGGroupFrame(this,"Status");
255  fStatusGroupFrame->SetLayoutBroken(kTRUE);
256 
257  fStatusLabel = new TGLabel(fStatusGroupFrame,"Status label");
258  fStatusLabel->SetTextJustify(36);
259  fStatusLabel->SetMargins(0,0,0,0);
260  fStatusLabel->SetWrapLength(-1);
261  fStatusGroupFrame->AddFrame(fStatusLabel, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
262  fStatusLabel->MoveResize(8,22,80,19);
263 
264  fStatusGroupFrame->SetLayoutManager(new TGVerticalLayout(fStatusGroupFrame));
265  AddFrame(fStatusGroupFrame, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
266  fStatusGroupFrame->MoveResize(8,372,230,60);
267 
268  // buttons
269  fMarkButton = new TGTextButton(this,"Mark event",BUTTON_MARK_EVENT);
270  fMarkButton->SetTextJustify(36);
271  fMarkButton->SetMargins(0,0,0,0);
272  fMarkButton->SetWrapLength(-1);
273  fMarkButton->Resize(100,24);
274  AddFrame(fMarkButton, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
275  fMarkButton->MoveResize(8,444,100,24);
276 
277  fLoadButton = new TGTextButton(this,"Load selected event",BUTTON_LOAD_EVENT);
278  fLoadButton->SetTextJustify(36);
279  fLoadButton->SetMargins(0,0,0,0);
280  fLoadButton->SetWrapLength(-1);
281  fLoadButton->Resize(130,24);
282  AddFrame(fLoadButton, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
283  fLoadButton->MoveResize(108,444,130,24);
284 
285  fGetListButton = new TGTextButton(this,"List events",BUTTON_GET_LIST);
286  fGetListButton->SetTextJustify(36);
287  fGetListButton->SetMargins(0,0,0,0);
288  fGetListButton->SetWrapLength(-1);
289  fGetListButton->Resize(100,24);
290  AddFrame(fGetListButton, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
291  fGetListButton->MoveResize(8,468,100,24);
292 
293  fUpdateTriggersButton = new TGTextButton(this,"Update TCs",BUTTON_UPDATE_TC);
294  fUpdateTriggersButton->SetTextJustify(36);
295  fUpdateTriggersButton->SetMargins(0,0,0,0);
296  fUpdateTriggersButton->SetWrapLength(-1);
297  fUpdateTriggersButton->Resize(130,24);
298  AddFrame(fUpdateTriggersButton, new TGLayoutHints(kLHintsLeft | kLHintsTop,2,2,2,2));
299  fUpdateTriggersButton->MoveResize(108,468,130,24);
300 
301  // list box
302  fListBox = new TGListBox(this);
303  fListBox->SetName("fListBox");
304  fListBox->AddEntry(new TGString("Run Event System Mult Marked"),0);
305  AddFrame(fListBox, new TGLayoutHints(kLHintsLeft | kLHintsExpandY | kLHintsTop,2,2,2,2));
306  fListBox->MoveResize(8,510,230,436);
307 
308  MapSubwindows();
309  MapWindow();
310  Resize(252,809);
311 }
312 
314 {
315  struct serverRequestStruct *requestMessage = new struct serverRequestStruct;
316  requestMessage->messageType = REQUEST_GET_TRIGGER_LIST;
317 
318  if(!fEventManager->Send(requestMessage,fServerSocket))
319  {
320  cout<<"ADMIN PANEL -- couldn't send request for set of trigger classes"<<endl;
321  return;
322  }
323 
324  vector<string100> *tmpSet;
325  if(!fEventManager->Get(tmpSet,fServerSocket))
326  {
327  cout<<"ADMIN PANEL -- problems getting server's response"<<endl;
329  return;
330  }
331  vector<string100> &receivedSet = *tmpSet;
332 
333  cout<<"ADMIN PANEL -- received set of size:"<<receivedSet.size()<<endl;
334 
335  vector<string100>::iterator it;
336  int i=0;
337  for (it = receivedSet.begin(); it != receivedSet.end(); ++it)
338  {
339  string100 cls = *it;
340  fTriggerClasses.push_back(cls.data);
341  fTriggerBox->AddEntry(cls.data,i++);
342  }
343 }
344 
345 
347 {
348  //prepare and send request message
349  struct serverRequestStruct *requestMessage = new struct serverRequestStruct;
350 
351  //build query
352  requestMessage->runNumber[0]=fRunMinEntry->GetIntNumber();
353  requestMessage->runNumber[1]=fRunMaxEntry->GetIntNumber();
354  requestMessage->eventNumber[0]=fEventMinEntry->GetIntNumber();
355  requestMessage->eventNumber[1]=fEventMaxEntry->GetIntNumber();
356  if(fTemporaryCheckbox->GetState()==1){requestMessage->marked[0]=0;}
357  else{requestMessage->marked[0]=-1;}
358  if(fPermanentCheckbox->GetState()==1){requestMessage->marked[1]=1;}
359  else{requestMessage->marked[1]=-1;}
360  requestMessage->multiplicity[0]=fMultiplicityMinEntry->GetIntNumber();
361  requestMessage->multiplicity[1]=fMultiplicityMaxEntry->GetIntNumber();
362  if(fPPcheckbox->GetState()==1){strcpy(requestMessage->system[0],"p-p");}
363  else{strcpy(requestMessage->system[0],"");}
364  if(fPbPbcheckbox->GetState()==1){strcpy(requestMessage->system[1],"A-A");}
365  else{strcpy(requestMessage->system[1],"");}
366 
367  if(fTriggerBox->GetSelected()>=0)
368  {
369  const char* triggerClassName = fTriggerClasses[fTriggerBox->GetSelected()];
370  cout<<"SELECTED TRIGGER CLASS:"<<triggerClassName<<endl;
371  strcpy(requestMessage->triggerClass,triggerClassName);
372  }
373  else
374  {
375  strcpy(requestMessage->triggerClass,"No trigger selection");
376  }
377  requestMessage->messageType = REQUEST_LIST_EVENTS;
378 
379  if(!fEventManager->Send(requestMessage,fServerSocket))
380  {
381  cout<<"ADMIN PANEL -- couldn't send get list request"<<endl;
382  return;
383  }
384 
385  fListBox->RemoveAll();
386  fListBox->AddEntry(new TGString("Run Event System Mult Marked"),0);
387 
388  vector<serverListStruct> *tmpVector;
389  if(!fEventManager->Get(tmpVector,fServerSocket))
390  {
391  cout<<"ADMIN PANEL -- problems getting server's response"<<endl;
393  return;
394  }
395  vector<serverListStruct> &receivedList = *tmpVector;
396 
397  if(receivedList.size()==0){
398  fStatusLabel->SetText("List is empty");
399  }
400 
401 
402  for(unsigned int i=0;i<receivedList.size();i++)
403  {
404  fListBox->AddEntry(new TGString(Form("%d %d %s %d %d ",
405  receivedList[i].runNumber,
406  receivedList[i].eventNumber,
407  receivedList[i].system,
408  receivedList[i].multiplicity,
409  receivedList[i].marked)),i+1);
410  }
411  fListBox->MoveResize(8,510,230,436);
412  fEventsListVector = receivedList;
413 
414  gClient->HandleInput();
415  gClient->NeedRedraw(fListBox, kTRUE);
416  gClient->HandleInput();
417  MapSubwindows();
418  MapWindow();
419  Layout();
420  delete tmpVector;
421 }
422 
423 
425 {
426  int runNumber;
427  int eventNumber;
428 
429  //get run and event number from selected row
430  int selectedEventNumber = fListBox->GetSelected()-1;
431 
432  if(selectedEventNumber<0)return;
433 
434  runNumber=fEventsListVector[selectedEventNumber].runNumber;
435  eventNumber=fEventsListVector[selectedEventNumber].eventNumber;
436 
437  struct serverRequestStruct *requestMessage = new struct serverRequestStruct;
438  requestMessage->eventsRunNumber = runNumber;
439  requestMessage->eventsEventNumber = eventNumber;
440  requestMessage->messageType = REQUEST_MARK_EVENT;
441 
442  if(!fEventManager->Send(requestMessage,fServerSocket))
443  {
444  cout<<"ADMIN PANEL -- couldn't send mark request"<<endl;
445  return;
446  }
447 
448  bool response;
449  if(!fEventManager->Get(&response,fServerSocket))
450  {
451  cout<<"ADMIN PANEL -- problems getting server's response"<<endl;
453  return;
454  }
455 
456  if(response)
457  {
458  fStatusLabel->SetText("Event marked");
459  cout<<"ADMIN PANEL -- Event marked succesfully"<<endl;
460  }
461  else
462  {
463  fStatusLabel->SetText("Error!");
464  cout<<"ADMIN PANEL -- Could not matk event"<<endl;
465  }
466 }
467 
469 {
470  int selectedEventNumber = fListBox->GetSelected()-1;
471  if(selectedEventNumber<0)return;
472  int runNumber=fEventsListVector[selectedEventNumber].runNumber;
473  int eventNumber=fEventsListVector[selectedEventNumber].eventNumber;
474 
475 
476  struct serverRequestStruct *requestMessage = new struct serverRequestStruct;
477  requestMessage->eventsRunNumber = runNumber;
478  requestMessage->eventsEventNumber = eventNumber;
479  requestMessage->messageType = REQUEST_GET_EVENT;
480 
481  if(!fEventManager->Send(requestMessage,fServerSocket))
482  {
483  cout<<"ADMIN PANEL -- couldn't send get event request"<<endl;
484  return;
485 
486  }
487  AliESDEvent *resultEvent;
488  if(!fEventManager->Get(resultEvent,fServerSocket))
489  {
490  cout<<"ADMIN PANEL -- problems getting server's response"<<endl;
492  return;
493  }
494 
495  if(resultEvent)
496  {
497  cout<<"ADMIN -- received event"<<endl;
498  fCurrentEvent = resultEvent;
499  }
500  else
501  {
502  cout<<"ADMIN -- received no event"<<endl;
503  }
504 
505  SelectedEvent();
506 }
507 
509 
511 {
512  cout<<"Quiting list events";
513  if(fInstance){delete fInstance;fInstance=0;}
514  cout<<" -- OK"<<endl;
515 }
516 
517 Bool_t AliStorageAdministratorPanelListEvents::ProcessMessage(Long_t msg, Long_t parm1, Long_t)
518 {
519  switch (GET_MSG(msg))
520  {
521  case kC_COMMAND:
522  switch (GET_SUBMSG(msg))
523  {
524  case kCM_BUTTON:
525  switch(parm1)
526  {
527  case BUTTON_GET_LIST:onGetListButton();break;
528  case BUTTON_MARK_EVENT:onMarkButton();break;
529  case BUTTON_LOAD_EVENT:onLoadButton();break;
531  default:break;
532  }
533  break;
534  default:break;
535  }
536  break;
537  default:break;
538  }
539 
540  return false;
541 }
542 
544 {
545  if(ison != fOnlineMode){fOnlineMode = ison;}
546  else{return;}
547 
548  if (ison) {
549  fPPcheckbox->SetDisabledAndSelected(ison);
550  fPbPbcheckbox->SetDisabledAndSelected(ison);
551  fTemporaryCheckbox->SetDisabledAndSelected(ison);
552  fPermanentCheckbox->SetDisabledAndSelected(ison);
553  }
554  else {
555  fPPcheckbox->SetEnabled(!ison);
556  fPbPbcheckbox->SetEnabled(!ison);
557  fTemporaryCheckbox->SetEnabled(!ison);
558  fPermanentCheckbox->SetEnabled(!ison);
559  // fPPcheckbox->SetOn();
560  // fPbPbcheckbox->SetOn();
561  // fTemporaryCheckbox->SetOn();
562  // fPermanentCheckbox->SetOn();
563  }
564 
565  fRunMinEntry->SetState(!ison);
566  fRunMaxEntry->SetState(!ison);
567  fEventMinEntry->SetState(!ison);
568  fEventMaxEntry->SetState(!ison);
569  fMultiplicityMinEntry->SetState(!ison);
570  fMultiplicityMaxEntry->SetState(!ison);
571 
572  // fCloseButton->SetEnabled(!ison);
573  fGetListButton->SetEnabled(!ison);
574  fMarkButton->SetEnabled(!ison);
575  fLoadButton->SetEnabled(!ison);
576 }
static AliStorageAdministratorPanelListEvents * fInstance
static AliZMQManager * GetInstance()
virtual Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t)
void CreateSocket(storageSockets socket)
bool Send(std::vector< serverListStruct > list, storageSockets socket)
ClassImp(AliStorageAdministratorPanelListEvents)
static AliStorageAdministratorPanelListEvents * GetInstance()
void RecreateSocket(storageSockets socket)
bool Get(std::vector< serverListStruct > *&result, storageSockets socket)