1 #ifndef ImpactParameter_PromptTrackCountingComputer_h
2 #define ImpactParameter_PromptTrackCountingComputer_h
13 #include "Math/GenVector/VectorUtil.h"
36 if (trackQualityType ==
"any" || trackQualityType ==
"Any" || trackQualityType ==
"ANY")
45 std::multiset<float>::iterator sig;
46 unsigned int nPromptTrk = 0;
47 for (sig = significances.begin(); sig != significances.end(); sig++) {
52 return double(nPromptTrk);
59 std::multiset<float> significances;
62 return std::multiset<float>();
69 for (std::vector<reco::btag::TrackIPData>::const_iterator it = impactParameters.begin();
70 it != impactParameters.end();
81 significances.insert(((
m_ipType == 0) ? it->ip3d : it->ip2d).significance());
102 #endif // ImpactParameter_PromptTrackCountingComputer_h
const T & get(unsigned int index=0) const
reco::TrackBase::TrackQuality m_trackQuality
TrackQuality
track quality
uint32_t const *__restrict__ Quality * quality
const Container & selectedTracks() const
auto const & tracks
cannot be loose
const edm::Ref< VertexCollection > & primaryVertex() const
double m_cutMaxDistToAxis
float discriminator(const TagInfoHelper &ti) const override
double maxImpactParameterSig
void uses(unsigned int id, const std::string &label)
PromptTrackCountingComputer(const edm::ParameterSet ¶meters)
bool isNull() const
Checks for null.
const std::vector< btag::TrackIPData > & impactParameterData() const
static TrackQuality qualityByName(const std::string &name)
T getParameter(std::string const &) const
std::multiset< float > orderedSignificances(const reco::TrackIPTagInfo &tkip) const
double maxImpactParameter