]>
Commit | Line | Data |
---|---|---|
d15a28e7 | 1 | #ifndef ALIPHOSDIGIT_H |
2 | #define ALIPHOSDIGIT_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6ad0bfa0 | 6 | /* $Id$ */ |
7 | ||
702ab87e | 8 | /* History of cvs commits: |
9 | * | |
10 | * $Log$ | |
3663622c | 11 | * Revision 1.34 2006/04/22 10:30:17 hristov |
12 | * Add fEnergy to AliPHOSDigit and operate with EMC amplitude in energy units (Yu.Kharlov) | |
13 | * | |
27a73a5d | 14 | * Revision 1.33 2005/05/28 14:19:04 schutz |
15 | * Compilation warnings fixed by T.P. | |
16 | * | |
702ab87e | 17 | */ |
18 | ||
b2a60966 | 19 | //_________________________________________________________________________ |
20 | // PHOS digit: Id | |
21 | // energy | |
22 | // 3 identifiers for the primary particle(s) at the origine of the digit | |
23 | // The digits are made in FinishEvent() by summing all the hits in a single PHOS crystal or PPSD gas cell | |
184569b0 | 24 | // It would be nice to replace the 3 identifiers by an array, but, because digits are kept in a TClonesArray, |
b2a60966 | 25 | // it is not possible to stream such an array... (beyond my understqnding!) |
26 | // | |
27 | //*-- Author: Laurent Aphecetche & Yves Schutz (SUBATECH) | |
d15a28e7 | 28 | |
29 | // --- ROOT system --- | |
30 | ||
e957fea8 | 31 | //#include "TObject.h" |
d15a28e7 | 32 | |
33 | // --- Standard library --- | |
34 | ||
35 | // --- AliRoot header files --- | |
36 | ||
37 | #include "AliDigitNew.h" | |
38 | ||
39 | class AliPHOSDigit : public AliDigitNew { | |
6c370def | 40 | |
5cf7bbad | 41 | friend ostream& operator << ( ostream& , const AliPHOSDigit&) ; |
6c370def | 42 | |
88714635 | 43 | public: |
44 | ||
cf239357 | 45 | AliPHOSDigit() ; |
9688c1dd | 46 | AliPHOSDigit(Int_t primary, Int_t id, Int_t DigEnergy, Float_t Time, Int_t index = -1) ; |
27a73a5d | 47 | AliPHOSDigit(Int_t primary, Int_t id, Float_t energy , Float_t Time, Int_t index = -1) ; |
cf239357 | 48 | AliPHOSDigit(const AliPHOSDigit & digit) ; |
2e5c3041 | 49 | virtual ~AliPHOSDigit() ; |
d15a28e7 | 50 | |
b27d82c8 | 51 | Bool_t operator==(const AliPHOSDigit &rValue) const; |
3663622c | 52 | |
53 | AliPHOSDigit& operator += (AliPHOSDigit const &rValue) ; | |
54 | AliPHOSDigit& operator *= (Float_t factor) ; | |
55 | ||
56 | public: | |
57 | ||
58 | AliPHOSDigit& operator=(const AliPHOSDigit) { | |
59 | Fatal("operator = ", "not implemented") ; return *this ; } | |
037cc66d | 60 | Int_t Compare(const TObject * obj) const ; |
27a73a5d | 61 | Int_t GetNprimary() const { return fNprimary ; } |
26d4b141 | 62 | Int_t GetPrimary(Int_t index) const ; |
27a73a5d | 63 | Float_t GetEnergy(void) const {return fEnergy ;} |
64 | Float_t GetTime(void) const {return fTime ;} | |
65 | Float_t GetTimeR(void) const {return fTimeR ;} | |
66 | Bool_t IsSortable() const { return kTRUE ; } | |
702ab87e | 67 | void Print(const Option_t * = "") const; |
27a73a5d | 68 | void SetAmp(Int_t Amp) {fAmp = Amp ;} |
69 | void SetEnergy(Float_t E) {fEnergy= E ;} | |
70 | void SetTime(Float_t time) {fTime = time ;} | |
04f0bda3 | 71 | void SetTimeR(Float_t time) {fTimeR = time ;} |
88cb7938 | 72 | void ShiftPrimary(Int_t shift); // shift to separate different TreeK in merging |
26d4b141 | 73 | |
88714635 | 74 | private: |
ff4c968a | 75 | |
27a73a5d | 76 | Int_t fNprimary ; // Number of primaries |
adc232ca | 77 | Int_t * fPrimary ; //[fNprimary] Array of primaries |
737c795f | 78 | Float_t fEnergy ; // Deposited energy in ADC counts |
88cb7938 | 79 | Float_t fTime ; // Calculcated time |
04f0bda3 | 80 | Float_t fTimeR ; // Earliest time: to be used by Digits2Raw |
83974468 | 81 | |
737c795f | 82 | ClassDef(AliPHOSDigit,5) // Digit in PHOS |
d15a28e7 | 83 | |
84 | } ; | |
85 | ||
86 | #endif // ALIPHOSDIGIT_H |