44 posCollection(muPosCollection),
45 negCollection(muNegCollection) {
60 map<oniaType, OniaParameters>::iterator iter =
oniaPar.begin();
61 map<oniaType, OniaParameters>::iterator iend =
oniaPar.end();
62 while (iter != iend) {
85 map<oniaType, OniaParameters>::iterator iter =
oniaPar.begin();
86 map<oniaType, OniaParameters>::iterator iend =
oniaPar.end();
87 while (iter != iend) {
89 ptSel.include(*par.
ptSel);
90 etaSel.include(*par.
etaSel);
113 vector<BPHPlusMinusConstCandPtr>& list =
oniaList[
type];
116 vector<BPHPlusMinusConstCandPtr> lsub;
118 for (
i = 0;
i <
n; ++
i) {
122 if ((dSel !=
nullptr) && (!dSel->
accept(*muPos)))
124 if ((dSel !=
nullptr) && (!dSel->
accept(*muNeg)))
126 if ((mSel !=
nullptr) && (!mSel->
accept(*ptr)))
128 if ((vSel !=
nullptr) && (!vSel->
accept(*ptr)))
130 if ((kSel !=
nullptr) && (!kSel->
accept(*ptr)))
132 lsub.push_back(list[
i]);
142 for (ic = 0; ic < nc; ++ic) {
235 map<oniaType, OniaParameters>::iterator iter =
oniaPar.begin();
236 map<oniaType, OniaParameters>::iterator iend =
oniaPar.end();
238 iter++->second.updated =
false;
266 vector<BPHPlusMinusConstCandPtr>& list =
oniaList[
type];
273 for (
i = 0;
i <
n; ++
i) {
double getProbMin() const
get current prob min
static const double ups2MWidth
virtual const reco::Candidate * originalReco(const reco::Candidate *daug) const
get the original particle from the clone
static std::vector< BPHPlusMinusConstCandPtr > build(const BPHRecoBuilder &builder, const std::string &nPos, const std::string &nNeg, double mass=-1, double msig=-1)
double getMassMin() const
get current mass cuts
const BPHRecoBuilder::BPHGenericCollection * posCollection
void setMassMax(double m)
double getPtMin() const
get current pt min
void setMassMax(oniaType type, double m)
static const double ups3Mass
static const double ups2Mass
static const double jPsiMWidth
virtual bool accept(const BPHKinematicFit &cand) const =0
accept function
static const double muonMSigma
BPHMuonEtaSelect * etaSel
bool accept(const BPHDecayVertex &cand) const override
select vertex
bool accept(const reco::Candidate &cand) const override
select muon
static const double jPsiMass
void setPtMin(double pt)
set pt min
virtual bool accept(const BPHDecayMomentum &cand) const =0
accept function
BPHPlusMinusConstCandPtr getOriginalCandidate(const BPHRecoCandidate &cand)
bool accept(const BPHDecayMomentum &cand) const override
select particle
void setProbMin(oniaType type, double p)
double getConstrSigma(oniaType type) const
std::map< oniaType, std::vector< BPHPlusMinusConstCandPtr > > oniaList
void setParameters(oniaType type, double ptMin, double etaMax, double massMin, double massMax, double probMin, double mass, double sigma)
double getEtaMax(oniaType type) const
virtual const reco::Candidate * getDaug(const std::string &name) const
BPHGenericPtr< const BPHPlusMinusCandidate >::type BPHPlusMinusConstCandPtr
static const double ups1MWidth
void setProbMin(double p)
set prob min
std::vector< BPHPlusMinusConstCandPtr > getList(oniaType type, BPHRecoSelect *dSel=nullptr, BPHMomentumSelect *mSel=nullptr, BPHVertexSelect *vSel=nullptr, BPHFitSelect *kSel=nullptr)
double getPtMin(oniaType type) const
get current cuts
void extractList(oniaType type)
void filter(const std::string &name, const BPHRecoSelect &sel) const
virtual bool accept(const BPHDecayVertex &cand) const =0
accept function
BPHOniaToMuMuBuilder(const edm::EventSetup &es, const BPHRecoBuilder::BPHGenericCollection *muPosCollection, const BPHRecoBuilder::BPHGenericCollection *muNegCollection)
static const double phiMWidth
double getMassMax(oniaType type) const
double getProbMin(oniaType type) const
void setEtaMax(double eta)
set eta max
double getMassMax() const
double getConstrMass(oniaType type) const
static const double phiMass
void setMassMin(double m)
set mass cuts
void add(const std::string &name, const BPHGenericCollection *collection, double mass=-1.0, double msig=-1.0)
static const double psi2Mass
static const double ups1Mass
virtual ~BPHOniaToMuMuBuilder()
const BPHRecoBuilder::BPHGenericCollection * negCollection
double getMassMin(oniaType type) const
static const double muonMass
static const double ups3MWidth
std::vector< BPHPlusMinusConstCandPtr > build()
build resonance candidates
std::map< oniaType, OniaParameters > oniaPar
void setConstr(oniaType type, double mass, double sigma)
void setEtaMax(oniaType type, double eta)
std::vector< BPHPlusMinusConstCandPtr > fullList
virtual bool accept(const reco::Candidate &cand) const =0
bool accept(const reco::Candidate &cand) const override
select muon
void setMassMin(oniaType type, double m)
const edm::EventSetup * evSetup
static const double psi2MWidth
void setPtMin(oniaType type, double pt)
set cuts
double getEtaMax() const
get current eta max