2 // This class contains the secondary correction and the double hit
3 // correction used in low-flux events.
5 #ifndef ALIFMDCORRDOUBLEHIT_H
6 #define ALIFMDCORRDOUBLEHIT_H
8 * @file AliFMDCorrDoubleHit.h
9 * @author Christian Holm Christensen <cholm@dalsgaard.hehi.nbi.dk>
10 * @date Wed Mar 23 14:00:50 2011
14 * @ingroup pwglf_forward_corr
18 #include <TObjArray.h>
22 * This class contains double hit correction used in low-flux events.
25 * The double hit correction is given by
27 * h_{r}(\eta) = \frac{\sum_i N_{i,strips hit}(\eta)}{
28 * \sum_i N_{i,total hits}(\eta)}
31 * where @f$ N_{i,strips hit}(\eta)@f$ is the number of strips in the
32 * @f$\eta@f$ bin that had one or more hits in event @f$i@f$, and
33 * @f$N_{i,total hits}(\eta)@f$ is the total number hits in the
36 * These are generated from Monte-Carlo truth information.
38 * @ingroup pwglf_forward_corr
41 class AliFMDCorrDoubleHit : public TObject
47 AliFMDCorrDoubleHit();
51 * @param o Object to copy from
53 AliFMDCorrDoubleHit(const AliFMDCorrDoubleHit& o);
58 virtual ~AliFMDCorrDoubleHit();
62 * @param o Object to assign from
64 * @return Reference to this object
66 AliFMDCorrDoubleHit& operator=(const AliFMDCorrDoubleHit& o);
69 * @name Get corrections and parameters
72 * Get the double hit correction @f$ h_{r}(\eta)@f$
74 * @param d Detector number
75 * @param r Ring identifier
77 * @return @f$ h_{r}(\eta)@f$
79 TH1D* GetCorrection(UShort_t d, Char_t r) const;
84 * @name Set corrections and parameters
87 * Set the double hit correction @f$ h_{r}(\eta)@f$. Note, that the
88 * object takes ownership of the passed pointer.
90 * @param d Detector number (1-3)
91 * @param r Ring identifier (I or O)
92 * @param h @f$ h_{r}(\eta)@f$
94 * @return true if operation succeeded
96 Bool_t SetCorrection(UShort_t d, Char_t r, TH1D* h);
101 * @name Auxiliary member functions
104 * Declare this as a folder
106 * @return Always true
108 Bool_t IsFolder() const { return true; }
110 * Browse this object in the browser
114 void Browse(TBrowser* b);
120 void Print(Option_t* option="R") const; //*MENU*
124 * Get the index corresponding to the given ring
129 * @return Index (0 based) or negative in case of errors
131 Int_t GetRingIndex(UShort_t d, Char_t r) const;
133 TObjArray fCorrections; // Array of per-ring double hit corr.
134 ClassDef(AliFMDCorrDoubleHit,1); //