]> git.uio.no Git - u/mrichter/AliRoot.git/blame - EVE/EveDet/AliEveEMCALSModuleData.h
update extra library list needed for class
[u/mrichter/AliRoot.git] / EVE / EveDet / AliEveEMCALSModuleData.h
CommitLineData
c3e34498 1//*************************************************************************
2// EMCAL event display
3// Store the data related to each Super Module
4//
5// Author: Magali Estienne (magali.estienne@cern.ch)
6// June 30 2008
7//*************************************************************************
8
9#ifndef AliEveEMCALSModuleData_H
10#define AliEveEMCALSModuleData_H
11
12#include <vector>
13
14#include <TObject.h>
15#include <TClonesArray.h>
16#include <TGeoNode.h>
17#include <TGeoMatrix.h>
18#include <TEvePointSet.h>
19
20class AliEMCALGeometry;
21
22class AliEveEMCALSModuleData : public TObject
23{
24public:
25 AliEveEMCALSModuleData(Int_t chamber,AliEMCALGeometry* geom,TGeoNode* node, TGeoHMatrix* m);
26 virtual ~AliEveEMCALSModuleData();
27
a312477b 28 void DropData();
29 void Init(Int_t sm);
30 void RegisterDigit(Int_t AbsId, Int_t isupMod, Double_t iamp, Double_t ix, Double_t iy, Double_t iz);
31 void RegisterCluster(Int_t isupMod, Double_t iamp, Double_t ix, Double_t iy, Double_t iz);
32 void RegisterHit(Int_t AbsId, Int_t isupMod, Double_t iamp, Double_t ix, Double_t iy, Double_t iz);
33 Int_t GetNDigits() const { return fNDigits; };
34 Int_t GetNClusters() const { return fNClusters; };
35 Int_t GetNHits() const { return fNHits; };
36 Int_t GetSmId() const { return fSmId; };
37 Int_t GetNsm() const {return fNsm;};
38 Int_t GetNsmf() const {return fNsmfull;};
39 Int_t GetNsmh() const {return fNsmhalf;};
97425cab 40 std::vector< std::vector<Double_t> > GetDigitBuffer() { return fDigitArray; };
41 std::vector< std::vector<Double_t> > GetClusterBuffer() { return fClusterArray; };
42 std::vector< std::vector<Float_t> > GetHitBuffer() { return fHitArray; };
c3e34498 43
a312477b 44 void GetSModuleBigBox(Float_t& bbox0, Float_t& bbox1, Float_t& bbox2)
c3e34498 45 { bbox0 = fSModuleBigBox0; bbox1 = fSModuleBigBox1; bbox2 = fSModuleBigBox2;};
a312477b 46 void GetSModuleSmallBox(Float_t& bbox0, Float_t& bbox1, Float_t& bbox2)
c3e34498 47 { bbox0 = fSModuleSmallBox0; bbox1 = fSModuleSmallBox1; bbox2 = fSModuleSmallBox2;};
a312477b 48 void GetSModuleCenter(Float_t& bboxCenter0, Float_t& bboxCenter1, Float_t& bboxCenter2)
c3e34498 49 { bboxCenter0 = fSModuleCenter0; bboxCenter1 = fSModuleCenter1; bboxCenter2 = fSModuleCenter2;};
a312477b 50 Float_t GetPhiTileSize() {return fPhiTileSize;};
51 Float_t GetEtaTileSize() {return fEtaTileSize;};
c3e34498 52 TGeoMatrix* GetSModuleMatrix() {return fMatrix;};
53
a312477b 54 protected:
55 AliEMCALGeometry* fGeom; // Data member to set/call EMCAL geometry
56 TGeoNode* fNode; // Node for bbox definition
57 Int_t fSmId; // number of the chamber, 0 to 13
58 Int_t fNsm; // Total number of super modules
59 Int_t fNsmfull; // Number of full super modules
60 Int_t fNsmhalf; // Number of half super modules
61 Int_t fNDigits; // number of found digits
62 Int_t fNClusters; // number of found rec points
63 Int_t fNHits; // number of simulation hits
64
65 Float_t fPhiTileSize; // Typical phi size of a QuadSet (digit)
66 Float_t fEtaTileSize; // Typical eta size of a QuadSet (digit)
67
97425cab 68 std::vector< std::vector<Float_t> > fHitArray; //|| Hit coordinates, etc.
69 std::vector< std::vector<Double_t> > fDigitArray; //|| Digit coordinates, etc.
70 std::vector< std::vector<Double_t> > fClusterArray; //|| Rec point coordinates, etc.
a312477b 71
72 static Float_t fSModuleBigBox0; // SM envelope box
73 static Float_t fSModuleBigBox1; // SM envelope box
74 static Float_t fSModuleBigBox2; // SM envelope box
75 static Float_t fSModuleSmallBox0; // SM envelope box
76 static Float_t fSModuleSmallBox1; // SM envelope box
77 static Float_t fSModuleSmallBox2; // SM envelope box
78 static Float_t fSModuleCenter0; // SM envelope box
79 static Float_t fSModuleCenter1; // SM envelope box
80 static Float_t fSModuleCenter2; // SM envelope box
81
82 TGeoMatrix* fMatrix; // Matrix for local to global transformation
83 TGeoHMatrix* fHMatrix; // Matrix for local to global transformation
84
85 private:
86 AliEveEMCALSModuleData(const AliEveEMCALSModuleData&);
c3e34498 87 AliEveEMCALSModuleData& operator=(const AliEveEMCALSModuleData&); // Not implemented
a312477b 88
c3e34498 89 ClassDef(AliEveEMCALSModuleData, 0); // class with data for one chamber
90};
91
92#endif