--- PamCut/CollectionActions/Histo2DActions/RigFillAction/RigFillAction.h 2010/03/11 19:11:27 1.1 +++ PamCut/CollectionActions/Histo2DActions/RigFillAction/RigFillAction.h 2010/05/11 14:25:59 1.2.2.1 @@ -27,12 +27,15 @@ * It is also possible to recover spillover events. These are defined as events with opposite sign * and absolute rigidity greater than a certain value (specified as a constructors' parameter). * They will be added to the rigidity overflow bins (YOverflow). + * Another functionality of this action is the correction of deflection for residual misalignment when + * selecting data with a fixed MDR cut (which reduces the effective tracker geometry and thus brings up + * some residual misalignment). * For output file naming conventions, see #Finalize. * * CUT DEPENDENCIES: TrkPhSinCut for single physical track, TrkRigGeoCut for galactic event. * */ -class RigFillAction: public Histo2DAction { +class RigFillAction: public Histo2DAction { public: /*! @brief Constructor. @@ -48,16 +51,19 @@ * @param outFileBase The output file base name. If "" is given as name, no file will be produced. * @param rigBinsFile The file containing the rigidity bins * @param thresholdCoeff The threshold coefficient for critical rigidity. - * @param thresholdCoeff The threshold coefficient for critical rigidity. * @param chargeSign The sign of the rigidity of the particles that will fill the histograms. The * particles with opposite sign will be discarded (except,for spillover events, eventually). * See also aliases for positive and negative signs in CommonDefs.h. * @param spilloverFlag If true, spillover events (defined by spilloverLimit) will be not discarded and * added to the highest bin. * @param spilloverLimit The inferior limit of the spillover rigidities (absolute value). + * @param mdrMin The fixed MDR cut (in GV) applied to data before this action, and for which the measured rigidity + * will be corrected. See the implementation of #OnGood for details about the correction calculation. + * No correction will be applied if this parameter is set to 0. + * */ RigFillAction(const char *actionName, TString outFileBase, TString rigBinsFile, float thresholdCoeff, - float chargeSign = POSITIVE, bool spilloverFlag = false, float spilloverLimit = 0); + float chargeSign = POSITIVE, bool spilloverFlag = false, float spilloverLimit = 0, float mdrMin = 0.); /*! @brief Constructor. * @@ -75,9 +81,12 @@ * @param spilloverFlag If true, spillover events (defined by spilloverLimit) will be not discarded and * added to the highest bin. * @param spilloverLimit The inferior limit of the spillover rigidities (absolute value). + * @param mdrMin The fixed MDR cut (in GV) applied to data before this action, and for which the measured rigidity + * will be corrected. See the implementation of #OnGood for details about the correction calculation. + * No correction will be applied if this parameter is set to 0. */ RigFillAction(const char *actionName, TString outFileBase, vector &bins, float thresholdCoeff, - float chargeSign = POSITIVE, bool spilloverFlag = false, float spilloverLimit = 0); + float chargeSign = POSITIVE, bool spilloverFlag = false, float spilloverLimit = 0, float mdrMin = 0.); /*! @brief Destructor */ ~RigFillAction() { @@ -110,6 +119,6 @@ float _chargeSign; bool _spilloverFlag; float _spilloverLimit; - + float _mdrMin; }; #endif /* RIGFILLACTION_H_ */