]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - FMD/AliFMD.h
reconstruction working now under AliReconstruction
[u/mrichter/AliRoot.git] / FMD / AliFMD.h
index 65823219cba7a3e0569746afd09ebf85e717756b..8abd5bc76fed68b6789cb65c0da78e5c0a98c792 100644 (file)
@@ -7,13 +7,13 @@
 //  Manager and hits classes for set:Si-FMD     //
 ////////////////////////////////////////////////
  
-#include "AliDetector.h"
-#include "TString.h"
-#include "AliFMDMerger.h" 
- class TFile;
- class TTree;
- class AliFMDMerger;
+#include <AliDetector.h>
+#include <TBranch.h>
+#include <AliLoader.h>
+
+#include "AliFMDReconstruction.h"
+
+class TClonesArray;
  class AliFMD : public AliDetector {
  
 public:
@@ -22,37 +22,44 @@ public:
   virtual       ~AliFMD(); 
   virtual void   AddHit(Int_t, Int_t*, Float_t*);
   virtual void   AddDigit(Int_t*);
-  virtual void   BuildGeometry();
+   virtual void   BuildGeometry();
   virtual void   CreateGeometry() {}
   virtual void   CreateMaterials()=0; 
   virtual Int_t  DistanceToPrimitive(Int_t px, Int_t py);
   virtual Int_t  IsVersion() const =0;
   virtual void   Init();
-  virtual void   MakeBranch(Option_t *opt=" ",const char *file=0);
+  virtual void   MakeBranch(Option_t *opt=" ");
+  virtual void   MakeBranchInTreeD(TTree *treeD, const char *file=0);
   virtual void   SetTreeAddress();
   virtual void   ResetHits();
   virtual void   ResetDigits();
   virtual void   DrawDetector()=0;
   virtual void   StepManager() {}
+   
+  void SetEventNumber(Int_t i)     {fEvNrSig = i;}
   void  Eta2Radius(Float_t, Float_t, Float_t*);
-  void Hits2SDigits();//
-  void Digits2Reco(); 
+  virtual void Reconstruct() const{ AliFMDReconstruction reco(GetLoader()->GetRunLoader()); reco.Exec();}
+
    // Digitisation
-  TClonesArray *SDigits() const {return fSDigits;}
-//  virtual void   SDigits2Digits();
-  virtual void   SDigits2Digits();
-  virtual void   SetMerger(AliFMDMerger* merger);
-  virtual AliFMDMerger* Merger();
   TClonesArray *ReconParticles() const {return fReconParticles;}   
-  Int_t   fNevents ;        // Number of events to digitize
+  virtual void SetHitsAddressBranch(TBranch *b){b->SetAddress(&fHits);}
+  virtual AliDigitizer* CreateDigitizer(AliRunDigitizer* manager) const;
 
  protected:
-  Int_t fIdSens1;     //Si sensetive volume
-  AliFMDMerger *fMerger;   // ! pointer to merger
-  TClonesArray *fSDigits      ; // List of summable digits
+//Granularity
+  Int_t fRingsSi1;       // Number of rings
+  Int_t fSectorsSi1;    // Number of sectors
+  Int_t fRingsSi2;       // Number of rings
+  Int_t fSectorsSi2;    // Number of sectors
+
+  Int_t   fNevents ;        // Number of events to digitize
+  Int_t fEvNrSig;                 // signal     event number
+
+
   TClonesArray *fReconParticles;
 
- ClassDef(AliFMD,3)  //Class for the FMD detector
+ ClassDef(AliFMD,6)  //Class for the FMD detector
 };
 #endif // AliFMD_H