]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/PHOS/AliHLTPHOSPhysicsHistogramProducer.h
Update of ITS tracking check task and related macros
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSPhysicsHistogramProducer.h
CommitLineData
87434909 1/**************************************************************************
2 * This file is property of and copyright by the ALICE HLT Project *
3 * All rights reserved. *
4 * *
5 * Primary Authors: Albin Gaignette *
6 * *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
15
16#ifndef ALIHLTPHOSPHYSICSHISTOGRAMPRODUCER_H
17#define ALIHLTPHOSPHYSICSHISTOGRAMPRODUCER_H
18
19/**
20 * @file AliHLTPHOSPhysicsHistogramProducer
21 * @author Albin Gaignette
22 * @date
23 * @brief Histogram producer for PHOS HLT
24 */
25
26// see header file for class documentation
27// or
28// refer to README to build package
29// or
30// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
31
9f050726 32//#include "AliHLTPHOSBase.h"
33
34#include "Rtypes.h"
35#include "TClonesArray.h"
36#include "AliHLTPHOSConstants.h"
37
38using namespace PhosHLTConst;
87434909 39
40class TObjArray;
41class TH1F;
42class TH2F;
43
44
45/**
46 * @class AliHLTPHOSPhysicsHistogramProducer
47 *
48 * Class produces physics histograms for PHOS. It takes a TClonesArray
49 * of AliESDCalocluster as input and fills several histograms
50 *
51 * Histograms (1D):
52 * - Total number of clusters per event
53 * - Energy distribution of clusters
54 * - Total energy in event
55 * - Invariant mass of two clusters
56 * - Number of cells in clusters
57 * - Fraction of cells with energy deposit
58 *
59 * Histograms (2D):
60 * - Number of cells in cluster vs cluster energy
61 * - Number of clusters vs total energy
62 *
63 * @ingroup alihlt_phos
64 */
65
66
67
9f050726 68//class AliHLTPHOSPhysicsHistogramProducer : public AliHLTPHOSBase
69class AliHLTPHOSPhysicsHistogramProducer
87434909 70{
71 public:
72
73 /** Constructor */
74 AliHLTPHOSPhysicsHistogramProducer();
75
76 /** Destructor */
77 virtual ~AliHLTPHOSPhysicsHistogramProducer();
78
79 /** Copy constructor */
80 AliHLTPHOSPhysicsHistogramProducer(const AliHLTPHOSPhysicsHistogramProducer &) :
9f050726 81 // AliHLTPHOSBase(),
87434909 82 fHistNcls(0),
83 fHistEnergy(0),
84 fHistTotEnergy(0),
85 fHistTwoClusterInvMass(0),
86 fHistNcells(0),
87 fHistNcellsPercentage(0),
88 fHistCellsEnergy(0),
89 fHistNclusterTotE(0),
90 fHistNcellsSumCells(0),
91 fHistArrayPtr(0)
92 {
93 // Copy constructor not implemented
94 }
95
96 /** Assignment operator */
97 AliHLTPHOSPhysicsHistogramProducer & operator= (const AliHLTPHOSPhysicsHistogramProducer)
98 {
99 // assignment
100 return *this;
101 }
102
103 /** Analyse the clusters in the event */
104 Int_t AnalyseClusters(TClonesArray* clusters);
105
106 /** Get a pointer to the TObjArray of histograms */
107 TObjArray *GetHistograms();
108
109 private:
110
111 /** Histogram of number of clusters */
112 TH1F *fHistNcls; //!transient
113
114 /** Histogram of the cluster energies */
115 TH1F *fHistEnergy; //!transient
116
117 /** Histogram of the total energy in PHOS */
118 TH1F *fHistTotEnergy; //!transient
119
120 /** Histogram of the 2 cluster invariant mass */
121 TH1F *fHistTwoClusterInvMass; //!transient
122
123 /** Histogram of the number of cells with energy */
124 TH1F *fHistNcells; //!transient
125
126 /** Histogram of the fraction of cells with energy deposit */
127 TH1F *fHistNcellsPercentage; //!transient
128
129 /** Histogram of number of cells in cluster vs cluster energy */
130 TH2F *fHistCellsEnergy; //!transient
131
132 /** Histogram of number of clusters vs total energy */
133 TH2F *fHistNclusterTotE; //!transient
134
135 /** Histogram of number of cells in the cluster vs total number of cells in PHOS */
136 TH2F *fHistNcellsSumCells; //!transient
137
138 /** Pointer to the array of histograms */
139 TObjArray *fHistArrayPtr; //!transient
140
141 ClassDef(AliHLTPHOSPhysicsHistogramProducer, 0);
142
143};
144
145#endif