CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Member Functions | Private Attributes
BPHDaughterSelect Class Reference
Inheritance diagram for BPHDaughterSelect:
BPHHistoSpecificDecay::CandidateSelect

Public Member Functions

bool accept (const pat::CompositeCandidate &cand, const reco::Vertex *pv=nullptr) const override
 
 BPHDaughterSelect (float ptMinLoose, float ptMinTight, float etaMaxLoose, float etaMaxTight, const BPHSoftMuonSelect *softMuonselector=nullptr)
 
 ~BPHDaughterSelect () override
 
- Public Member Functions inherited from BPHHistoSpecificDecay::CandidateSelect
virtual ~CandidateSelect ()
 

Static Public Member Functions

static bool accept (const pat::CompositeCandidate &cand, float ptMinLoose, float ptMinTight, float etaMaxLoose, float etaMaxTight, const reco::Vertex *pv=nullptr, const BPHSoftMuonSelect *softMuonselector=nullptr)
 

Private Attributes

float eLMax
 
float eTMax
 
float pLMin
 
float pTMin
 
const BPHSoftMuonSelectsms
 

Detailed Description

Definition at line 182 of file BPHHistoSpecificDecay.cc.

Constructor & Destructor Documentation

BPHDaughterSelect::BPHDaughterSelect ( float  ptMinLoose,
float  ptMinTight,
float  etaMaxLoose,
float  etaMaxTight,
const BPHSoftMuonSelect softMuonselector = nullptr 
)
inline

Definition at line 184 of file BPHHistoSpecificDecay.cc.

189  : pLMin(ptMinLoose), pTMin(ptMinTight), eLMax(etaMaxLoose), eTMax(etaMaxTight), sms(softMuonselector) {}
const BPHSoftMuonSelect * sms
BPHDaughterSelect::~BPHDaughterSelect ( )
inlineoverride

Definition at line 190 of file BPHHistoSpecificDecay.cc.

190 {}

Member Function Documentation

bool BPHDaughterSelect::accept ( const pat::CompositeCandidate cand,
const reco::Vertex pv = nullptr 
) const
inlineoverridevirtual

Implements BPHHistoSpecificDecay::CandidateSelect.

Definition at line 191 of file BPHHistoSpecificDecay.cc.

References accept(), and MetAnalyzer::pv().

Referenced by esMonitoring.FDJsonServer::handle_accept().

191  {
192  return accept(cand, pLMin, pTMin, eLMax, eTMax, pv, sms);
193  }
const BPHSoftMuonSelect * sms
bool accept(const pat::CompositeCandidate &cand, const reco::Vertex *pv=nullptr) const override
static bool BPHDaughterSelect::accept ( const pat::CompositeCandidate cand,
float  ptMinLoose,
float  ptMinTight,
float  etaMaxLoose,
float  etaMaxTight,
const reco::Vertex pv = nullptr,
const BPHSoftMuonSelect softMuonselector = nullptr 
)
inlinestatic

Definition at line 194 of file BPHHistoSpecificDecay.cc.

References reco::CompositeCandidate::daughter(), reco::Candidate::eta(), HLT_FULL_cff::eta1, and reco::Candidate::pt().

Referenced by esMonitoring.FDJsonServer::handle_accept().

200  {
201  const reco::Candidate* dptr0 = cand.daughter(0);
202  const reco::Candidate* dptr1 = cand.daughter(1);
203  if (dptr0 == nullptr)
204  return false;
205  if (dptr1 == nullptr)
206  return false;
207  float pt0 = dptr0->pt();
208  float pt1 = dptr1->pt();
209  if ((pt0 < ptMinLoose) || (pt1 < ptMinLoose))
210  return false;
211  if ((pt0 < ptMinTight) && (pt1 < ptMinTight))
212  return false;
213  float eta0 = fabs(dptr0->eta());
214  float eta1 = fabs(dptr1->eta());
215  if ((etaMaxLoose > 0) && ((eta0 > etaMaxLoose) || (eta1 > etaMaxLoose)))
216  return false;
217  if ((etaMaxTight > 0) && ((eta0 > etaMaxTight) && (eta1 > etaMaxTight)))
218  return false;
219  if (softMuonselector != nullptr) {
220  const reco::Vertex* pvtx = BPHUserData::getByRef<reco::Vertex>(cand, "primaryVertex");
221  if (pvtx == nullptr)
222  return false;
223  if (!softMuonselector->accept(*dptr0, pvtx))
224  return false;
225  if (!softMuonselector->accept(*dptr1, pvtx))
226  return false;
227  }
228  return true;
229  }
const Candidate * daughter(size_type) const override
return daughter at a given position, i = 0, ... numberOfDaughters() - 1 (read only mode) ...
virtual double pt() const =0
transverse momentum
bool accept(const reco::Candidate &cand, const reco::Vertex *pv) const
virtual double eta() const =0
momentum pseudorapidity

Member Data Documentation

float BPHDaughterSelect::eLMax
private

Definition at line 234 of file BPHHistoSpecificDecay.cc.

float BPHDaughterSelect::eTMax
private

Definition at line 235 of file BPHHistoSpecificDecay.cc.

float BPHDaughterSelect::pLMin
private

Definition at line 232 of file BPHHistoSpecificDecay.cc.

float BPHDaughterSelect::pTMin
private

Definition at line 233 of file BPHHistoSpecificDecay.cc.

const BPHSoftMuonSelect* BPHDaughterSelect::sms
private

Definition at line 236 of file BPHHistoSpecificDecay.cc.