]>
Commit | Line | Data |
---|---|---|
fdf6f4e9 | 1 | /**************************************************************************\r |
2 | * This file is property of and copyright by the ALICE HLT Project *\r | |
3 | * All rights reserved. *\r | |
4 | * INFN Laboratori Nazionali di Frascati *\r | |
5 | * Primary Authors: Federico Ronchetti *\r | |
6 | * *\r | |
7 | * Permission to use, copy, modify and distribute this software and its *\r | |
8 | * documentation strictly for non-commercial purposes is hereby granted *\r | |
9 | * without fee, provided that the above copyright notice appears in all *\r | |
10 | * copies and that both the copyright notice and this permission notice *\r | |
11 | * appear in the supporting documentation. The authors make no claims *\r | |
12 | * about the suitability of this software for any purpose. It is *\r | |
13 | * provided "as is" without express or implied warranty. *\r | |
14 | **************************************************************************/\r | |
15 | #ifndef ALIHLTEMCALRAWHISTOMAKER_H\r | |
16 | #define ALIHLTEMCALRAWHISTOMAKER_H\r | |
17 | \r | |
18 | /**\r | |
19 | * Class makes histograms from information from raw data\r | |
20 | *\r | |
21 | * @file AliHLTEMCALRawHistoMaker.h\r | |
22 | * @author Federico Ronchetti\r | |
23 | * @date\r | |
24 | * @brief Histo maker for EMCAL HLT\r | |
25 | */\r | |
26 | \r | |
27 | \r | |
28 | #include "AliHLTCaloConstantsHandler.h"\r | |
29 | #include "AliHLTCaloDigitDataStruct.h"\r | |
30 | #include "AliHLTCaloChannelDataStruct.h"\r | |
31 | #include "AliHLTDataTypes.h" | |
32 | #include "AliAltroRawStreamV3.h"\r | |
33 | #include "AliRawReaderMemory.h"\r | |
34 | #include "AliAltroRawStreamV3.h"\r | |
35 | #include "AliCaloRawStreamV3.h"\r | |
36 | #include "AliEMCALTriggerSTURawStream.h"\r | |
37 | \r | |
38 | // include root stuff\r | |
39 | #include "TFile.h"\r | |
40 | #include "TProfile2D.h"\r | |
41 | #include "TH1F.h"\r | |
42 | #include "TH2F.h"\r | |
4479217f | 43 | #include "TH2I.h"\r |
fdf6f4e9 | 44 | #include "TObjArray.h"\r |
45 | #include "TString.h"\r | |
46 | \r | |
47 | \r | |
4479217f | 48 | \r |
fdf6f4e9 | 49 | class AliHLTEMCALConstants;\r |
50 | class AliHLTCaloSharedMemoryInterfacev2;\r | |
51 | class AliHLTCaloChannelDataHeaderStruct;\r | |
52 | class AliHLTEMCALMapper;\r | |
53 | class AliRawReaderMemory;\r | |
54 | class AliAltroRawStreamV3;\r | |
55 | class AliEMCALTriggerSTURawStream;\r | |
56 | class AliCaloRawStreamV3;\r | |
57 | class AliCaloRawAnalyzer;\r | |
58 | class TString; | |
59 | class TH2F;\r | |
4479217f | 60 | class TH2I;\r |
fdf6f4e9 | 61 | \r |
62 | \r | |
63 | class AliHLTEMCALRawHistoMaker : AliHLTCaloConstantsHandler\r | |
64 | {\r | |
65 | \r | |
66 | public:\r | |
67 | /** Constructor */\r | |
68 | AliHLTEMCALRawHistoMaker();\r | |
69 | \r | |
70 | /** Destructor */\r | |
71 | virtual ~AliHLTEMCALRawHistoMaker();\r | |
72 | \r | |
73 | /** Assignment */\r | |
74 | AliHLTEMCALRawHistoMaker & operator = (const AliHLTEMCALRawHistoMaker)\r | |
75 | {\r | |
76 | return *this; \r | |
77 | }\r | |
78 | \r | |
79 | /**\r | |
80 | * Make the digits for one event.\r | |
81 | * @param channelDataHeader is the data header from the AliHLTCaloRawAnalyzer\r | |
82 | * @return the number of digits found\r | |
83 | */\r | |
84 | \r | |
85 | Int_t MakeHisto(AliHLTCaloChannelDataHeaderStruct* channelDataHeader,\r | |
86 | const AliHLTComponentBlockData* iter, AliHLTUInt8_t* outputPtr,\r | |
fb43b5cd | 87 | const AliHLTUInt32_t size, int beverbose);\r |
fdf6f4e9 | 88 | \r |
89 | TObjArray * GetHistograms();\r | |
90 | \r | |
91 | private:\r | |
92 | \r | |
93 | TProfile2D **fChannelEMap;\r | |
94 | TProfile2D **fChannelTMap;\r | |
95 | TH2F **fChannelETMap;\r | |
4479217f | 96 | \r |
97 | TH2I* h2DTRU;\r | |
98 | TH2I* h2DSTU;\r | |
99 | \r | |
fdf6f4e9 | 100 | TObjArray *hList;\r |
101 | \r | |
102 | /** Pointer to shared memory interface */\r | |
103 | AliHLTCaloSharedMemoryInterfacev2* fShmPtr; //! transient\r | |
104 | \r | |
105 | /** Pointer to the raw data reader which reads from memory */\r | |
106 | AliRawReaderMemory* fRawCounterMemoryPtr; //!transient\r | |
107 | \r | |
108 | /** Pointer to the raw stream */\r | |
109 | AliAltroRawStreamV3* fAltroRawStreamPtr; //!transient\r | |
110 | \r | |
111 | /** Pointer to the calo raw stream */\r | |
112 | AliCaloRawStreamV3* fRawStreamPtr; //!transient\r | |
113 | \r | |
114 | /** Pointer to the STU raw stream */\r | |
115 | AliEMCALTriggerSTURawStream* fSTURawStreamPtr;\r | |
116 | \r | |
117 | /** Mapper */\r | |
118 | AliHLTEMCALMapper* fMapperPtr; //COMMENT\r | |
119 | \r | |
120 | \r | |
121 | /** Pointer to an analyzer object used for raw data anlysis */\r | |
122 | AliCaloRawAnalyzer *fAnalyzerPtr; //COMMENT\r | |
123 | \r | |
124 | /** Constants class */\r | |
125 | AliHLTEMCALConstants* fEMCALConstants;\r | |
126 | \r | |
127 | AliHLTEMCALRawHistoMaker(const AliHLTEMCALRawHistoMaker &);\r | |
128 | //AliHLTEMCALRawHistoMaker & operator = (const AliHLTEMCALRawHistoMaker &);\r | |
129 | \r | |
130 | ClassDef(AliHLTEMCALRawHistoMaker, 0); \r | |
131 | \r | |
132 | };\r | |
133 | \r | |
134 | \r | |
135 | #endif\r | |
136 | \r |