]>
Commit | Line | Data |
---|---|---|
451f5018 | 1 | #ifndef ALIITSUSDIGIT_H |
2 | #define ALIITSUSDIGIT_H | |
3 | /* Copyright(c) 2007-2009, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | #include <TObject.h> | |
7 | ||
8 | ||
9 | class AliITSUSDigit: public TObject | |
10 | { | |
11 | public: | |
12 | enum {kBuffSize=10}; | |
13 | // | |
14 | AliITSUSDigit(); | |
15 | AliITSUSDigit(Int_t track,Int_t hit,UInt_t module,UInt_t index,Double_t signal); | |
16 | AliITSUSDigit(UInt_t module,UInt_t index,Double_t noise); | |
17 | AliITSUSDigit(const AliITSUSDigit &source); | |
18 | AliITSUSDigit& operator=(const AliITSUSDigit &source); | |
19 | virtual ~AliITSUSDigit() {} | |
20 | Double_t GetSignal(Int_t i) const {return ( (i>=0&&i<kBuffSize) ? fSignal[i] : 0.0);} | |
21 | Double_t GetSignal() const {return fTsignal;} | |
22 | Double_t GetSignalAfterElect() const {return fSignalAfterElect;} | |
23 | Double_t GetSumSignal() const {return fTsignal+fNoise;} | |
24 | Double_t GetNoise() const {return fNoise;} | |
25 | Int_t GetNsignals() const {return kBuffSize;} | |
26 | void AddSignal(Int_t track,Int_t hit,Double_t signal); | |
27 | void AddSignalAfterElect(Double_t signal) {fSignalAfterElect += signal;} | |
28 | void AddNoise(Double_t noise) {fNoise += noise;} | |
29 | void SetNoise(Double_t noise) {fNoise = noise;} | |
30 | Int_t GetTrack(Int_t i) const {return ((i>=0&&i<kBuffSize) ? fTrack[i] : 0);} | |
31 | Int_t GetHit(Int_t i) const {return ((i>=0&&i<kBuffSize) ? fHits[i] : 0);} | |
32 | Int_t GetModule() const {return fModule;} | |
33 | Int_t GetNTracks() const {return fNTracks;} | |
34 | // | |
35 | void Add(const AliITSUSDigit *pl); | |
36 | void AddTo(Int_t fileIndex, const AliITSUSDigit *pl); | |
37 | void ShiftIndices(Int_t fileIndex); | |
451f5018 | 38 | void Print(Option_t *option="") const; |
39 | Int_t Read(const char *name) {return TObject::Read(name);} | |
40 | // | |
41 | virtual Bool_t IsSortable() const {return kTRUE;} | |
42 | virtual Bool_t IsEqual(const TObject* obj) const {return GetUniqueID()==obj->GetUniqueID();} | |
43 | virtual Int_t Compare(const TObject* obj) const; | |
44 | ||
45 | // | |
46 | static Int_t GetBuffSize() {return kBuffSize;}; | |
47 | // | |
48 | private: | |
49 | UShort_t fModule; // module number | |
50 | UShort_t fNTracks; // number of tracks contributing | |
51 | Int_t fTrack[kBuffSize]; // track Number | |
52 | Int_t fHits[kBuffSize]; // hit number | |
53 | Float_t fSignal[kBuffSize]; // Signals | |
54 | Float_t fTsignal; // Total signal (no noise) | |
55 | Float_t fNoise; // Total noise, coupling, ... | |
56 | Float_t fSignalAfterElect; // Signal after electronics | |
57 | // | |
58 | ClassDef(AliITSUSDigit,1) // Item list of signals and track numbers | |
59 | }; | |
60 | ||
451f5018 | 61 | |
62 | ||
63 | #endif |