]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - FMD/AliFMDReconstructor.cxx
Example macros for Kr cluster finding
[u/mrichter/AliRoot.git] / FMD / AliFMDReconstructor.cxx
index fb9a17dd0f93c8b6f83430def971ad589efc9d27..bb1717fa1d9921e00cd7d247b2c735cc9a10b563 100644 (file)
@@ -78,6 +78,7 @@ AliFMDReconstructor::AliFMDReconstructor()
   // Make a new FMD reconstructor object - default CTOR.  
   SetNoiseFactor();
   SetAngleCorrect();
+  if (AliDebugLevel() > 0) fDiagnostics = kTRUE;
 }
   
 
@@ -160,6 +161,7 @@ AliFMDReconstructor::Init()
   
   // Check if we need diagnostics histograms 
   if (!fDiagnostics) return;
+  AliInfo("Making diagnostics histograms");
   fDiagStep1   = new TH2I("diagStep1", "Read ADC vs. Noise surpressed ADC",
                        1024, -.5, 1023.5, 1024, -.5, 1023.5);
   fDiagStep1->SetDirectory(0);
@@ -222,6 +224,26 @@ AliFMDReconstructor::GetVertex() const
 }
   
 
+//____________________________________________________________________
+void 
+AliFMDReconstructor::Reconstruct(AliRawReader* /*reader*/, TTree*) const
+{
+  // Reconstruct directly from raw data (no intermediate output on
+  // digit tree or rec point tree).  
+  // Parameters: 
+  //   reader  Raw event reader 
+  //   ctree    Not used. 
+  AliError("Method is not used");
+#if 0
+  TClonesArray*   array = new TClonesArray("AliFMDDigit");
+  AliFMDRawReader rawRead(reader, 0);
+  rawRead.ReadAdcs(array);
+  ProcessDigits(array);
+  array->Delete();
+  delete array;
+#endif
+}
+
 //____________________________________________________________________
 void 
 AliFMDReconstructor::Reconstruct(TTree* digitsTree, 
@@ -334,8 +356,6 @@ AliFMDReconstructor::SubtractPedestal(AliFMDDigit* digit) const
   // load this to subtract a pedestal that was given in a database or
   // something like that. 
 
-  Int_t             counts = 0;
-  Int_t             adc    = 0;
   AliFMDParameters* param  = AliFMDParameters::Instance();
   Float_t           ped    = param->GetPedestal(digit->Detector(), 
                                                digit->Ring(), 
@@ -347,10 +367,11 @@ AliFMDReconstructor::SubtractPedestal(AliFMDDigit* digit) const
                                                     digit->Strip());
   AliFMDDebug(15, ("Subtracting pedestal %f from signal %d", 
                   ped, digit->Counts()));
-  if (digit->Count3() > 0)      adc = digit->Count3();
-  else if (digit->Count2() > 0) adc = digit->Count2();
-  else                          adc = digit->Count1();
-  counts = TMath::Max(Int_t(adc - ped), 0);
+  // if (digit->Count3() > 0)      adc = digit->Count3();
+  // else if (digit->Count2() > 0) adc = digit->Count2();
+  // else                          adc = digit->Count1();
+  Int_t adc    = digit->Counts();
+  Int_t counts = TMath::Max(Int_t(adc - ped), 0);
   if (counts < noise * fNoiseFactor) counts = 0;
   if (counts > 0) AliFMDDebug(15, ("Got a hit strip"));
   if (fDiagStep1) fDiagStep1->Fill(adc, counts);
@@ -502,6 +523,15 @@ AliFMDReconstructor::FillESD(TTree*  /* digitsTree */,
   if (fDiagAll)   fDiagAll->Reset();
 }
 
+//____________________________________________________________________
+void
+AliFMDReconstructor::FillESD(AliRawReader*, TTree* clusterTree, 
+                            AliESDEvent* esd) const
+{
+  TTree* dummy = 0;
+  FillESD(dummy, clusterTree, esd);
+}
+
 //____________________________________________________________________
 //
 // EOF