Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:15:37

0001 /*
0002  *  See header file for a description of this class.
0003  *
0004  *  \author Paolo Ronchese INFN Padova
0005  *
0006  */
0007 
0008 //-----------------------
0009 // This Class' Header --
0010 //-----------------------
0011 #include "HeavyFlavorAnalysis/SpecificDecay/interface/BPHDecayToFlyingCascadeBuilderBase.h"
0012 
0013 //-------------------------------
0014 // Collaborating Class Headers --
0015 //-------------------------------
0016 #include "HeavyFlavorAnalysis/SpecificDecay/interface/BPHDecayGenericBuilderBase.h"
0017 #include "HeavyFlavorAnalysis/RecoDecay/interface/BPHRecoBuilder.h"
0018 #include "HeavyFlavorAnalysis/RecoDecay/interface/BPHPlusMinusCandidate.h"
0019 #include "HeavyFlavorAnalysis/RecoDecay/interface/BPHRecoCandidate.h"
0020 #include "HeavyFlavorAnalysis/RecoDecay/interface/BPHAnalyzerTokenWrapper.h"
0021 
0022 //---------------
0023 // C++ Headers --
0024 //---------------
0025 using namespace std;
0026 
0027 //-------------------
0028 // Initializations --
0029 //-------------------
0030 
0031 //----------------
0032 // Constructors --
0033 //----------------
0034 BPHDecayToFlyingCascadeBuilderBase::BPHDecayToFlyingCascadeBuilderBase(const BPHEventSetupWrapper& es,
0035                                                                        const string& flyName,
0036                                                                        double flyMass,
0037                                                                        double flyMSigma)
0038     : BPHDecayToFlyingCascadeBuilderBase(flyName, flyMass, flyMSigma) {
0039   if (evSetup == nullptr)
0040     evSetup = new BPHEventSetupWrapper(es);
0041 }
0042 
0043 BPHDecayToFlyingCascadeBuilderBase::BPHDecayToFlyingCascadeBuilderBase(const string& flyName,
0044                                                                        double flyMass,
0045                                                                        double flyMSigma)
0046     : fName(flyName),
0047       fMass(flyMass),
0048       fMSigma(flyMSigma),
0049       flySel(new BPHMassFitSelect(-2.0e+06, -1.0e+06)),
0050       kfChi2Sel(new BPHKinFitChi2Select(-1.0)) {}
0051 
0052 BPHDecayToFlyingCascadeBuilderBase::BPHDecayToFlyingCascadeBuilderBase()
0053     : flySel(new BPHMassFitSelect(-2.0e+06, -1.0e+06)), kfChi2Sel(new BPHKinFitChi2Select(-1.0)) {}
0054 
0055 //--------------
0056 // Destructor --
0057 //--------------
0058 BPHDecayToFlyingCascadeBuilderBase::~BPHDecayToFlyingCascadeBuilderBase() {
0059   delete flySel;
0060   delete kfChi2Sel;
0061 }
0062 
0063 //--------------
0064 // Operations --
0065 //--------------
0066 
0067 /// set cuts
0068 void BPHDecayToFlyingCascadeBuilderBase::setFlyingMassMin(double m) {
0069   outdated = true;
0070   flySel->setMassMin(m);
0071   return;
0072 }
0073 
0074 void BPHDecayToFlyingCascadeBuilderBase::setFlyingMassMax(double m) {
0075   outdated = true;
0076   flySel->setMassMax(m);
0077   return;
0078 }
0079 
0080 void BPHDecayToFlyingCascadeBuilderBase::setFlyingMassRange(double mMin, double mMax) {
0081   outdated = true;
0082   flySel->setMassMin(mMin);
0083   flySel->setMassMax(mMax);
0084   return;
0085 }
0086 
0087 void BPHDecayToFlyingCascadeBuilderBase::setKinFitProbMin(double p) {
0088   outdated = true;
0089   kfChi2Sel->setProbMin(p);
0090 }