]>
Commit | Line | Data |
---|---|---|
fe4da5cc | 1 | #ifndef CASTOR_H |
2 | #define CASTOR_H | |
3da30618 | 3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id$ */ | |
7 | ||
fe4da5cc | 8 | //////////////////////////////////////////////// |
9 | // Manager and hits classes for set:CASTOR // | |
10 | //////////////////////////////////////////////// | |
11 | ||
12 | #include "AliDetector.h" | |
13 | #include "AliHit.h" | |
14 | ||
15 | ||
16 | class AliCASTOR : public AliDetector { | |
17 | ||
18 | public: | |
19 | AliCASTOR(); | |
20 | AliCASTOR(const char *name, const char *title); | |
21 | virtual ~AliCASTOR() {} | |
22 | virtual void AddHit(Int_t, Int_t*, Float_t*); | |
23 | virtual void BuildGeometry(); | |
24 | virtual void CreateGeometry() {} | |
25 | virtual void CreateMaterials() {} | |
26 | virtual Int_t IsVersion() const =0; | |
27 | Int_t DistancetoPrimitive(Int_t px, Int_t py); | |
76aa0aaa | 28 | virtual void DrawModule()=0; |
fe4da5cc | 29 | virtual void StepManager()=0; |
30 | ||
31 | ClassDef(AliCASTOR,1) // CASTOR detector class | |
32 | }; | |
33 | ||
34 | ||
35 | ||
36 | class AliCASTORv1 : public AliCASTOR { | |
37 | ||
38 | private: | |
39 | ||
40 | Int_t fOdFiber; //Tracking medium of fiber | |
41 | Int_t fOdCladding; //Tracking medium of cladding | |
42 | Int_t fOdAbsorber; //Tracking medium absorber | |
43 | Int_t fOctants; //Number of azimutal sectors | |
44 | Int_t fLayersEM; //Number of EM layers | |
45 | Int_t fLayersHad; //Number of hadronic layers | |
46 | Float_t fPhiOct; //Phi opening of azimutal sectors | |
47 | Float_t fRadCore; //Radius of fiber core | |
48 | Float_t fRadFactor; //Normalisation factor for radius | |
49 | ||
50 | public: | |
51 | AliCASTORv1(); | |
52 | AliCASTORv1(const char *name, const char *title); | |
53 | virtual ~AliCASTORv1() {} | |
54 | virtual void CreateGeometry(); | |
55 | virtual void CreateMaterials(); | |
56 | virtual void Init(); | |
76aa0aaa | 57 | virtual void DrawModule(); |
fe4da5cc | 58 | virtual Int_t IsVersion() const {return 1;} |
59 | virtual void StepManager(); | |
60 | ||
61 | ClassDef(AliCASTORv1,1) //Class for CASTOR version 1 | |
62 | }; | |
63 | ||
64 | ||
65 | ||
66 | //_____________________________________________________________________________ | |
67 | ||
68 | class AliCASTORhit : public AliHit { | |
69 | public: | |
70 | Int_t fVolume; //array of volumes | |
71 | ||
72 | public: | |
73 | AliCASTORhit() {} | |
74 | AliCASTORhit(Int_t shunt, Int_t track, Int_t *vol, Float_t *hits); | |
75 | virtual ~AliCASTORhit() {} | |
76 | ||
77 | ClassDef(AliCASTORhit,1) //Hits for CASTOR | |
78 | }; | |
79 | ||
80 | #endif |