Code for simulation, sdigitization and digitization moved from macros to compiled...
[u/mrichter/AliRoot.git] / FMD / AliFMD.h
1 #ifndef ALIFMD_H
2 #define ALIFMD_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 ////////////////////////////////////////////////
7 //  Manager and hits classes for set:Si-FMD     //
8 ////////////////////////////////////////////////
9  
10 #include "AliDetector.h"
11 #include "TBranch.h"
12 class TClonesArray;
13  class AliFMD : public AliDetector {
14  
15 public:
16   AliFMD();
17   AliFMD(const char *name, const char *title);
18   virtual       ~AliFMD(); 
19   virtual void   AddHit(Int_t, Int_t*, Float_t*);
20   virtual void   AddDigit(Int_t*);
21    virtual void   BuildGeometry();
22   virtual void   CreateGeometry() {}
23   virtual void   CreateMaterials()=0; 
24   virtual Int_t  DistanceToPrimitive(Int_t px, Int_t py);
25   virtual Int_t  IsVersion() const =0;
26   virtual void   Init();
27   virtual void   MakeBranch(Option_t *opt=" ");
28   virtual void   MakeBranchInTreeD(TTree *treeD, const char *file=0);
29   virtual void   SetTreeAddress();
30   virtual void   ResetHits();
31   virtual void   ResetDigits();
32   virtual void   DrawDetector()=0;
33   virtual void   StepManager() {}
34    
35   void SetEventNumber(Int_t i)     {fEvNrSig = i;}
36   void  Eta2Radius(Float_t, Float_t, Float_t*);
37    void Digits2Reco(); 
38  
39    // Digitisation
40    TClonesArray *ReconParticles() const {return fReconParticles;}   
41   virtual void SetHitsAddressBranch(TBranch *b){b->SetAddress(&fHits);}
42   virtual AliDigitizer* CreateDigitizer(AliRunDigitizer* manager);
43
44  protected:
45 //Granularity
46   Int_t fRingsSi1;       // Number of rings
47   Int_t fSectorsSi1;    // Number of sectors
48   Int_t fRingsSi2;       // Number of rings
49   Int_t fSectorsSi2;    // Number of sectors
50
51  Int_t   fNevents ;        // Number of events to digitize
52   Int_t fEvNrSig;                 // signal     event number
53
54
55   TClonesArray *fReconParticles;
56
57  ClassDef(AliFMD,6)  //Class for the FMD detector
58 };
59 #endif // AliFMD_H
60
61