Include the new TRD classes
[u/mrichter/AliRoot.git] / TRD / AliTRD.h
CommitLineData
fe4da5cc 1#ifndef TRD_H
2#define TRD_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////////////////////////////////////////////////
d3f347ff 9// Manager and hits classes for set: TRD //
fe4da5cc 10////////////////////////////////////////////////
11
851d3db9 12#include "AliRun.h"
fe4da5cc 13#include "AliDetector.h"
14#include "AliHit.h"
99d5402e 15#include "AliDigit.h"
851d3db9 16
82bbf98a 17#include "AliTRDconst.h"
851d3db9 18//#include "AliTRDgeometry.h"
19
20class AliTRDgeometry;
82bbf98a 21
22//_____________________________________________________________________________
fe4da5cc 23class AliTRD : public AliDetector {
5c7f4665 24
851d3db9 25 public:
5c7f4665 26
851d3db9 27 AliTRD();
28 AliTRD(const char *name, const char *title);
29 virtual ~AliTRD();
30 virtual void AddHit(Int_t, Int_t, Float_t*);
31 virtual void AddDigit(Int_t*);
32 virtual void AddRecPoint(Float_t*, Int_t*, Int_t, Float_t);
33 virtual void BuildGeometry();
34 virtual void CreateGeometry();
35 virtual void CreateMaterials();
36 virtual void DrawModule();
37 Int_t DistancetoPrimitive(Int_t px, Int_t py);
38 TClonesArray *RecPoints() { return fRecPoints; };
39 virtual void Init();
40 virtual Int_t IsVersion() const = 0;
41 virtual void MakeBranch(Option_t* option);
42 virtual void ResetRecPoints();
43 virtual void StepManager() = 0;
44 virtual void SetTreeAddress();
45
46 virtual void SetGasMix(Int_t imix = 0);
47 virtual void SetHits(Int_t ihit = 1) {};
48
49 AliTRDgeometry *GetGeometry() { return fGeometry; };
50
51 virtual Int_t GetSensChamber() = 0;
52 virtual Int_t GetSensPlane() = 0;
53 virtual Int_t GetSensSector() = 0;
54
55 protected:
5c7f4665 56
851d3db9 57 Int_t fGasMix; // Gas mixture. 0: Xe/Isobutane 1: Xe/CO2
5c7f4665 58
851d3db9 59 AliTRDgeometry *fGeometry; // The TRD geometry
5c7f4665 60
851d3db9 61 TClonesArray *fRecPoints; // List of reconstructed points
62 Int_t fNRecPoints; //! Number of reconstructed points
d3f347ff 63
851d3db9 64 ClassDef(AliTRD,1) // Transition Radiation Detector base class
d3f347ff 65
82bbf98a 66};
d3f347ff 67
fe4da5cc 68//_____________________________________________________________________________
69class AliTRDhit : public AliHit {
70
71public:
851d3db9 72 Int_t fDetector; // TRD detector number
5c7f4665 73 Float_t fQ; // Charge created by a hit (slow simulator only)
fe4da5cc 74
75public:
76 AliTRDhit() {}
851d3db9 77 AliTRDhit(Int_t shunt, Int_t track, Int_t det, Float_t *hits);
99d5402e 78 virtual ~AliTRDhit() {};
fe4da5cc 79
851d3db9 80 ClassDef(AliTRDhit,2) // Hits for Transition Radiation Detector
5c7f4665 81
82};
99d5402e 83
fe4da5cc 84#endif