-#ifndef ALIEMCALSDigitizer_H
-#define ALIEMCALSDigitizer_H
+#ifndef ALIEMCALSDIGITIZER_H
+#define ALIEMCALSDIGITIZER_H
/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
* See cxx source for full Copyright notice */
/* $Id$ */
//_________________________________________________________________________
-// Task Class for making SDigits in EMCAL
-//
+// This is a TTask that makes SDigits out of Hits
+// A Summable Digits is the sum of all hits originating
+// from one in one tower of the EMCAL
+// A threshold for assignment of the primary to SDigit is applied
+//
+// SDigits need to hold the energy sum of the hits, but AliEMCALDigit
+// can (should) only store amplitude. Therefore, the SDigit energy is
+// "digitized" before being stored and must be "calibrated" back to an
+// energy before SDigits are summed to form true Digits
+//
+//
//*-- Author: Sahal Yacoob (LBL)
// based on : AliPHOSSDigitizer
//_________________________________________________________________________
-//
-// Modif:
-// August 2002 Yves Schutz: clone PHOS as closely as possible and intoduction
-// July 2003 Yves Schutz: new IO (à la PHOS)
// --- ROOT system ---
#include "TTask.h"
-class TFile ;
-class TList;
class TBrowser;
-//class TBrowser;
// --- Standard library ---
AliEMCALSDigitizer(const AliEMCALSDigitizer & sd) ;
virtual ~AliEMCALSDigitizer(); // dtor
- Float_t Calibrate(Int_t amp)const {return (amp - fA)/fB ; }
- Int_t Digitize(Float_t energy)const { return (Int_t ) (fA + energy*fB); }
+ Float_t Digitize(Float_t energy)const; //convert energy in GeV to int amplitude
+ Float_t Calibrate(Float_t amp)const; //opposite of Digitize()
+
virtual void Exec(Option_t *option);
Int_t GetSDigitsInRun() const {return fSDigitsInRun ;}
- virtual void Print() const;
+ virtual void Print(Option_t *option="") const;
void Print1(Option_t *option="all"); // *MENU*
void SetEventFolderName(TString name) { fEventFolderName = name ; }
void SetEventRange(Int_t first=0, Int_t last=-1) {fFirstEvent=first; fLastEvent=last; }
const AliEMCALSDigitizer & operator = (const AliEMCALSDigitizer & /*sd*/) {return *this ;}
virtual void Browse(TBrowser* b);
- // hists
- void SetControlHists(const Int_t var=0) {fControlHists=var;}
- Int_t GetControlHist() const {return fControlHists;}
- TList *GetListOfHists() {return fHists;}
- TList* BookControlHists(const int var=0);
- void SaveHists(const char* name="RF/TRD1/Digitizations/SDigiVar?",
- Bool_t kSingleKey=kTRUE, const char* opt="RECREATE"); // *MENU*
private:
void Init() ;
Int_t fFirstEvent; // first event to process
Int_t fLastEvent; // last event to process
Float_t fSampling; // See AliEMCALGeometry
- // Control hists
- Int_t fControlHists; //!
- TList *fHists; //!
-
- ClassDef(AliEMCALSDigitizer,5) // description
+ TClonesArray* fHits; //-> Temporal array with hits
+
+ ClassDef(AliEMCALSDigitizer,7) // description
};
-#endif // AliEMCALSDigitizer_H
+#endif // AliEMCALSDIGITIZER_H