CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch13/src/TopQuarkAnalysis/TopKinFitter/interface/TopKinFitter.h

Go to the documentation of this file.
00001 #ifndef TopKinFitter_h
00002 #define TopKinFitter_h
00003 
00004 #include "TMath.h"
00005 
00006 #include "PhysicsTools/KinFitter/interface/TKinFitter.h"
00007 
00008 /*
00009   \class   TopKinFitter TopKinFitter.h "TopQuarkAnalysis/TopKinFitter/interface/TopKinFitter.h"
00010   
00011   \brief   one line description to be added here...
00012 
00013   text to be added here...
00014   
00015 **/
00016 
00017 class TopKinFitter {
00018   
00019  public:
00020   
00022   enum Param{ kEMom, kEtEtaPhi, kEtThetaPhi };
00023 
00024  public:
00026   explicit TopKinFitter(const int maxNrIter=200, const double maxDeltaS=5e-5, const double maxF=1e-4,
00027                         const double mW=80.4, const double mTop=173.);
00029   ~TopKinFitter();
00030 
00032   double fitS()  const { return fitter_->getS(); };
00034   int fitNrIter() const { return fitter_->getNbIter(); };
00036   double fitProb() const { return TMath::Prob(fitter_->getS(), fitter_->getNDF()); };
00037   
00038  protected:
00040   std::string param(const Param& param) const;
00041   
00042  protected:
00043   // kinematic fitter
00044   TKinFitter* fitter_;
00046   int maxNrIter_;
00048   double maxDeltaS_;
00050   double maxF_;
00052   double mW_;
00054   double mTop_;
00055 };
00056 
00057 #endif