3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
8 ////////////////////////////////////////////////////////////////////////
9 // Manager and hits classes for set: ITS //
10 ////////////////////////////////////////////////////////////////////////
12 #include "TObjArray.h"
13 #include "AliDetector.h"
14 #include "AliITSgeom.h"
15 #include "AliITSdigit.h"
16 #include "AliITSmodule.h"
18 class AliITS : public AliDetector {
21 AliITSgeom *fITSgeom; // Pointer to ITS geometry
22 TObjArray *fITSmodules; // Pointer to ITS modules
23 // Defined here since it doesn't have a place in AliDetector like fDigit
24 TObjArray *fITSpoints; // Pointer to ITS points
26 Bool_t fEuclidOut; // Flag to write out geometry in euclid format
27 Int_t fIdN; // the number of layers
28 Int_t *fIdSens; char **fIdName; //layer identifier
29 // Geometry and Stepmanager version numbers used.
30 Int_t fMajorVersion,fMinorVersion;
34 AliITS(const char *name, const char *title);
37 virtual void AddHit(Int_t, Int_t*, Float_t*);
38 virtual void AddDigit(Int_t*, Int_t*);
39 virtual Int_t AddDigit(AliITSdigit *d);
40 // virtual void AddPoint(); // yet to be defined
42 virtual void BuildGeometry() {};
43 virtual void CreateGeometry() {};
44 virtual void CreateMaterials() {};
46 virtual TObjArray* GetModules() const {return fITSmodules;}
47 virtual TObjArray* GetPoints() const {return fITSpoints;}
49 void GetGeometryVersion(Int_t &a,Int_t &b) const
50 {a = fMajorVersion;b=fMinorVersion;return;}
51 virtual Int_t IsVersion() const {return 1;}
52 Int_t DistancetoPrimitive(Int_t px, Int_t py);
54 virtual void MakeBranch(Option_t *opt=" ");
55 virtual void SetEUCLID(Bool_t euclid=1) {fEuclidOut = euclid;}
56 virtual void StepManager()=0;
58 // ITS geometry functions
59 virtual AliITSgeom *GetITSgeom() const {return fITSgeom;}
60 virtual TObjArray *GetITSpoints() const {return fITSpoints;}