]>
Commit | Line | Data |
---|---|---|
d28dcc0d | 1 | #ifndef ALIFMD_H |
2 | #define ALIFMD_H | |
3da30618 | 3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
fe4da5cc | 6 | //////////////////////////////////////////////// |
d28dcc0d | 7 | // Manager and hits classes for set:Si-FMD // |
fe4da5cc | 8 | //////////////////////////////////////////////// |
9 | ||
10 | #include "AliDetector.h" | |
b9a2d5e4 | 11 | #include "TString.h" |
4110645f | 12 | #include "TBranch.h" |
13 | //#include "AliFMDMerger.h" | |
37c55dc0 | 14 | #include "AliFMDSDigitizer.h" |
b9a2d5e4 | 15 | class TFile; |
16 | class TTree; | |
4110645f | 17 | // class AliFMDMerger; |
b9a2d5e4 | 18 | class AliFMD : public AliDetector { |
fe4da5cc | 19 | |
20 | public: | |
21 | AliFMD(); | |
22 | AliFMD(const char *name, const char *title); | |
d28dcc0d | 23 | virtual ~AliFMD(); |
fe4da5cc | 24 | virtual void AddHit(Int_t, Int_t*, Float_t*); |
b9a2d5e4 | 25 | virtual void AddDigit(Int_t*); |
37c55dc0 | 26 | virtual void AddSDigit(Int_t*); |
fe4da5cc | 27 | virtual void BuildGeometry(); |
b9a2d5e4 | 28 | virtual void CreateGeometry() {} |
d28dcc0d | 29 | virtual void CreateMaterials()=0; |
30 | virtual Int_t DistanceToPrimitive(Int_t px, Int_t py); | |
fe4da5cc | 31 | virtual Int_t IsVersion() const =0; |
32 | virtual void Init(); | |
9e1a0ddb | 33 | virtual void MakeBranch(Option_t *opt=" ",const char *file=0); |
4110645f | 34 | virtual void MakeBranchInTreeD(TTree *treeD, const char *file=0); |
b9a2d5e4 | 35 | virtual void SetTreeAddress(); |
36 | virtual void ResetHits(); | |
37 | virtual void ResetDigits(); | |
d28dcc0d | 38 | virtual void DrawDetector()=0; |
b9a2d5e4 | 39 | virtual void StepManager() {} |
4110645f | 40 | // Granularity |
41 | virtual void SetRingsSi1(Int_t ringsSi1=256); | |
42 | virtual void SetSectorsSi1(Int_t sectorsSi1=20); | |
43 | virtual void SetRingsSi2(Int_t ringsSi2=128); | |
44 | virtual void SetSectorsSi2(Int_t sectorsSi2=40); | |
37c55dc0 | 45 | |
4110645f | 46 | void SetEventNumber(Int_t i) {fEvNrSig = i;} |
d28dcc0d | 47 | void Eta2Radius(Float_t, Float_t, Float_t*); |
b9a2d5e4 | 48 | void Hits2SDigits();// |
dc8af42e | 49 | void Digits2Reco(); |
4110645f | 50 | virtual void SetHitsAddressBranch(TBranch *b){b->SetAddress(&fHits);} |
51 | ||
b9a2d5e4 | 52 | // Digitisation |
53 | TClonesArray *SDigits() const {return fSDigits;} | |
dc8af42e | 54 | TClonesArray *ReconParticles() const {return fReconParticles;} |
dc8af42e | 55 | |
d28dcc0d | 56 | protected: |
57 | Int_t fIdSens1; //Si sensetive volume | |
37c55dc0 | 58 | Int_t fIdSens2; //Si sensetive volume |
59 | Int_t fIdSens3; //Si sensetive volume | |
60 | Int_t fIdSens4; //Si sensetive volume | |
61 | Int_t fIdSens5; //Si sensetive volume | |
62 | //Granularity | |
63 | Int_t fRingsSi1; // Number of rings | |
64 | Int_t fSectorsSi1; // Number of sectors | |
65 | Int_t fRingsSi2; // Number of rings | |
66 | Int_t fSectorsSi2; // Number of sectors | |
67 | ||
4110645f | 68 | Int_t fNevents ; // Number of events to digitize |
69 | Int_t fEvNrSig; // signal event number | |
37c55dc0 | 70 | |
4110645f | 71 | // AliFMDMerger *fMerger; // ! pointer to merger |
b9a2d5e4 | 72 | TClonesArray *fSDigits ; // List of summable digits |
dc8af42e | 73 | TClonesArray *fReconParticles; |
74 | ||
716e1827 | 75 | ClassDef(AliFMD,4) //Class for the FMD detector |
fe4da5cc | 76 | }; |
b9a2d5e4 | 77 | #endif // AliFMD_H |
dc8af42e | 78 | |
79 |