]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MONITOR/AliOnlineReco.h
Brand new GUI application for online display/reco by Matevz.
[u/mrichter/AliRoot.git] / MONITOR / AliOnlineReco.h
CommitLineData
c6d78c69 1// @(#)root/eve:$Id$
2// Author: Matevz Tadel 2007
3
4/**************************************************************************
5 * Copyright(c) 1998-2008, ALICE Experiment at CERN, all rights reserved. *
6 * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for *
7 * full copyright notice. *
8 **************************************************************************/
9
10#ifndef AliOnlineReco_H
11#define AliOnlineReco_H
12
13#include "TObject.h"
14#include <TGFrame.h>
15
16#include <map>
17
18class AliDimIntNotifier;
19
20class TGTextButton;
21class TGListBox;
22
23//______________________________________________________________________________
24// Short description of AliOnlineReco
25//
26
27
28class AliOnlineReco : public TGMainFrame
29{
30public:
31 AliOnlineReco();
32 virtual ~AliOnlineReco() {}
33
34 AliDimIntNotifier* GetSOR() const { return fSOR; }
35 AliDimIntNotifier* GetEOR() const { return fEOR; }
36
37 void SetTestMode() { fTestMode = kTRUE; }
38
39 //------------------------------------------------------------------------------
40 // Handlers of DIM signals.
41 //------------------------------------------------------------------------------
42
43 void StartOfRun(Int_t run);
44 void EndOfRun(Int_t run);
45
46 //------------------------------------------------------------------------------
47 // Handlers of OS signals.
48 //------------------------------------------------------------------------------
49
50 void ChildDeath(Int_t pid, Int_t status);
51
52 //------------------------------------------------------------------------------
53 // Handlers of button signals.
54 //------------------------------------------------------------------------------
55
56 void DoStart();
57 void DoStop();
58 void DoXyzz();
59
60 virtual void CloseWindow();
61
62private:
63 AliOnlineReco(const AliOnlineReco&); // Not implemented
64 AliOnlineReco& operator=(const AliOnlineReco&); // Not implemented
65
66 // GUI components.
67 TGListBox *fRunList;
68 TGTextButton *fStartButt;
69 TGTextButton *fStopButt;
70 TGTextButton *fXyzzButt;
71
72 // DIM interface. Could do without ...
73 AliDimIntNotifier *fSOR;
74 AliDimIntNotifier *fEOR;
75
76 // Run-state, process mngmnt
77 typedef std::map<Int_t, Int_t> mIntInt_t; // value should be struct { pid, state, ... };
78 typedef mIntInt_t::iterator mIntInt_i;
79
80 mIntInt_t fRun2PidMap;
81
82 Bool_t fTestMode;
83
84 mIntInt_i FindMapEntryByPid(Int_t pid);
85
86 ClassDef(AliOnlineReco, 0);
87};
88
89#endif