File indexing completed on 2023-03-17 11:05:38
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011 #include "HeavyFlavorAnalysis/SpecificDecay/interface/BPHDecayToResResBuilderBase.h"
0012
0013
0014
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
0021
0022
0023
0024 #include <iostream>
0025 using namespace std;
0026
0027
0028
0029
0030
0031
0032
0033
0034 BPHDecayToResResBuilderBase::BPHDecayToResResBuilderBase(
0035 const BPHEventSetupWrapper& es, const string& res1Name, double res1Mass, double res1Width, const string& res2Name)
0036 : BPHDecayGenericBuilderBase(es, nullptr),
0037 BPHDecayConstrainedBuilderBase(res1Name, res1Mass, res1Width),
0038 sName(res2Name),
0039 res2Sel(new BPHMassSelect(-2.0e+06, -1.0e+06)),
0040 dzFilter(&rName) {}
0041
0042 BPHDecayToResResBuilderBase::BPHDecayToResResBuilderBase(const string& res2Name)
0043 : sName(res2Name), res2Sel(new BPHMassSelect(-2.0e+06, -1.0e+06)), dzFilter(&rName) {}
0044
0045
0046
0047
0048 BPHDecayToResResBuilderBase::~BPHDecayToResResBuilderBase() { delete res2Sel; }
0049
0050
0051
0052
0053
0054
0055 void BPHDecayToResResBuilderBase::setRes2MassMin(double m) {
0056 outdated = true;
0057 res2Sel->setMassMin(m);
0058 return;
0059 }
0060
0061 void BPHDecayToResResBuilderBase::setRes2MassMax(double m) {
0062 outdated = true;
0063 res2Sel->setMassMax(m);
0064 return;
0065 }
0066
0067 void BPHDecayToResResBuilderBase::setRes2MassRange(double mMin, double mMax) {
0068 outdated = true;
0069 res2Sel->setMassMin(mMin);
0070 res2Sel->setMassMax(mMax);
0071 return;
0072 }
0073
0074
0075 void BPHDecayToResResBuilderBase::fill(BPHRecoBuilder& brb, void* parameters) {
0076 brb.setMinPDiffererence(minPDiff);
0077 addRes1Collection(brb);
0078 addRes2Collection(brb);
0079
0080 if (massSel->getMassMax() >= 0.0)
0081 brb.filter(*massSel);
0082 if (chi2Sel->getProbMin() >= 0.0)
0083 brb.filter(*chi2Sel);
0084 if (mFitSel->getMassMax() >= 0.0)
0085 brb.filter(*mFitSel);
0086
0087 setup(parameters);
0088
0089 return;
0090 }