From Ludovic: new files for visualization of V0s.
[u/mrichter/AliRoot.git] / EVE / Alieve / ITSDigitsInfo.h
CommitLineData
5a5a1232 1// $Header$
2
3#ifndef ALIEVE_ITSDigitsInfo_H
4#define ALIEVE_ITSDigitsInfo_H
5
6#include <Reve/VSD.h>
7
8#include <map>
9
10#include <TObject.h>
11#include <TClonesArray.h>
12#include <TTree.h>
13
14#include <AliITS.h>
15#include <AliITSgeom.h>
16#include <AliITSsegmentationSPD.h>
17#include <AliITSsegmentationSDD.h>
18#include <AliITSsegmentationSSD.h>
19
20static const int NSCALE = 5;
21
22namespace Alieve {
23
24class ITSDigitsInfo : public TObject
25{
265ecb21 26 ITSDigitsInfo(const ITSDigitsInfo&); // Not implemented
27 ITSDigitsInfo& operator=(const ITSDigitsInfo&); // Not implemented
28
5a5a1232 29private:
5a5a1232 30 Float_t fSPDZCoord[192];
31
32protected:
33 Int_t fRefCount;
34
35 map<Int_t, TClonesArray*> fSPDmap;
36 map<Int_t, TClonesArray*> fSDDmap;
37 map<Int_t, TClonesArray*> fSSDmap;
38
39 void SetITSSegmentation();
40
41public:
42 TTree* fTree;
43 AliITSgeom* fGeom;
44 AliITSsegmentationSPD* fSegSPD;
45 AliITSsegmentationSDD* fSegSDD;
46 AliITSsegmentationSSD* fSegSSD;
47
48 Int_t fSPDScaleX[NSCALE];
49 Int_t fSPDScaleZ[NSCALE];
50 Int_t fSDDScaleX[NSCALE];
51 Int_t fSDDScaleZ[NSCALE];
52 Int_t fSSDScale[NSCALE];
53
265ecb21 54 ITSDigitsInfo();
5a5a1232 55 virtual ~ITSDigitsInfo();
56
57 void SetTree(TTree* tree);
58
59 TClonesArray* GetDigits(Int_t moduleID, Int_t detector);
60
61 void GetSPDLocalZ(Int_t j, Float_t& z);
62
5a5a1232 63 void IncRefCount() { ++fRefCount; }
64 void DecRefCount() { --fRefCount; if(fRefCount <= 0) delete this; }
65
66 virtual void Print(Option_t* opt="") const;
67
68 ClassDef(ITSDigitsInfo, 1);
69}; // endclass ITSDigitsInfo
70
71}
72#endif