Class for online monitoring of BeamTests
[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:
58
59 Bool_t fScanPed ; //should we analyse pedestal events
60 Bool_t fScanSig; //should we analyse signal events
61 Bool_t fReconstruct ; //should we reconstruct events
62
63 Int_t fNevents ; //Number of events processed so far
64 Int_t fNUpdate ; //Number of events to update histo
65
66 TList * fCanvasList ; //!
67 TList * fHistosList ; //!
68
69 TString fInputFile ;
70
71 AliPHOSGeometry * fGeom ; //!
72 AliPHOSConTableDB * fcdb ; //!
73
74 ClassDef(AliPHOSOnlineMonitor,1) //PHOS online monitoring
75
76};
77
78#endif // AliPHOSONLINEMONITOR_H