]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/PHOS/AliHLTPHOSPhysicsHistogramProducer.h
- fixes due to new PHOS mapping
[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
32#include "AliHLTPHOSBase.h"
33
34class TObjArray;
35class TH1F;
36class TH2F;
37
38
39/**
40 * @class AliHLTPHOSPhysicsHistogramProducer
41 *
42 * Class produces physics histograms for PHOS. It takes a TClonesArray
43 * of AliESDCalocluster as input and fills several histograms
44 *
45 * Histograms (1D):
46 * - Total number of clusters per event
47 * - Energy distribution of clusters
48 * - Total energy in event
49 * - Invariant mass of two clusters
50 * - Number of cells in clusters
51 * - Fraction of cells with energy deposit
52 *
53 * Histograms (2D):
54 * - Number of cells in cluster vs cluster energy
55 * - Number of clusters vs total energy
56 *
57 * @ingroup alihlt_phos
58 */
59
60
61
62class AliHLTPHOSPhysicsHistogramProducer : public AliHLTPHOSBase
63{
64 public:
65
66 /** Constructor */
67 AliHLTPHOSPhysicsHistogramProducer();
68
69 /** Destructor */
70 virtual ~AliHLTPHOSPhysicsHistogramProducer();
71
72 /** Copy constructor */
73 AliHLTPHOSPhysicsHistogramProducer(const AliHLTPHOSPhysicsHistogramProducer &) :
74 AliHLTPHOSBase(),
75 fHistNcls(0),
76 fHistEnergy(0),
77 fHistTotEnergy(0),
78 fHistTwoClusterInvMass(0),
79 fHistNcells(0),
80 fHistNcellsPercentage(0),
81 fHistCellsEnergy(0),
82 fHistNclusterTotE(0),
83 fHistNcellsSumCells(0),
84 fHistArrayPtr(0)
85 {
86 // Copy constructor not implemented
87 }
88
89 /** Assignment operator */
90 AliHLTPHOSPhysicsHistogramProducer & operator= (const AliHLTPHOSPhysicsHistogramProducer)
91 {
92 // assignment
93 return *this;
94 }
95
96 /** Analyse the clusters in the event */
97 Int_t AnalyseClusters(TClonesArray* clusters);
98
99 /** Get a pointer to the TObjArray of histograms */
100 TObjArray *GetHistograms();
101
102 private:
103
104 /** Histogram of number of clusters */
105 TH1F *fHistNcls; //!transient
106
107 /** Histogram of the cluster energies */
108 TH1F *fHistEnergy; //!transient
109
110 /** Histogram of the total energy in PHOS */
111 TH1F *fHistTotEnergy; //!transient
112
113 /** Histogram of the 2 cluster invariant mass */
114 TH1F *fHistTwoClusterInvMass; //!transient
115
116 /** Histogram of the number of cells with energy */
117 TH1F *fHistNcells; //!transient
118
119 /** Histogram of the fraction of cells with energy deposit */
120 TH1F *fHistNcellsPercentage; //!transient
121
122 /** Histogram of number of cells in cluster vs cluster energy */
123 TH2F *fHistCellsEnergy; //!transient
124
125 /** Histogram of number of clusters vs total energy */
126 TH2F *fHistNclusterTotE; //!transient
127
128 /** Histogram of number of cells in the cluster vs total number of cells in PHOS */
129 TH2F *fHistNcellsSumCells; //!transient
130
131 /** Pointer to the array of histograms */
132 TObjArray *fHistArrayPtr; //!transient
133
134 ClassDef(AliHLTPHOSPhysicsHistogramProducer, 0);
135
136};
137
138#endif