Line data Source code
1 : #ifndef ALIITSDIGITSDD_H
2 : #define ALIITSDIGITSDD_H
3 : /* Copyright(c) 2004-2006, ALICE Experiment at CERN, All rights reserved. *
4 : * See cxx source for full Copyright notice */
5 : ////////////////////////////////////////////////////////
6 : // Digit class for SDD //
7 : ////////////////////////////////////////////////////////
8 : #include <AliITSdigit.h>
9 :
10 : class AliITSCalibrationSDD;
11 :
12 : //______________________________________________________________________
13 0 : class AliITSdigitSDD: public AliITSdigit {
14 :
15 : public:
16 : AliITSdigitSDD(); //default creator
17 : //standard c.tor with digits and "phys"
18 : AliITSdigitSDD(Float_t phys,const Int_t *digits);
19 : //standard c.tor with digits, tracls, hits, "phys", and charge
20 : AliITSdigitSDD( Float_t phys,const Int_t *digits,const Int_t *tracks,
21 : const Int_t *hits,const Float_t *charges);
22 : //constructor setting also fSignalExpanded
23 : AliITSdigitSDD( Float_t phys,const Int_t *digits,const Int_t *tracks,
24 : const Int_t *hits,const Float_t *charges, Int_t sige);
25 528 : virtual ~AliITSdigitSDD(){/* destructor*/}
26 : // returns the array size used to store Tracks and Hits
27 2572 : virtual Int_t GetSignal() const {return fSignalExpanded;}
28 1286 : virtual Int_t GetCompressedSignal() const {return fSignal;}
29 : // Return charge deposited by this track/hit
30 0 : virtual Float_t GetCharge(Int_t i) const {return fTcharges[i];}
31 : // returns TArrayI of unduplicated track numbers (summed over hits).
32 : virtual Int_t GetListOfTracks(TArrayI &t,TArrayF &c);
33 1540 : void SetSignalExpanded(Int_t sig){fSignalExpanded = sig;}
34 : virtual void Print(ostream *os); // Class ascii print function
35 : virtual void Read(istream *os); // Class ascii read function
36 0 : virtual void Print(Option_t *option="") const {TObject::Print(option);}
37 0 : virtual Int_t Read(const char *name) {return TObject::Read(name);}
38 :
39 : protected:
40 : void InitObject(Float_t phys,const Int_t *tracks,
41 : const Int_t *hits,const Float_t *charges);
42 :
43 : // 3 hits temporarily - it will be only 1
44 : Float_t fTcharges[fgkSize]; //[fgkSize] charge per track making this digit
45 : Float_t fPhysics; // signal particles contribution to signal
46 : Int_t fSignalExpanded; // 10 bit signal
47 122 : ClassDef(AliITSdigitSDD,4) // Simulated digit object for SDD
48 :
49 : };
50 : // Input and output functions for standard C++ input/output.
51 : ostream &operator<<(ostream &os,AliITSdigitSDD &source);
52 : istream &operator>>(istream &os,AliITSdigitSDD &source);
53 :
54 : #endif
|