]>
Commit | Line | Data |
---|---|---|
1 | #ifndef ALIITSDIGIT_H | |
2 | #define ALIITSDIGIT_H | |
3 | /* Copyright(c) 2004-2006, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id$ */ | |
7 | ||
8 | //////////////////////////////////////////////// | |
9 | // Digits classes for all ITS detectors // | |
10 | //////////////////////////////////////////////// | |
11 | #include <Riostream.h> | |
12 | #include <Riostream.h> | |
13 | #include <TObject.h> | |
14 | ||
15 | class TObjArray; | |
16 | class TArrayI; | |
17 | class TArrayF; | |
18 | ||
19 | //______________________________________________________________________ | |
20 | class AliITSdigit: public TObject { | |
21 | ||
22 | public: | |
23 | AliITSdigit() {//default constructor. zero all values. | |
24 | fSignal=fCoord1=fCoord2=0;} | |
25 | //Standard Constructor. Fills class from array digits | |
26 | AliITSdigit(const Int_t *digits); | |
27 | //Destructor | |
28 | virtual ~AliITSdigit() { } | |
29 | // returns the array size used to store Tracks and Hits | |
30 | // virtual Int_t GetNTracks() {return 0;} | |
31 | //returns pointer to array of tracks numbers | |
32 | virtual Int_t *GetTracks() {return 0;} | |
33 | // returns pointer to array of hits numbers for this module (as given by | |
34 | // AliITSmodule). | |
35 | virtual Int_t *GetHits() {return 0;} | |
36 | // returns track number kept in the array element i of fTracks | |
37 | virtual Int_t GetTrack(Int_t) const {return 0;} | |
38 | // returns hit number kept in the array element i of fHits | |
39 | virtual Int_t GetHit(Int_t) const {return 0;} | |
40 | virtual Int_t GetCoord1() const {return fCoord1;} // returns fCoord1 | |
41 | virtual Int_t GetCoord2() const {return fCoord2;} // returns fCoord2 | |
42 | virtual Int_t GetSignal() const {return fSignal;} // returns fSignal | |
43 | virtual Int_t GetCompressedSignal() const {return GetSignal();} // overloaded in AliITSdigitSDD | |
44 | virtual void SetCoord1(Int_t i){fCoord1 = i;} // Sets fCoord1 value | |
45 | virtual void SetCoord2(Int_t i){fCoord2 = i;} // Sets fCoord12value | |
46 | virtual void SetSignal(Int_t i){fSignal = i;} // Sets fSignal value | |
47 | ||
48 | virtual void Print(Option_t *option="") const {TObject::Print(option);} | |
49 | virtual void Print(ostream *os); // Class ascii print function | |
50 | virtual Int_t Read(const char *name) {return TObject::Read(name);} | |
51 | virtual void Read(istream *os); // Class ascii read function | |
52 | ||
53 | protected: | |
54 | Int_t fCoord1; // Cell number on Z axis (SPD+SDD), flag for side type (SSD) | |
55 | Int_t fCoord2; // Cell number on X axis (SPD+SDD), strip number (SSD) | |
56 | Int_t fSignal; // Signal in ADC counts | |
57 | ||
58 | ClassDef(AliITSdigit,1) // Real data digit object for set:ITS | |
59 | ||
60 | }; | |
61 | // Input and output functions for standard C++ input/output. | |
62 | ostream &operator<<(ostream &os,AliITSdigit &source); | |
63 | istream &operator>>(istream &os,AliITSdigit &source); | |
64 | ||
65 | #endif |