CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Member Functions | Static Protected Member Functions | Private Member Functions | Private Attributes
BPHPlusMinusVertex Class Reference

#include <BPHPlusMinusVertex.h>

Inheritance diagram for BPHPlusMinusVertex:
BPHDecayVertex BPHDecayMomentum BPHPlusMinusCandidate

Public Member Functions

virtual const ClosestApproachInRPhicAppInRPhi () const
 compute distance of closest approach More...
 
 ~BPHPlusMinusVertex () override
 
- Public Member Functions inherited from BPHDecayVertex
const reco::TrackgetTrack (const reco::Candidate *cand) const
 get Track for a daughter More...
 
const std::string & getTrackSearchList (const reco::Candidate *cand) const
 retrieve track search list More...
 
reco::TransientTrackgetTransientTrack (const reco::Candidate *cand) const
 get TransientTrack for a daughter More...
 
const std::vector< const reco::Track * > & tracks () const
 get list of Tracks More...
 
const std::vector< reco::TransientTrack > & transientTracks () const
 get list of TransientTracks More...
 
virtual bool validTracks () const
 check for valid reconstructed vertex More...
 
virtual bool validVertex () const
 
virtual const reco::Vertexvertex () const
 get reconstructed vertex More...
 
 ~BPHDecayVertex () override
 
- Public Member Functions inherited from BPHDecayMomentum
virtual const std::vector< std::string > & compNames () const
 
virtual const pat::CompositeCandidatecomposite () const
 get a composite by the simple sum of simple particles More...
 
virtual const std::vector< BPHRecoConstCandPtr > & daughComp () const
 
virtual const std::vector< const reco::Candidate * > & daughFull () const
 
virtual const std::vector< const reco::Candidate * > & daughters () const
 
virtual const std::vector< std::string > & daugNames () const
 
virtual BPHRecoConstCandPtr getComp (const std::string &name) const
 
virtual const reco::CandidategetDaug (const std::string &name) const
 
virtual const reco::CandidateoriginalReco (const reco::Candidate *daug) const
 get the original particle from the clone More...
 
virtual ~BPHDecayMomentum ()
 

Protected Member Functions

 BPHPlusMinusVertex (const edm::EventSetup *es)
 
bool chkSize (const std::string &msg) const
 
void setNotUpdated () const override
 
- Protected Member Functions inherited from BPHDecayVertex
virtual void addV (const std::string &name, const reco::Candidate *daug, const std::string &searchList, double mass)
 
virtual void addV (const std::string &name, const BPHRecoConstCandPtr &comp)
 add a previously reconstructed particle giving it a name More...
 
 BPHDecayVertex (const edm::EventSetup *es)
 
 BPHDecayVertex (const BPHDecayVertex *ptr, const edm::EventSetup *es)
 
- Protected Member Functions inherited from BPHDecayMomentum
virtual void addP (const std::string &name, const reco::Candidate *daug, double mass=-1.0)
 
virtual void addP (const std::string &name, const BPHRecoConstCandPtr &comp)
 add a previously reconstructed particle giving it a name More...
 
 BPHDecayMomentum ()
 
 BPHDecayMomentum (const std::map< std::string, Component > &daugMap)
 
 BPHDecayMomentum (const std::map< std::string, Component > &daugMap, const std::map< std::string, BPHRecoConstCandPtr > compMap)
 
const std::vector< Component > & componentList () const
 

Static Protected Member Functions

template<class T >
static bool chkName (const T &cont, const std::string &name, const std::string &msg)
 
template<class T >
static bool chkSize (const T &cont, const std::string &msg)
 

Private Member Functions

virtual void computeApp () const
 

Private Attributes

ClosestApproachInRPhiinRPhi
 
bool oldA
 

Detailed Description

Description: class for reconstructed decay vertices to opposite charge particle pairs

Author
Paolo Ronchese INFN Padova

Definition at line 34 of file BPHPlusMinusVertex.h.

Constructor & Destructor Documentation

BPHPlusMinusVertex::~BPHPlusMinusVertex ( )
override

Constructor is protected this object can exist only as part of a derived classDestructor

Definition at line 37 of file BPHPlusMinusVertex.cc.

References inRPhi.

37 { delete inRPhi; }
ClosestApproachInRPhi * inRPhi
BPHPlusMinusVertex::BPHPlusMinusVertex ( const edm::EventSetup es)
protected

Definition at line 32 of file BPHPlusMinusVertex.cc.

32 : BPHDecayVertex(es), oldA(true), inRPhi(nullptr) {}
BPHDecayVertex(const edm::EventSetup *es)
ClosestApproachInRPhi * inRPhi

Member Function Documentation

const ClosestApproachInRPhi & BPHPlusMinusVertex::cAppInRPhi ( ) const
virtual

compute distance of closest approach

Operations

Definition at line 42 of file BPHPlusMinusVertex.cc.

References chkSize(), computeApp(), BPHDecayMomentum::daughters(), inRPhi, mps_check::msg, and oldA.

42  {
43  if (oldA)
44  computeApp();
45  if (inRPhi == nullptr) {
46  static const ClosestApproachInRPhi ca;
47  return ca;
48  }
49  return *inRPhi;
50 }
virtual void computeApp() const
ClosestApproachInRPhi * inRPhi
template<class T >
bool BPHPlusMinusVertex::chkName ( const T cont,
const std::string &  name,
const std::string &  msg 
)
staticprotected

Definition at line 73 of file BPHPlusMinusVertex.h.

73  {
74  if (cont.find(name) != cont.end())
75  return true;
76  edm::LogPrint("ParticleNotFound") << msg << ", " << name << " not found";
77  return false;
78 }
tuple msg
Definition: mps_check.py:285
cont
load Luminosity info ##
Definition: generateEDF.py:629
template<class T >
bool BPHPlusMinusVertex::chkSize ( const T cont,
const std::string &  msg 
)
staticprotected

Definition at line 81 of file BPHPlusMinusVertex.h.

References dqmiodumpmetadata::n.

Referenced by cAppInRPhi(), BPHPlusMinusCandidate::composite(), computeApp(), BPHPlusMinusCandidate::isCowboy(), and BPHPlusMinusCandidate::isSailor().

81  {
82  int n = cont.size();
83  if (n == 2)
84  return true;
85  edm::LogPrint("WrongDataSize") << msg << ", size = " << n;
86  return false;
87 }
tuple msg
Definition: mps_check.py:285
cont
load Luminosity info ##
Definition: generateEDF.py:629
bool BPHPlusMinusVertex::chkSize ( const std::string &  msg) const
protected
void BPHPlusMinusVertex::computeApp ( ) const
privatevirtual

Definition at line 60 of file BPHPlusMinusVertex.cc.

References ClosestApproachInRPhi::calculate(), chkSize(), reco::TransientTrack::impactPointTSCP(), inRPhi, mps_check::msg, oldA, TrajectoryStateClosestToPoint::theState(), and BPHDecayVertex::transientTracks().

Referenced by cAppInRPhi().

60  {
61  static const string msg = "BPHPlusMinusVertex::computeApp: incomplete, no closest approach available";
62  delete inRPhi;
63  if (!chkSize(msg)) {
64  inRPhi = nullptr;
65  return;
66  }
68  const vector<reco::TransientTrack>& ttk = transientTracks();
69  const reco::TransientTrack& ttp = ttk[0];
70  const reco::TransientTrack& ttn = ttk[1];
72  oldA = false;
73  return;
74 }
TrajectoryStateClosestToPoint impactPointTSCP() const
const FreeTrajectoryState & theState() const
static bool chkSize(const T &cont, const std::string &msg)
bool calculate(const TrajectoryStateOnSurface &sta, const TrajectoryStateOnSurface &stb) override
tuple msg
Definition: mps_check.py:285
const std::vector< reco::TransientTrack > & transientTracks() const
get list of TransientTracks
ClosestApproachInRPhi * inRPhi
void BPHPlusMinusVertex::setNotUpdated ( ) const
overrideprotectedvirtual

Reimplemented from BPHDecayVertex.

Definition at line 54 of file BPHPlusMinusVertex.cc.

References oldA, and BPHDecayVertex::setNotUpdated().

Referenced by BPHPlusMinusCandidate::setNotUpdated().

54  {
56  oldA = true;
57  return;
58 }
void setNotUpdated() const override

Member Data Documentation

ClosestApproachInRPhi* BPHPlusMinusVertex::inRPhi
mutableprivate

Definition at line 66 of file BPHPlusMinusVertex.h.

Referenced by cAppInRPhi(), computeApp(), and ~BPHPlusMinusVertex().

bool BPHPlusMinusVertex::oldA
mutableprivate

Definition at line 65 of file BPHPlusMinusVertex.h.

Referenced by cAppInRPhi(), computeApp(), and setNotUpdated().