]>
Commit | Line | Data |
---|---|---|
7587f5a5 | 1 | #ifndef ALIPHOSV1_H |
2 | #define ALIPHOSV1_H | |
5f20d3fb | 3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
7587f5a5 | 4 | * See cxx source for full Copyright notice */ |
5f20d3fb | 5 | |
b2a60966 | 6 | //_________________________________________________________________________ |
5f20d3fb | 7 | // Implementation version v1 of PHOS Manager class |
8 | // Layout EMC + PPSD has name GPS2 | |
b2a60966 | 9 | // |
5f20d3fb | 10 | //*-- Author: Yves Schutz (SUBATECH) |
7587f5a5 | 11 | |
12 | // --- ROOT system --- | |
bea63bea | 13 | #include "TClonesArray.h" |
7587f5a5 | 14 | |
15 | // --- AliRoot header files --- | |
16 | #include "AliPHOSv0.h" | |
5f20d3fb | 17 | #include "AliPHOSGeometry.h" |
bea63bea | 18 | #include "AliPHOSReconstructioner.h" |
5f20d3fb | 19 | #include "AliPHOSTrackSegmentMaker.h" |
20 | #include "AliPHOSPID.h" | |
7587f5a5 | 21 | |
22 | class AliPHOSv1 : public AliPHOSv0 { | |
23 | ||
24 | public: | |
25 | ||
bea63bea | 26 | AliPHOSv1(void) ; |
7587f5a5 | 27 | AliPHOSv1(const char *name, const char *title="") ; |
5f20d3fb | 28 | AliPHOSv1(AliPHOSReconstructioner * Reconstructioner, const char *name, const char *title="") ; |
29 | AliPHOSv1(const AliPHOSv1 & phos) { | |
30 | // cpy ctor: no implementation yet | |
31 | // requested by the Coding Convention | |
32 | assert(0==1) ; | |
33 | } | |
bea63bea | 34 | virtual ~AliPHOSv1(void) ; |
35 | ||
36 | virtual void AddHit( Int_t shunt, Int_t primary, Int_t track, Int_t id, Float_t *hits ) ; | |
5f20d3fb | 37 | Int_t Digitize(Float_t Energy); |
0a6d52e3 | 38 | virtual void FinishEvent(void) ; |
e04976bd | 39 | virtual Int_t IsVersion(void) const { |
40 | // Gives the version number | |
41 | return 1 ; | |
42 | } | |
5f20d3fb | 43 | virtual void MakeBranch(Option_t* opt) ; |
44 | virtual AliPHOSRecPoint::RecPointsList * PpsdRecPoints() { | |
45 | // Getting list of PPSD RecPoints | |
46 | return fPpsdRecPoints ; | |
47 | } | |
48 | void Reconstruction(AliPHOSReconstructioner * Reconstructioner) ; | |
49 | void ResetClusters(){} ; | |
50 | virtual void ResetDigits() ; | |
51 | virtual void ResetReconstruction() ; // Reset reconstructed objects | |
0a6d52e3 | 52 | void SetReconstructioner(AliPHOSReconstructioner& Reconstructioner) { |
53 | // sets the reconstructionner object to be used | |
54 | fReconstructioner = &Reconstructioner ; | |
88bdfa12 | 55 | } |
5f20d3fb | 56 | void SetDigitThreshold(Float_t th) { fDigitThreshold = th ; } |
57 | virtual void SetTreeAddress(); | |
0a6d52e3 | 58 | virtual void StepManager(void) ; |
59 | virtual TString Version(void){ | |
60 | // returns the version number | |
61 | return TString("v1") ; | |
62 | } | |
5f20d3fb | 63 | |
64 | AliPHOSv1 & operator = (const AliPHOSv1 & rvalue) { | |
65 | // assignement operator requested by coding convention | |
66 | // but not needed | |
67 | assert(0==1) ; | |
68 | return *this ; | |
69 | } | |
bea63bea | 70 | |
71 | protected: | |
72 | ||
5f20d3fb | 73 | Float_t fDigitThreshold ; // Threshold for the digit registration |
74 | Int_t fNTmpHits ; //! Used internally for digitalization | |
75 | Float_t fPinElectronicNoise ; // Electronic Noise in the PIN | |
76 | AliPHOSRecPoint::RecPointsList * fPpsdRecPoints ; // The RecPoints (clusters) list in PPSD | |
77 | AliPHOSReconstructioner * fReconstructioner ; // Reconstrutioner of the PHOS event: Clusterization and subtracking procedures | |
78 | TClonesArray * fTmpHits ; //! Used internally for digitalization | |
79 | AliPHOSTrackSegmentMaker * fTrackSegmentMaker ; // Reconstructioner of the PHOS track segment: 2 x PPSD + 1 x EMC | |
80 | ||
81 | ClassDef(AliPHOSv1,1) // Implementation of PHOS manager class for layout EMC+PPSD | |
7587f5a5 | 82 | |
83 | }; | |
84 | ||
85 | #endif // AliPHOSV1_H |