]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG2/FORWARD/analysis2/AliFMDMCSharingFilter.h
Renamed script to add Central AOD task from
[u/mrichter/AliRoot.git] / PWG2 / FORWARD / analysis2 / AliFMDMCSharingFilter.h
index c4538a1b8479ef8721247a614ec735a1ab18bb03..894761c60c0b16b1a4f65345bd76fed669832732 100644 (file)
@@ -1,5 +1,18 @@
+//
+// Class to do the sharing correction for MC data.
+//
 #ifndef ALIFMDMCSHARINGFILTER_H
 #define ALIFMDMCSHARINGFILTER_H
+/**
+ * @file   AliFMDMCSharingFilter.h
+ * @author Christian Holm Christensen <cholm@dalsgaard.hehi.nbi.dk>
+ * @date   Wed Mar 23 14:03:47 2011
+ * 
+ * @brief  
+ * 
+ * 
+ * @ingroup pwg2_forward_aod
+ */
 #include "AliFMDSharingFilter.h"
 class AliMCEvent;
 
@@ -8,12 +21,14 @@ class AliMCEvent;
  *
  * @par Input: 
  *    - AliESDFMD object  - from reconstruction
+ *    - Kinematics
+ *    - Track-References
  *
  * @par Output: 
  *    - AliESDFMD object  - copy of input, but with signals merged 
  *
  * @par Corrections used: 
- *    - AliCorrELossFit 
+ *    - None
  *
  * @par Histograms: 
  *    - For each ring (FMD1i, FMD2i, FMD2o, FMD3i, FMD3o) the distribution of 
@@ -24,6 +39,7 @@ class AliMCEvent;
  *
  * @ingroup pwg2_forward_algo
  * @ingroup pwg2_forward_mc
+ * @ingroup pwg2_forward_aod
  */
 class AliFMDMCSharingFilter : public AliFMDSharingFilter
 {
@@ -35,7 +51,15 @@ public:
   /** 
    * Default Constructor - do not use 
    */
-  AliFMDMCSharingFilter();
+  AliFMDMCSharingFilter()
+  : AliFMDSharingFilter(), 
+    fFMD1i(0),
+    fFMD2i(0),
+    fFMD2o(0),
+    fFMD3i(0),
+    fFMD3o(0), 
+    fSumEta(0)
+  {}
   /** 
    * Constructor 
    * 
@@ -57,18 +81,22 @@ public:
    */
   AliFMDMCSharingFilter& operator=(const AliFMDMCSharingFilter& o);
   /** 
-   * Filter the input AliESDFMD object
+   * Filter the input kinematics and track references, using 
+   * some of the ESD information
    * 
-   * @param input     Input (from ESD) - used for eta
-   * @param lowFlux   If this is a low-flux event 
-   * @param output    Output AliESDFMD object 
-   * 
-   * @return True on success, false otherwise 
+   * @param input   Input ESD event
+   * @param event   Input MC event
+   * @param vz      Vertex position 
+   * @param output  Output ESD-like object
+   * @param primary Per-event histogram of primaries 
+   *
+   * @return True on succes, false otherwise 
    */
   Bool_t FilterMC(const AliESDFMD&  input, 
                  const AliMCEvent& event,
                  Double_t          vz,
-                 AliESDFMD&        output);
+                 AliESDFMD&        output,
+                 TH2D*             primary);
   /** 
    * Compare the result of merging to the monte-carlo truth.  This
    * fills the correlation histograms
@@ -92,7 +120,7 @@ public:
    * @param dir     Where the output is 
    * @param nEvents Number of events 
    */
-  void ScaleHistograms(TList* dir, Int_t nEvents);
+  void ScaleHistograms(const TList* dir, Int_t nEvents);
   /** 
    * Print information
    * 
@@ -100,6 +128,15 @@ public:
    */
   void Print(Option_t* option="") const;
 protected:
+  /** 
+   * Store a particle hit in FMD<i>dr</i>[<i>s,t</i>] in @a output
+   * 
+   * @param d       Detector
+   * @param r       Ring
+   * @param s       Sector
+   * @param t       Strip
+   * @param output  Output ESD object
+   */
   void StoreParticle(UShort_t d, Char_t r, UShort_t s, UShort_t t, 
                     AliESDFMD& output) const;
   TH2D* fFMD1i;  // ESD-MC correlation