]>
Commit | Line | Data |
---|---|---|
61e0abb5 | 1 | #ifndef ALIEMCALDIGIT_H |
2 | #define ALIEMCALDIGIT_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id$ */ | |
7 | ||
8 | //_________________________________________________________________________ | |
ffa6d63b | 9 | // EMCAL digit: |
10 | // | |
11 | // A Digit is the sum of energy in a Tower (Hit sum) and stores information, about primaries | |
fdebddeb | 12 | // and entering particle contributing to a Digit |
61e0abb5 | 13 | // |
ffa6d63b | 14 | //*-- Author: Sahal Yacoob (LBL) |
15 | // based on : AliPHOSDigit | |
16 | //___________________________________________________________________________ | |
61e0abb5 | 17 | |
18 | // --- ROOT system --- | |
19 | ||
20 | #include "TObject.h" | |
21 | ||
22 | // --- Standard library --- | |
23 | ||
24 | // --- AliRoot header files --- | |
61e0abb5 | 25 | #include "AliDigitNew.h" |
26 | ||
27 | class AliEMCALDigit : public AliDigitNew { | |
28 | ||
29 | friend ostream& operator << ( ostream& , const AliEMCALDigit&) ; | |
30 | ||
31 | public: | |
32 | ||
33 | AliEMCALDigit() ; | |
af5bdd85 | 34 | AliEMCALDigit(Int_t primary, Int_t iparent, Int_t id, Int_t DigEnergy, Float_t Time, Int_t index = -1, Float_t dE = 0) ; |
61e0abb5 | 35 | AliEMCALDigit(const AliEMCALDigit & digit) ; |
36 | virtual ~AliEMCALDigit() ; | |
37 | ||
38 | Bool_t operator==(const AliEMCALDigit &rValue) const; | |
0a4cb131 | 39 | AliEMCALDigit operator+(const AliEMCALDigit &rValue) ; |
40 | AliEMCALDigit operator*(Float_t factor) ; | |
14ce0a6e | 41 | const AliEMCALDigit& operator = (const AliEMCALDigit &) {return *this;} |
42 | ||
61e0abb5 | 43 | Int_t Compare(const TObject * obj) const ; |
88cb7938 | 44 | Float_t GetEta() const ; |
45 | Int_t GetNprimary() const { return fNprimary ; } | |
61e0abb5 | 46 | Int_t GetPrimary(Int_t index) const ; |
af5bdd85 | 47 | Float_t GetDEPrimary(Int_t index) const ; |
61e0abb5 | 48 | Int_t GetNiparent() const {return fNiparent;} |
49 | Int_t GetIparent(Int_t index) const ; | |
af5bdd85 | 50 | Float_t GetDEParent(Int_t index) const ; |
88cb7938 | 51 | Float_t GetPhi() const; |
814ad4bf | 52 | Float_t GetTime(void) const {return fTime ;} |
04f0bda3 | 53 | Float_t GetTimeR(void) const {return fTimeR ;} |
88cb7938 | 54 | Bool_t IsSortable() const { return kTRUE ; } |
55 | void SetAmp(Int_t amp) { fAmp= amp ; } | |
56 | void SetId(Int_t id) {fId = id ;} | |
57 | void SetTime(Float_t time) {fTime = time ;} | |
04f0bda3 | 58 | void SetTimeR(Float_t time) {fTimeR = time ;} |
fdebddeb | 59 | void ShiftPrimary(Int_t shift); // shift to separate different TreeK in merging |
814ad4bf | 60 | |
88d764f0 | 61 | private: |
88cb7938 | 62 | |
61e0abb5 | 63 | Int_t fNprimary ; // Number of primaries |
88d764f0 | 64 | Int_t fNMaxPrimary ; // Max Number of primaries |
65 | Int_t *fPrimary ; //[fNMaxPrimary] Array of primaries | |
af5bdd85 | 66 | Float_t *fDEPrimary; //[fNMaxPrimary] Array of primary energy contributions |
61e0abb5 | 67 | |
68 | Int_t fNiparent ; // Number of initial parents | |
88d764f0 | 69 | Int_t fNMaxiparent ; // Max Number of parents |
70 | Int_t *fIparent ; //[fNMaxiparent] Array of parents | |
af5bdd85 | 71 | Float_t *fDEParent; //[fNMaxiparent] Array of parent energy contributions |
0c22a365 | 72 | Int_t fMaxIter ; // Number to Increment Maxiparent, and MaxPrimary if default is not sufficient |
814ad4bf | 73 | Float_t fTime ; // Calculated time |
04f0bda3 | 74 | Float_t fTimeR ; // Earliest time: to be used by Digits2Raw |
75 | ||
af5bdd85 | 76 | ClassDef(AliEMCALDigit,3) // Digit in EMCAL |
61e0abb5 | 77 | |
78 | } ; | |
79 | ||
80 | #endif // ALIEMCALDIGIT_H |