//
//*-- Author: Sahal Yacoob (LBL)
// based on : AliPHOSDigit
-// July 2003 Yves Schutz : NewIO
+// July 2003 Yves Schutz : NewIO
+// November 2003 Aleksei Pavlinov : Shish-Kebab geometry
//_________________________________________________________________________
#include "TObjString.h"
class TArrayI ;
class TClonesArray ;
+class TList;
+class TBrowser;
// --- Standard library ---
// --- AliRoot header files ---
#include "AliDigitizer.h"
#include "AliConfig.h"
+#include "AliEMCALCalibData.h"
class AliEMCALSDigitizer ;
class AliRunDigitizer ;
public:
AliEMCALDigitizer() ; // ctor
- AliEMCALDigitizer(const TString alirunFileNameFile, const TString eventFolderName = AliConfig::fgkDefaultEventFolderName) ;
+ AliEMCALDigitizer(TString alirunFileNameFile, TString eventFolderName = AliConfig::GetDefaultEventFolderName()) ;
AliEMCALDigitizer(const AliEMCALDigitizer & dtizer) ;
AliEMCALDigitizer(AliRunDigitizer * manager) ;
virtual ~AliEMCALDigitizer() ;
- void Digitize(const Int_t event); // Make Digits from SDigits stored in fSDigits
+ void Digitize(Int_t event); // Make Digits from SDigits stored in fSDigits
void Exec(Option_t *option); // Supervising method
- const Float_t GetDigitThreshold() const { return fDigitThreshold;}
- const Float_t GetPedestal() const { return fPedestal; }
- const Float_t GetPinNoise() const { return fPinNoise;}
- const Float_t GetSlope() const { return fSlope; }
- const Float_t GetTimeResolution() const { return fTimeResolution ; }
- const Float_t GetECAchannel() const { return fADCchannelEC ; }
- const Float_t GetECApedestal() const { return fADCpedestalEC ; }
- const Float_t GetHCAchannel() const { return fADCchannelHC ; }
- const Float_t GetHCApedestal() const { return fADCpedestalHC ; }
- const Float_t GetPREchannel() const { return fADCchannelPRE ; }
- const Float_t GetPREpedestal() const { return fADCpedestalPRE ; }
-
+ Float_t GetDigitThreshold() const { return fDigitThreshold;}
+ Float_t GetPedestal() const { return fPedestal; }
+ Float_t GetPinNoise() const { return fPinNoise;}
+ Float_t GetSlope() const { return fSlope; }
+ Float_t GetTimeResolution() const { return fTimeResolution ; }
+ Float_t GetECAchannel() const { return fADCchannelEC ; }
+ Float_t GetECApedestal() const { return fADCpedestalEC ; }
+ void SetEventRange(Int_t first=0, Int_t last=-1) {fFirstEvent=first; fLastEvent=last; }
void SetDigitThreshold(Float_t EMCThreshold) {fDigitThreshold = EMCThreshold;}
void SetPinNoise(Float_t PinNoise ) {fPinNoise = PinNoise;}
//General
- const Int_t GetDigitsInRun() const { return fDigitsInRun; }
- void MixWith(const TString alirunFileName,
- const TString eventFolderName = AliConfig::fgkDefaultEventFolderName) ; // Add another one file to mix
- void Print()const ;
+ Int_t GetDigitsInRun() const { return fDigitsInRun; }
+ void MixWith(TString alirunFileName,
+ TString eventFolderName = AliConfig::GetDefaultEventFolderName()) ; // Add another one file to mix
+ void Print(Option_t* option="") const ;
+ void Print1(Option_t * option); // *MENU*
- AliEMCALDigitizer & operator = (const AliEMCALDigitizer & rvalue) {
+ AliEMCALDigitizer & operator = (const AliEMCALDigitizer & /*rvalue*/) {
// assignement operator requested by coding convention but not needed
Fatal("operator =", "not implemented") ;
return *this ;
}
+ virtual void Browse(TBrowser* b);
+ //JLK
+ // hists
+ //void SetControlHists(Int_t var=0) {fControlHists=var;}
+ //Int_t GetControlHist() const {return fControlHists;}
+ //TList *GetListOfHists() {return fHists;}
+ //TList* BookControlHists(int var=0);
+ //void SaveHists(const char* name="RF/TRD1/Digitizations/DigiVar?",
+ //Bool_t kSingleKey=kTRUE, const char* opt="RECREATE"); // *MENU*
+
private:
Bool_t Init();
void InitParameters() ;
void PrintDigits(Option_t * option) ;
void Unload() ;
- void WriteDigits(Int_t evt) ; // Writes Digits for particular event
- Float_t TimeOfNoise(void) ; // Calculate time signal generated by noise
+ void WriteDigits() ; // Writes Digits the current event
+ Float_t TimeOfNoise(void) ; // Calculate time signal generated by noise
//Calculate the time of crossing of the threshold by front edge
Float_t FrontEdgeTime(TClonesArray * ticks) ;
- Int_t DigitizeEnergy(Float_t energy, Int_t absId) ;
+ Int_t DigitizeEnergy(Float_t energy, Int_t AbsId) ;
private:
Float_t fTimeThreshold ; // Threshold to start timing for given crystall
Float_t fTimeSignalLength ; // Length of the timing signal
Float_t fADCchannelEC ; // width of one ADC channel in EC section (GeV)
- Float_t fADCpedestalEC ; //
+ Float_t fADCpedestalEC ; // pedestal for one ADC channel
Int_t fNADCEC ; // number of channels in EC section ADC
- Float_t fADCchannelHC ; // width of one ADC channel in HC section (GeV)
- Float_t fADCpedestalHC ; //
- Int_t fNADCHC ; // number of channels in HC section ADC
- Float_t fADCchannelPRE ; // width of one ADC channel in PRE section (GeV)
- Float_t fADCpedestalPRE ; //
- Int_t fNADCPRE ; // number of channels in PRE section ADC
TString fEventFolderName; // skowron: name of EFN to read data from in stand alone mode
-
- ClassDef(AliEMCALDigitizer,4) // description
-
+ Int_t fFirstEvent; // first event to process
+ Int_t fLastEvent; // last event to process
+ //JLK
+ // Control hists
+ //Int_t fControlHists; //!
+ //TList *fHists; //!
+ AliEMCALCalibData * fCalibData; //Calibration data pointer
+
+ //JLK
+ //ClassDef(AliEMCALDigitizer,6) // description
+ ClassDef(AliEMCALDigitizer,7) // description
};