]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ITS/AliITSmodule.h
Minor corrections for uninitialised variables.
[u/mrichter/AliRoot.git] / ITS / AliITSmodule.h
1 #ifndef ALIITSMODULE_H
2 #define ALIITSMODULE_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 //#include "AliITSpoint.h"
9 #include "AliITS.h"
10 #include "AliITSdigit.h"
11 #include "AliITShit.h"
12 #include "TObjArray.h"
13 #include "TArray.h"
14
15
16 //________________________________________________________________
17 //
18 //  Class AliITSmodule 
19 //  is a superclass for AliITSmoduleSSD, SPD and SDD.
20 //  The main function of modules is to simulate DIGITS from  
21 //  GEANT HITS and produce POINTS from DIGITS
22 //  It also make fast simulation without use of DIGITS
23 //
24 //  created by: A.Boucham, W.Peryt, S.Radomski, P.Skowronski
25 //              R.Barbera, B. Batynia, B. Nilsen
26 //  ver. 1.0    CERN, 16.09.1999  
27 // 
28 //________________________________________________________________
29 //
30
31
32 class AliITSmodule : public TObject {
33
34 public:
35
36     //________________________________________________________________
37     //
38     // Constructors and deconstructor
39     //________________________________________________________________
40     //
41     
42     AliITSmodule();             // default constructor
43     AliITSmodule(Int_t index);   // index in TObjectArray in ITS object
44
45     virtual ~AliITSmodule() ;
46
47     //________________________________________________________________
48     //
49     // Position menagenent
50     //________________________________________________________________
51     //
52     
53     Int_t GetIndex()  const { return fIndex;}
54     //Int_t GetLayer()  const { return fLayer;}
55     //Int_t GetLadder() const { return fLadder;}
56     //Int_t GetDet()    const { return fDet;}
57     
58     
59     //________________________________________________________________
60     //
61     // Hits menagement
62     //________________________________________________________________
63     //
64     
65     Int_t GetNhits() const { return fNhitsM;} 
66     // returns number of hits in this module
67                   
68     TObjArray *GetHits() const { return fHitsM; }
69     // returns pointer to array (TClonesArray) of pointers to hits
70     
71     Int_t  AddHit(AliITShit *hit); 
72     // Adds pointer of hit belonging to this module
73     // and returns number of hits in this module
74     
75     //________________________________________________________________ 
76     //
77     // Full Simulation
78     //________________________________________________________________
79     //
80     
81     virtual void HitToDigit() {};
82     // this functon is virtual, becouse each type of a detector 
83     // make simulation in its own specific methods
84     
85     //________________________________________________________________
86     //
87     // Reconstruction
88     //________________________________________________________________
89     //
90     
91     virtual void DigitToPoint() {};
92     // this functon is virtual, becouse each type of a detector 
93     // make reconstruction in its own specific methods
94     // classes DIGIT and POINT are specyfic to detector type
95     
96     //________________________________________________________________
97     //
98     // Fast Simulation
99     //________________________________________________________________
100     //
101          
102     virtual void HitToPoint() {};
103     // this functon is virtual, becouse each type of a detector 
104     // make fast simulation in its own specific methods
105     // this simulation do not use DIGITS 
106     
107     
108 protected:
109     
110     //________________________________________________________________
111     //
112     // Data members
113     //________________________________________________________________
114     //
115     
116     AliDetector *fITS;      // Pointer to ITS detector
117     Int_t       fIndex;     // Index of this module in ITSmodules TObjectArray
118     
119     TObjArray   *fHitsM;    // Pointer to list of hits on this module
120     Int_t       fNhitsM;    // Number of hits 
121     
122     TArrayI     *fIdigits;  // Indexes of DIGITS belonging to this module
123                             // in array in ITS
124     Int_t       fNdigits;   // Number of DIGITS
125                                
126     TArrayI     *fIpoints;  // Indexes of POINTS belonging to this module
127                             // in array in ITS  
128     Int_t       fNpoints;   // Number of POINTS
129       
130 public:
131
132     //________________________________________________________________
133     //
134     // ROOT compatibility
135     //________________________________________________________________
136     //
137     ClassDef(AliITSmodule,1)  
138 };
139
140 #endif