Line data Source code
1 : /**************************************************************************
2 : * This file is property of and copyright by the ALICE HLT Project *
3 : * All rights reserved. *
4 : * INFN Laboratori Nazionali di Frascati *
5 : * Primary Authors: Federico Ronchetti *
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 : #ifndef ALIHLTEMCALRAWHISTOMAKER_H
16 : #define ALIHLTEMCALRAWHISTOMAKER_H
17 :
18 : /**
19 : * Class makes histograms from information from raw data
20 : *
21 : * @file AliHLTEMCALRawHistoMaker.h
22 : * @author Federico Ronchetti
23 : * @date
24 : * @brief Histo maker for EMCAL HLT
25 : */
26 :
27 :
28 : #include "AliHLTCaloConstantsHandler.h"
29 :
30 : #include "AliHLTCaloClusterDataStruct.h"
31 : #include "AliHLTCaloChannelDataStruct.h"
32 : #include "AliHLTCaloClusterReader.h"
33 :
34 : #include "AliHLTDataTypes.h"
35 :
36 :
37 : // Includes for RAW data
38 :
39 : //#include "AliAltroRawStreamV3.h"
40 : //#include "AliRawReaderMemory.h"
41 : //#include "AliAltroRawStreamV3.h"
42 : //#include "AliCaloRawStreamV3.h"
43 : //#include "AliEMCALTriggerSTURawStream.h"
44 :
45 :
46 : // include root stuff
47 : #include "TFile.h"
48 : #include "TProfile2D.h"
49 : #include "TH1F.h"
50 : #include "TH2F.h"
51 : #include "TH2I.h"
52 : #include "TObjArray.h"
53 : #include "TString.h"
54 :
55 :
56 :
57 : class AliHLTEMCALConstants;
58 : class AliHLTEMCALMapper;
59 :
60 : class AliHLTCaloSharedMemoryInterfacev2;
61 :
62 : class AliHLTCaloChannelDataHeaderStruct;
63 : class AliHLTCaloClusterHeaderStruct;
64 :
65 : class AliHLTCaloClusterReader;
66 :
67 : //class AliHLTCaloRecPointHeaderStruct;
68 :
69 : //class AliRawReaderMemory;
70 : //class AliAltroRawStreamV3;
71 : //class AliEMCALTriggerSTURawStream;
72 : //class AliCaloRawStreamV3;
73 : //class AliCaloRawAnalyzer;
74 :
75 : class TString;
76 : class TH2F;
77 : class TH2I;
78 :
79 :
80 : class AliHLTEMCALRawHistoMaker : AliHLTCaloConstantsHandler
81 : {
82 :
83 : public:
84 : /** Constructor */
85 : AliHLTEMCALRawHistoMaker();
86 :
87 : /** Destructor */
88 : virtual ~AliHLTEMCALRawHistoMaker();
89 :
90 :
91 : /**
92 : * Make the digits for one event.
93 : * @param channelDataHeader is the data header from the AliHLTCaloRawAnalyzer
94 : * @return the number of digits found
95 : */
96 :
97 : Int_t MakeHisto(AliHLTCaloChannelDataHeaderStruct* channelDataHeader, AliHLTCaloClusterHeaderStruct *caloClusterHeaderPtr, int beverbose);
98 :
99 : TObjArray * GetHistograms();
100 :
101 : private:
102 :
103 : TProfile2D **fAmp;
104 : TProfile2D **fTime;
105 : TH2F **fAT;
106 :
107 : TH2F **fCellVsEne;
108 :
109 :
110 : TObjArray *hList;
111 :
112 : /** Pointer to shared memory interface */
113 : AliHLTCaloSharedMemoryInterfacev2* fShmPtr; //! transient
114 :
115 : /** Pointer to the raw data reader which reads from memory */
116 : // AliRawReaderMemory* fRawCounterMemoryPtr; //!transient
117 :
118 : /** Pointer to the raw stream */
119 : // AliAltroRawStreamV3* fAltroRawStreamPtr; //!transient
120 :
121 : /** Pointer to the calo raw stream */
122 : // AliCaloRawStreamV3* fRawStreamPtr; //!transient
123 :
124 : /** Pointer to the STU raw stream */
125 : // AliEMCALTriggerSTURawStream* fSTURawStreamPtr;
126 :
127 : /** Mapper */
128 : AliHLTEMCALMapper* fMapperPtr; //COMMENT
129 :
130 : /** Constants class */
131 : AliHLTEMCALConstants* fEMCALConstants;
132 :
133 : AliHLTCaloClusterReader* fClusterReaderPtr; // !transient The reader
134 :
135 : AliHLTEMCALRawHistoMaker(const AliHLTEMCALRawHistoMaker &);
136 : AliHLTEMCALRawHistoMaker & operator = (const AliHLTEMCALRawHistoMaker &);
137 :
138 6 : ClassDef(AliHLTEMCALRawHistoMaker, 0);
139 :
140 : };
141 :
142 :
143 : #endif
144 :
|