--- PamCut/CaloCuts/CaloGeomCut/CaloGeomCut.h 2010/03/10 08:42:32 1.2 +++ PamCut/CaloCuts/CaloGeomCut/CaloGeomCut.h 2011/09/02 16:25:39 1.6 @@ -7,11 +7,13 @@ /*! @file CaloGeomCut.h The CaloGeomCut class definition file */ +#ifndef NO_CALOAXIS + #ifndef CALOGEOMCUT_H_ #define CALOGEOMCUT_H_ #include "../../PamCutBase/PamCutBase.h" -#include "../../CaloAxis2.h" +#include /*! @brief The geometric cut using the calorimeter track. * @@ -40,25 +42,26 @@ * @param yCaloAxis The pointer to the CaloAxis object for Y axis. * @param iMethod index of the method used to track: 0 means straight line; * 1 means curved line (taking into account magnetic field and beta - * from TOF stand-alone [assuming proton mass] with 3 parameters specified + * from TOF stand-alone with 3 parameters specified * below) starting from the top of the calorimeter and going backward * (straight line inside the calorimeter). - * Various combinations of TOF beta quality parameters are possible: default, low-quality beta (used for beta[12]): 10.,10.,20.; medium-quality beta: 5.,15.,4; high-quality beta: 3.,20.,3. + * Various combinations of TOF beta quality parameters are possible: + * default, low-quality beta (used for beta[12]): 10.,10.,20.; + * medium-quality beta: 5.,15.,4; high-quality beta: 3.,20.,3. * @param xTolCaloTrack The tolerance for X view which defines the fiducial acceptance. * @param yTolCaloTrack The tolerance for Y view which defines the fiducial acceptance. * @param mass The particle's mass (used only when iMethod = 1). Default is #H_MASS. * @param resMax Default: 10. (equivalent to beta[12]) + * @param zeta The particle Z, with sign (used only when iMethod = 1). Default is +1. * @param qualCut Default: 10. (equivalent to beta[12]) * @param chi2Cut Default: 20. (equivalent to beta[12]) */ - CaloGeomCut(const char *cutName, CaloAxis *xCaloAxis, CaloAxis *yCaloAxis, UInt_t iMethod, Float_t xTolCaloTrack = - 0.7, Float_t yTolCaloTrack = 0.7, Float_t mass = H_MASS, Float_t resMax = 10., Float_t qualCut = 10., Float_t chi2Cut = 20.) : - PamCut(cutName), _xCaloAxis(xCaloAxis), _yCaloAxis(yCaloAxis), _iMethod(iMethod), _xTolCaloTrack(xTolCaloTrack), - _yTolCaloTrack(yTolCaloTrack), _mass(mass), _resMax(resMax), _qualCut(qualCut), _chi2Cut(chi2Cut) { - } + CaloGeomCut(const char *cutName, CaloAxis *xCaloAxis, CaloAxis *yCaloAxis, UInt_t iMethod, + Float_t xTolCaloTrack = 0.7, Float_t yTolCaloTrack = 0.7, Float_t mass = H_MASS, Float_t zeta = +1., + Float_t resMax = 10., Float_t qualCut = 10., Float_t chi2Cut = 20.); + /*! @brief Destructor. */ - ~CaloGeomCut() { - } + ~CaloGeomCut(); /*! @brief The geometry check using the calorimeter's track. * @@ -72,8 +75,14 @@ CaloAxis *_xCaloAxis, *_yCaloAxis; UInt_t _iMethod; Float_t _xTolCaloTrack, _yTolCaloTrack; - Float_t _mass; + Float_t _mass, _zeta; Float_t _resMax, _qualCut, _chi2Cut; + + Trajectory* _traj; + static const Int_t _nPoint; + vector _zIn; // MUST be Float_t + static const Float_t _zCaloTop; // cm MUST be Float_t }; #endif /* CALOGEOMCUT_H_ */ +#endif /* NO_CALOAXIS */