Add a file that was lost during transition from Alieve namespace.
[u/mrichter/AliRoot.git] / EVE / Alieve / AliEveITSDigitsInfo.h
CommitLineData
d810d0de 1// $Id$
2// Main authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
3
4/**************************************************************************
5 * Copyright(c) 1998-2008, ALICE Experiment at CERN, all rights reserved. *
6 * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for *
7 * full copyright notice. *
8 **************************************************************************/
5a5a1232 9
10#ifndef ALIEVE_ITSDigitsInfo_H
11#define ALIEVE_ITSDigitsInfo_H
12
84aff7a4 13#include <TEveUtil.h>
5a5a1232 14
15#include <map>
3d598e88 16#include <vector>
5a5a1232 17
18#include <TObject.h>
19#include <TClonesArray.h>
20#include <TTree.h>
21
22#include <AliITS.h>
23#include <AliITSgeom.h>
24#include <AliITSsegmentationSPD.h>
25#include <AliITSsegmentationSDD.h>
26#include <AliITSsegmentationSSD.h>
27
b3bc5327 28class AliRawReader;
5a5a1232 29
3d598e88 30/**************************************************************************/
d810d0de 31// AliEveITSModuleSelection
3d598e88 32/**************************************************************************/
d810d0de 33class AliEveITSModuleSelection
3d598e88 34{
35public:
36 Int_t fType;
37 Int_t fLayer;
38 Float_t fMinPhi;
39 Float_t fMaxPhi;
40 Float_t fMinTheta;
41 Float_t fMaxTheta;
42
d810d0de 43 AliEveITSModuleSelection();
44 virtual ~AliEveITSModuleSelection() {}
3d598e88 45
d810d0de 46 ClassDef(AliEveITSModuleSelection, 1);
3d598e88 47};
48
49/**************************************************************************/
d810d0de 50// AliEveITSDigitsInfo
3d598e88 51/**************************************************************************/
d810d0de 52class AliEveITSDigitsInfo : public TObject, public TEveRefCnt
5a5a1232 53{
d810d0de 54 AliEveITSDigitsInfo(const AliEveITSDigitsInfo&); // Not implemented
55 AliEveITSDigitsInfo& operator=(const AliEveITSDigitsInfo&); // Not implemented
265ecb21 56
5a5a1232 57private:
5a5a1232 58 Float_t fSPDZCoord[192];
59
b3bc5327 60 void InitInternals();
61
5a5a1232 62protected:
5a5a1232 63 map<Int_t, TClonesArray*> fSPDmap;
64 map<Int_t, TClonesArray*> fSDDmap;
65 map<Int_t, TClonesArray*> fSSDmap;
66
67 void SetITSSegmentation();
68
69public:
70 TTree* fTree;
d4b6a94c 71
5a5a1232 72 AliITSgeom* fGeom;
73 AliITSsegmentationSPD* fSegSPD;
74 AliITSsegmentationSDD* fSegSDD;
75 AliITSsegmentationSSD* fSegSSD;
76
d4b6a94c 77 Int_t fSPDMinVal;
78 Int_t fSSDMinVal;
79 Int_t fSDDMinVal;
80 Int_t fSPDMaxVal;
81 Int_t fSSDMaxVal;
82 Int_t fSDDMaxVal;
83
32e219c2 84 Int_t fSPDHighLim;
85 Int_t fSDDHighLim;
86 Int_t fSSDHighLim;
d4b6a94c 87
88 Int_t fSPDScaleX[5];
89 Int_t fSPDScaleZ[5];
90 Int_t fSDDScaleX[5];
91 Int_t fSDDScaleZ[5];
92 Int_t fSSDScale [5];
93
d810d0de 94 AliEveITSDigitsInfo();
95 virtual ~AliEveITSDigitsInfo();
5a5a1232 96
97 void SetTree(TTree* tree);
540e156e 98 void ReadRaw(AliRawReader* raw, Int_t mode);
b3bc5327 99
5a5a1232 100 TClonesArray* GetDigits(Int_t moduleID, Int_t detector);
101
102 void GetSPDLocalZ(Int_t j, Float_t& z);
103
d810d0de 104 void GetModuleIDs(AliEveITSModuleSelection* sel, std::vector<UInt_t>& ids);
3d598e88 105
5a5a1232 106 virtual void Print(Option_t* opt="") const;
107
d810d0de 108 ClassDef(AliEveITSDigitsInfo, 1);
109}; // endclass AliEveITSDigitsInfo
5a5a1232 110
5a5a1232 111#endif