3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
6 ////////////////////////////////////////////////
7 // Merger class for ZDC //
8 ////////////////////////////////////////////////
12 class AliZDCMergedHit;
15 typedef enum {kDigitize=0, kMerge=1} MergeMode_t;
21 virtual ~AliZDCMerger();
24 void Background(Float_t &b, Int_t &nspecn, Int_t &nspecp);
25 void Fragmentation(Float_t b, Int_t nspecn, Int_t nspecp,
26 Int_t &nfreespn, Int_t &nfreespp);
28 void ExtractSignal(Int_t SpecType);
30 // Inline functions to return TCA of MergerHits to Hits2SDigits()
31 TClonesArray *MergedHits() const {return fMHits;}
32 int GetNMhits() const {return fNMhits;}
34 // Inline function to return background file Hits2SDigits()
35 TFile *BgrFile() const {return fBgrFile;}
37 // Inline function to return event number
38 Int_t EvNum() const {return fNEvBgr;}
41 void SetMode(MergeMode_t mode) {fMerge = mode;}
42 void SetBackgroundFileName(char* file) {fFnBgr = file;}
43 void SetBackgroundEventNum(Int_t nev) {fNEvBgr = nev;}
45 //Open the background file
49 MergeMode_t fMerge; // Merging type kDigitize, kMerge
52 char *fFnBgr; // Background file name
53 TFile *fBgrFile; // Pointer to background file
54 Int_t fNEvBgr; // Number of events in background file
55 TTree *fTrHBgr; // Hits tree for background event
56 TClonesArray *fHitsBgr; // TClonesArray of background hits
57 Float_t fImpPar; // Impact Parameter of the collision
58 Int_t fSpecn; // Number of spectator n
59 Int_t fSpecp; // Number of spectator p
62 Int_t fFreeSpn; // Signal event number x spectator n
63 Int_t fFreeSpp; // Signal event number x spectator p
65 char *fFnSpecn; // Spectator n file name
66 TFile *fSpecnFile; // Pointer to signal file -> spectator n
67 char *fFnSpecp; // Spectator p file name
68 TFile *fSpecpFile; // Pointer to signal file -> spectator p
70 Int_t fNMhits; // Number of Merged hits for background
71 TClonesArray *fMHits; // TCA for "merged" hits
75 // --- Parameters for conversion of light yield in ADC channels
76 Float_t fPMGain[3][5]; // PM gain
77 Float_t fADCRes; // ADC conversion factor
78 // --- Digitization parameters setters and getters
80 void SetPMGain(Int_t Det, Int_t PMDet, Int_t PMGain)
81 {fPMGain[Det][PMDet] = PMGain;}
82 Float_t GetPMGain(Int_t Det, Int_t PMDet)
83 {return fPMGain[Det][PMDet];}
84 // Conversion factor from charge to ADC channels
85 // F = 1.6E-19 / Resolution [Coulomb/ch]
86 void SetADCRes(Int_t ADCRes) {fADCRes = ADCRes;}
87 Float_t GetADCRes() {return fADCRes;}
91 ClassDef(AliZDCMerger,1)