// Date : September 20 2002 //
// //
//-----------------------------------------------------//
-
-#include <TObjArray.h>
+// Author - B.K. Nandi
+//
#include "AliDigitizer.h"
class TClonesArray;
class TFile;
-class TMath;
class TObjArray;
class TParticle;
class TTree;
class AliHit;
class AliHeader;
class AliRunDigitizer;
+class AliCDBManager;
+class AliCDBStorage;
class AliPMDcell;
class AliPMDsdigit;
class AliPMDdigit;
+class AliPMDCalibData;
+class AliPMDPedestal;
class AliPMDDigitizer:public AliDigitizer
{
public:
AliPMDDigitizer();
+ AliPMDDigitizer(const AliPMDDigitizer &digitizer); // copy constructor
+ AliPMDDigitizer &operator=(const AliPMDDigitizer &digitizer); // assign op
AliPMDDigitizer(AliRunDigitizer *manager);
virtual ~AliPMDDigitizer();
void SDigits2Digits(Int_t ievt);
void Exec(Option_t *option);
void MergeSDigits(Int_t filenumber, Int_t troffset);
+ void TrackAssignment2CPVCell();
void TrackAssignment2Cell();
void MeV2ADC(Float_t mev, Float_t & adc) const;
void AddSDigit(Int_t trnumber, Int_t det, Int_t smnumber,
void ResetCellADC();
void UnLoad(Option_t * option);
+ Float_t Gain(Int_t det, Int_t smn, Int_t row, Int_t col) const;
+
+ AliPMDCalibData *GetCalibGain() const;
+ AliPMDPedestal *GetCalibPed() const;
+
protected:
AliRunLoader *fRunLoader; //! Pointer to Run Loader
AliPMDhit *fPMDHit; //! Pointer to specific detector hits
// and Hits containers
AliLoader *fPMDLoader; //! Pointer to specific detector loader
+ AliPMDCalibData *fCalibGain; //! Gain calibration data
+ AliPMDPedestal *fCalibPed; //! Pedestal calibration data
+
TClonesArray *fSDigits; //! List of summable digits
TClonesArray *fDigits; //! List of digits
+ TObjArray fCPVCell; //! List of cpv cells
TObjArray fCell; //! List of pmd cells
-
- Int_t fDebug; // Debug switch
+
Int_t fNsdigit; // Summable digits counter
Int_t fNdigit; // Digits counter
Int_t fDetNo; // Detector Number (0:PRE, 1:CPV)
static const Int_t fgkTotUM = 24; // Total Unit modules in one detector
static const Int_t fgkRow = 48; // Total number of rows in one unitmodule
static const Int_t fgkCol = 96; // Total number of cols in one unitmodule
+
Float_t fCPV[fgkTotUM][fgkRow][fgkCol]; //! CPV Array containing total edep
Float_t fPRE[fgkTotUM][fgkRow][fgkCol]; //! PRE Array containing total edep
+
+ Int_t fCPVCounter[fgkTotUM][fgkRow][fgkCol]; //! Number of times each cell
+ // is fired in CPV
Int_t fPRECounter[fgkTotUM][fgkRow][fgkCol]; //! Number of times each cell
// is fired in PMD
- Int_t fPRETrackNo[fgkTotUM][fgkRow][fgkCol]; //! PRE Array containing track number
- Int_t fCPVTrackNo[fgkTotUM][fgkRow][fgkCol]; //! CPV Array containing track number
+ Int_t fCPVTrackNo[fgkTotUM][fgkRow][fgkCol]; //! CPV Array containing
+ // track number
+ Int_t fPRETrackNo[fgkTotUM][fgkRow][fgkCol]; //! PRE Array containing
+ // track number
- ClassDef(AliPMDDigitizer,4) // To digitize PMD Hits
+
+ ClassDef(AliPMDDigitizer,8) // To digitize PMD Hits
};
#endif