Bug fix
[u/mrichter/AliRoot.git] / PHOS / AliPHOSOnlineMonitor.h
CommitLineData
f4374ddc 1#ifndef ALIPHOSONLINEMONITOR_H
2#define ALIPHOSONLINEMONITOR_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
8//_________________________________________________________________________
9// Simple class for online mnitoring
10//
11//*-- Author: D.Peressouno (RRC KI)
12
13
14// --- ROOT system ---
15#include "TDialogCanvas.h"
16class TList ;
17class TString ;
18class TClonesArray;
19// --- Standard library ---
20
21// --- AliRoot header files ---
22class AliPHOSGeometry ;
23class AliPHOSConTableDB ;
24
25class AliPHOSOnlineMonitor: public TDialogCanvas{
26
27public:
28 AliPHOSOnlineMonitor() ; // ctor
29 AliPHOSOnlineMonitor(const char * dataname) ; // ctor
30 virtual ~AliPHOSOnlineMonitor() ; // dtor
31
32 virtual void Apply(const char *action=""); //Overloaded function to
33 //handle butons
34 void SetInputFile(const char * filename = "run1.dat") ; //Open new input file
35 void DrawPedestals(); //Scans pedestals in current file
36 void DrawSpectrum(const char * opt); //Plot spectrum of all registered particles"
37 void DrawMinv() ; //Plot invariant mass distribution
38 void DrawTriggers() ; //Plot invariant mass distribution
39 void DrawEdep(Int_t mod,const char * opt) ;//Plots energy deposition per crystal for module
40 void Go() ;
41 void Clean() ; //Cleans all histograms
42 void Reset() ; //Removes all canvas and histograms
43
44 void WriteHistograms(const char * filename = "onlineout.root") ;
45
46 void SetConTableDB(const char * filename = "ConTableDB.root") ;
47
48 private:
49 void MakeButtons(void) ; //Function to make menu and buttons
50
51 void ScanDigits() ;
52 void ScanTrigger(Int_t trig) ;
53 void ScanPedestals(TClonesArray * digits) ;
54 void ScanEdep(TClonesArray * digits) ;
55 void ScanRecon(TClonesArray * recParticles) ;
56
57private:
43fbaae1 58 //They call Fatal, but they are private, user will have compile time error instead
59 //of run-time error. Fatal - because it's not clear, should I copy canvases,
60 //hists etc.
61 AliPHOSOnlineMonitor(const AliPHOSOnlineMonitor &);
62 AliPHOSOnlineMonitor & operator = (const AliPHOSOnlineMonitor &);
f4374ddc 63
64 Bool_t fScanPed ; //should we analyse pedestal events
65 Bool_t fScanSig; //should we analyse signal events
66 Bool_t fReconstruct ; //should we reconstruct events
67
68 Int_t fNevents ; //Number of events processed so far
69 Int_t fNUpdate ; //Number of events to update histo
70
71 TList * fCanvasList ; //!
72 TList * fHistosList ; //!
73
74 TString fInputFile ;
75
76 AliPHOSGeometry * fGeom ; //!
77 AliPHOSConTableDB * fcdb ; //!
78
79 ClassDef(AliPHOSOnlineMonitor,1) //PHOS online monitoring
80
81};
82
83#endif // AliPHOSONLINEMONITOR_H