CMS 3D CMS Logo

BPHOniaToMuMuBuilder.h
Go to the documentation of this file.
1 #ifndef HeavyFlavorAnalysis_SpecificDecay_BPHOniaToMuMuBuilder_h
2 #define HeavyFlavorAnalysis_SpecificDecay_BPHOniaToMuMuBuilder_h
3 
12 //----------------------
13 // Base Class Headers --
14 //----------------------
15 
16 //------------------------------------
17 // Collaborating Class Declarations --
18 //------------------------------------
22 
24 
25 class BPHMuonPtSelect;
26 class BPHMuonEtaSelect;
27 class BPHChi2Select;
28 class BPHMassSelect;
29 class BPHRecoSelect;
30 class BPHMomentumSelect;
31 class BPHVertexSelect;
32 
33 //---------------
34 // C++ Headers --
35 //---------------
36 #include <string>
37 #include <vector>
38 #include <map>
39 
40 // ---------------------
41 // -- Class Interface --
42 // ---------------------
43 
45 public:
46  enum oniaType { Phi, Psi1, Psi2, Ups, Ups1, Ups2, Ups3 };
47 
51  const BPHRecoBuilder::BPHGenericCollection* muPosCollection,
52  const BPHRecoBuilder::BPHGenericCollection* muNegCollection);
53 
54  // deleted copy constructor and assignment operator
57 
60  virtual ~BPHOniaToMuMuBuilder();
61 
64  std::vector<BPHPlusMinusConstCandPtr> build();
66 
69  std::vector<BPHPlusMinusConstCandPtr> getList(oniaType type,
70  BPHRecoSelect* dSel = nullptr,
71  BPHMomentumSelect* mSel = nullptr,
72  BPHVertexSelect* vSel = nullptr,
73  BPHFitSelect* kSel = nullptr);
74 
78 
80  void setPtMin(oniaType type, double pt);
81  void setEtaMax(oniaType type, double eta);
82  void setMassMin(oniaType type, double m);
83  void setMassMax(oniaType type, double m);
84  void setProbMin(oniaType type, double p);
85  void setConstr(oniaType type, double mass, double sigma);
86 
88  double getPtMin(oniaType type) const;
89  double getEtaMax(oniaType type) const;
90  double getMassMin(oniaType type) const;
91  double getMassMax(oniaType type) const;
92  double getProbMin(oniaType type) const;
93  double getConstrMass(oniaType type) const;
94  double getConstrSigma(oniaType type) const;
95 
96 private:
99 
103 
104  struct OniaParameters {
109  double mass;
110  double sigma;
111  bool updated;
112  };
113  bool updated;
114 
115  std::map<oniaType, OniaParameters> oniaPar;
116  std::map<oniaType, std::vector<BPHPlusMinusConstCandPtr>> oniaList;
117  std::vector<BPHPlusMinusConstCandPtr> fullList;
118 
119  void setNotUpdated();
121  double ptMin,
122  double etaMax,
123  double massMin,
124  double massMax,
125  double probMin,
126  double mass,
127  double sigma);
128  void extractList(oniaType type);
129 };
130 
131 #endif
BPHOniaToMuMuBuilder::updated
bool updated
Definition: BPHOniaToMuMuBuilder.h:113
BPHOniaToMuMuBuilder::Psi1
Definition: BPHOniaToMuMuBuilder.h:46
BPHOniaToMuMuBuilder::getConstrMass
double getConstrMass(oniaType type) const
Definition: BPHOniaToMuMuBuilder.cc:224
BPHOniaToMuMuBuilder::OniaParameters::ptSel
BPHMuonPtSelect * ptSel
Definition: BPHOniaToMuMuBuilder.h:105
BPHFitSelect
Definition: BPHFitSelect.h:29
BPHOniaToMuMuBuilder::Ups3
Definition: BPHOniaToMuMuBuilder.h:46
BPHRecoSelect
Definition: BPHRecoSelect.h:35
BPHOniaToMuMuBuilder::OniaParameters
Definition: BPHOniaToMuMuBuilder.h:104
BPHOniaToMuMuBuilder::BPHOniaToMuMuBuilder
BPHOniaToMuMuBuilder(const edm::EventSetup &es, const BPHRecoBuilder::BPHGenericCollection *muPosCollection, const BPHRecoBuilder::BPHGenericCollection *muNegCollection)
Definition: BPHOniaToMuMuBuilder.cc:38
BPHOniaToMuMuBuilder::setParameters
void setParameters(oniaType type, double ptMin, double etaMax, double massMin, double massMax, double probMin, double mass, double sigma)
Definition: BPHOniaToMuMuBuilder.cc:243
DiDispStaMuonMonitor_cfi.pt
pt
Definition: DiDispStaMuonMonitor_cfi.py:39
recoSelectForWrite_cfi.probMin
probMin
Definition: recoSelectForWrite_cfi.py:8
ptMin
constexpr float ptMin
Definition: PhotonIDValueMapProducer.cc:155
BPHOniaToMuMuBuilder::setNotUpdated
void setNotUpdated()
Definition: BPHOniaToMuMuBuilder.cc:234
BPHOniaToMuMuBuilder::OniaParameters::updated
bool updated
Definition: BPHOniaToMuMuBuilder.h:111
BPHMomentumSelect
Definition: BPHMomentumSelect.h:29
BPHOniaToMuMuBuilder::OniaParameters::massSel
BPHMassSelect * massSel
Definition: BPHOniaToMuMuBuilder.h:107
BPHOniaToMuMuBuilder::setPtMin
void setPtMin(oniaType type, double pt)
set cuts
Definition: BPHOniaToMuMuBuilder.cc:155
BPHOniaToMuMuBuilder::Ups
Definition: BPHOniaToMuMuBuilder.h:46
DDAxes::x
BPHOniaToMuMuBuilder::OniaParameters::mass
double mass
Definition: BPHOniaToMuMuBuilder.h:109
BPHOniaToMuMuBuilder::getConstrSigma
double getConstrSigma(oniaType type) const
Definition: BPHOniaToMuMuBuilder.cc:229
BPHOniaToMuMuBuilder::getList
std::vector< BPHPlusMinusConstCandPtr > getList(oniaType type, BPHRecoSelect *dSel=nullptr, BPHMomentumSelect *mSel=nullptr, BPHVertexSelect *vSel=nullptr, BPHFitSelect *kSel=nullptr)
Definition: BPHOniaToMuMuBuilder.cc:110
BPHOniaToMuMuBuilder::getPtMin
double getPtMin(oniaType type) const
get current cuts
Definition: BPHOniaToMuMuBuilder.cc:199
BPHOniaToMuMuBuilder::setMassMax
void setMassMax(oniaType type, double m)
Definition: BPHOniaToMuMuBuilder.cc:176
BPHOniaToMuMuBuilder::Ups2
Definition: BPHOniaToMuMuBuilder.h:46
BPHOniaToMuMuBuilder::Phi
Definition: BPHOniaToMuMuBuilder.h:46
BPHOniaToMuMuBuilder::evSetup
const edm::EventSetup * evSetup
Definition: BPHOniaToMuMuBuilder.h:100
BPHMuonEtaSelect
Definition: BPHMuonEtaSelect.h:30
PVValHelper::eta
Definition: PVValidationHelpers.h:70
visualization-live-secondInstance_cfg.m
m
Definition: visualization-live-secondInstance_cfg.py:78
BPHOniaToMuMuBuilder
Definition: BPHOniaToMuMuBuilder.h:44
BPHOniaToMuMuBuilder::OniaParameters::sigma
double sigma
Definition: BPHOniaToMuMuBuilder.h:110
BPHMassSelect
Definition: BPHMassSelect.h:31
BPHOniaToMuMuBuilder::getProbMin
double getProbMin(oniaType type) const
Definition: BPHOniaToMuMuBuilder.cc:219
BPHOniaToMuMuBuilder::getMassMax
double getMassMax(oniaType type) const
Definition: BPHOniaToMuMuBuilder.cc:214
BPHOniaToMuMuBuilder::getMassMin
double getMassMin(oniaType type) const
Definition: BPHOniaToMuMuBuilder.cc:209
AlCaHLTBitMon_ParallelJobs.p
def p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
BPHOniaToMuMuBuilder::oniaList
std::map< oniaType, std::vector< BPHPlusMinusConstCandPtr > > oniaList
Definition: BPHOniaToMuMuBuilder.h:116
BPHOniaToMuMuBuilder::fullList
std::vector< BPHPlusMinusConstCandPtr > fullList
Definition: BPHOniaToMuMuBuilder.h:117
Event.h
type
type
Definition: SiPixelVCal_PayloadInspector.cc:39
BPHOniaToMuMuBuilder::negCollection
const BPHRecoBuilder::BPHGenericCollection * negCollection
Definition: BPHOniaToMuMuBuilder.h:102
BPHOniaToMuMuBuilder::oniaType
oniaType
Definition: BPHOniaToMuMuBuilder.h:46
cand
Definition: decayParser.h:32
BPHMuonPtSelect
Definition: BPHMuonPtSelect.h:30
BPHOniaToMuMuBuilder::setMassMin
void setMassMin(oniaType type, double m)
Definition: BPHOniaToMuMuBuilder.cc:169
BPHVertexSelect
Definition: BPHVertexSelect.h:29
BPHOniaToMuMuBuilder::setConstr
void setConstr(oniaType type, double mass, double sigma)
Definition: BPHOniaToMuMuBuilder.cc:190
BPHOniaToMuMuBuilder::OniaParameters::chi2Sel
BPHChi2Select * chi2Sel
Definition: BPHOniaToMuMuBuilder.h:108
edm::EventSetup
Definition: EventSetup.h:58
BPHChi2Select
Definition: BPHChi2Select.h:31
BPHOniaToMuMuBuilder::setProbMin
void setProbMin(oniaType type, double p)
Definition: BPHOniaToMuMuBuilder.cc:183
BPHPlusMinusConstCandPtr
BPHGenericPtr< const BPHPlusMinusCandidate >::type BPHPlusMinusConstCandPtr
Definition: BPHPlusMinusCandidatePtr.h:9
BPHOniaToMuMuBuilder::muPosName
std::string muPosName
Definition: BPHOniaToMuMuBuilder.h:97
BPHRecoBuilder.h
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
BPHOniaToMuMuBuilder::getEtaMax
double getEtaMax(oniaType type) const
Definition: BPHOniaToMuMuBuilder.cc:204
BPHRecoBuilder::BPHGenericCollection
Definition: BPHRecoBuilder.h:70
BPHOniaToMuMuBuilder::operator=
BPHOniaToMuMuBuilder & operator=(const BPHOniaToMuMuBuilder &x)=delete
BPHPlusMinusCandidate.h
BPHOniaToMuMuBuilder::posCollection
const BPHRecoBuilder::BPHGenericCollection * posCollection
Definition: BPHOniaToMuMuBuilder.h:101
BPHOniaToMuMuBuilder::Psi2
Definition: BPHOniaToMuMuBuilder.h:46
BPHOniaToMuMuBuilder::build
std::vector< BPHPlusMinusConstCandPtr > build()
build resonance candidates
Definition: BPHOniaToMuMuBuilder.cc:74
BPHRecoCandidate.h
EgHLTOffHistBins_cfi.mass
mass
Definition: EgHLTOffHistBins_cfi.py:34
ALCARECOTkAlBeamHalo_cff.etaMax
etaMax
Definition: ALCARECOTkAlBeamHalo_cff.py:33
BPHOniaToMuMuBuilder::oniaPar
std::map< oniaType, OniaParameters > oniaPar
Definition: BPHOniaToMuMuBuilder.h:115
BPHOniaToMuMuBuilder::setEtaMax
void setEtaMax(oniaType type, double eta)
Definition: BPHOniaToMuMuBuilder.cc:162
BPHOniaToMuMuBuilder::OniaParameters::etaSel
BPHMuonEtaSelect * etaSel
Definition: BPHOniaToMuMuBuilder.h:106
BPHOniaToMuMuBuilder::extractList
void extractList(oniaType type)
Definition: BPHOniaToMuMuBuilder.cc:262
BPHRecoCandidate
Definition: BPHRecoCandidate.h:46
BPHOniaToMuMuBuilder::~BPHOniaToMuMuBuilder
virtual ~BPHOniaToMuMuBuilder()
Definition: BPHOniaToMuMuBuilder.cc:59
BPHOniaToMuMuBuilder::getOriginalCandidate
BPHPlusMinusConstCandPtr getOriginalCandidate(const BPHRecoCandidate &cand)
Definition: BPHOniaToMuMuBuilder.cc:137
BPHOniaToMuMuBuilder::muNegName
std::string muNegName
Definition: BPHOniaToMuMuBuilder.h:98
recoSelectForWrite_cfi.massMax
massMax
Definition: recoSelectForWrite_cfi.py:7
recoSelectForWrite_cfi.massMin
massMin
Definition: recoSelectForWrite_cfi.py:6
BPHOniaToMuMuBuilder::Ups1
Definition: BPHOniaToMuMuBuilder.h:46