Get track history and classify it in function of their . More...
#include <VertexClassifier.h>
Classes | |
struct | GeneratedPrimaryVertex |
Auxiliary class holding simulated primary vertices. More... | |
Public Types | |
typedef VertexCategories | Categories |
Type to the associate category. More... | |
Public Types inherited from VertexCategories | |
enum | Category { Fake = 0, Reconstructed = Fake, SignalEvent, BWeakDecay, CWeakDecay, TauDecay, KsDecay, LambdaDecay, JpsiDecay, XiDecay, OmegaDecay, SigmaPlusDecay, SigmaMinusDecay, LongLivedDecay, KnownProcess, UndefinedProcess, UnknownProcess, PrimaryProcess, HadronicProcess, DecayProcess, ComptonProcess, AnnihilationProcess, EIoniProcess, HIoniProcess, MuIoniProcess, PhotonProcess, MuPairProdProcess, ConversionsProcess, EBremProcess, SynchrotronRadiationProcess, MuBremProcess, MuNuclProcess, PrimaryVertex, SecondaryVertex, TertiaryVertex, TierciaryVertex = TertiaryVertex, Unknown } |
Categories available to vertexes. More... | |
typedef std::vector< bool > | Flags |
Main types associated to the class. More... | |
Public Member Functions | |
VertexClassifier const & | evaluate (reco::VertexBaseRef const &) |
Classify the RecoVertex in categories. More... | |
VertexClassifier const & | evaluate (TrackingVertexRef const &) |
Classify the TrackingVertex in categories. More... | |
VertexClassifier const & | evaluate (reco::VertexRef const &vertex) |
Classify the RecoVertex in categories. More... | |
VertexHistory const & | history () const |
Returns a reference to the vertex history used in the classification. More... | |
virtual void | newEvent (edm::Event const &, edm::EventSetup const &) |
Pre-process event information (for accessing reconstraction information) More... | |
VertexClassifier (edm::ParameterSet const &pset, edm::ConsumesCollector &&) | |
Constructor by ParameterSet. More... | |
virtual | ~VertexClassifier () |
Public Member Functions inherited from VertexCategories | |
const Flags & | flags () const |
Returns flags with the category descriptions. More... | |
bool | is (Category category) const |
Returns track flag for a given category. More... | |
VertexCategories () | |
Void constructor. More... | |
Private Member Functions | |
void | genPrimaryVertices () |
bool | isCharged (const HepMC::GenParticle *) |
bool | isFinalstateParticle (const HepMC::GenParticle *) |
void | processesAtGenerator () |
Get all the information related to decay process. More... | |
void | processesAtSimulation () |
Get information about conversion and other interactions. More... | |
void | reconstructionInformation (reco::TrackBaseRef const &) |
Get reconstruction information. More... | |
void | simulationInformation () |
Get all the information related to the simulation details. More... | |
void | vertexInformation () |
Get geometrical information about the vertices. More... | |
Private Attributes | |
const G4toCMSLegacyProcTypeMap | g4toCMSProcMap_ |
std::vector< GeneratedPrimaryVertex > | genpvs_ |
const edm::InputTag | hepMCLabel_ |
double | longLivedDecayLength_ |
edm::Handle< edm::HepMCProduct > | mcInformation_ |
edm::ESHandle< ParticleDataTable > | particleDataTable_ |
VertexHistory | tracer_ |
double | vertexClusteringDistance_ |
Additional Inherited Members | |
Static Public Attributes inherited from VertexCategories | |
static const char *const | Names [] |
Name of the different categories. More... | |
Protected Member Functions inherited from VertexCategories | |
void | reset () |
Reset the categories flags. More... | |
void | unknownVertex () |
Protected Attributes inherited from VertexCategories | |
Flags | flags_ |
Flag containers. More... | |
Get track history and classify it in function of their .
Definition at line 18 of file VertexClassifier.h.
Type to the associate category.
Definition at line 21 of file VertexClassifier.h.
VertexClassifier::VertexClassifier | ( | edm::ParameterSet const & | pset, |
edm::ConsumesCollector && | collector | ||
) |
Constructor by ParameterSet.
Definition at line 18 of file VertexClassifier.cc.
References HistoryBase::depth(), edm::ParameterSet::getUntrackedParameter(), hepMCLabel_, longLivedDecayLength_, tracer_, and vertexClusteringDistance_.
|
inlinevirtual |
VertexClassifier const & VertexClassifier::evaluate | ( | reco::VertexBaseRef const & | vertex | ) |
Classify the RecoVertex in categories.
Definition at line 47 of file VertexClassifier.cc.
References VertexHistory::evaluate(), VertexCategories::Fake, VertexCategories::flags_, processesAtGenerator(), processesAtSimulation(), VertexCategories::reset(), simulationInformation(), tracer_, VertexCategories::unknownVertex(), and vertexInformation().
Referenced by VertexHistoryAnalyzer::analyze(), VertexClassifierByProxy< reco::SecondaryVertexTagInfoCollection >::evaluate(), and ~VertexClassifier().
VertexClassifier const & VertexClassifier::evaluate | ( | TrackingVertexRef const & | vertex | ) |
Classify the TrackingVertex in categories.
Definition at line 73 of file VertexClassifier.cc.
References VertexHistory::evaluate(), VertexCategories::flags_, edm::RefToBase< T >::isNonnull(), processesAtGenerator(), processesAtSimulation(), VertexCategories::Reconstructed, VertexHistory::recoVertex(), VertexCategories::reset(), simulationInformation(), tracer_, VertexCategories::unknownVertex(), and vertexInformation().
|
inline |
Classify the RecoVertex in categories.
Definition at line 38 of file VertexClassifier.h.
References evaluate().
Referenced by evaluate().
|
private |
Definition at line 381 of file VertexClassifier.cc.
References funct::abs(), SoftLeptonByDistance_cfi::distance, spr::find(), genpvs_, edm::HepMCProduct::GetEvent(), training_settings::idx, isCharged(), isFinalstateParticle(), funct::m, mcInformation_, parents, funct::pow(), MetAnalyzer::pv(), mathSSE::sqrt(), and vertexClusteringDistance_.
Referenced by newEvent().
|
inline |
Returns a reference to the vertex history used in the classification.
Definition at line 41 of file VertexClassifier.h.
References tracer_.
Referenced by VertexHistoryAnalyzer::analyze(), recoBSVTagInfoValidationAnalyzer::analyze(), and SVTagInfoValidationAnalyzer::analyze().
|
private |
Definition at line 371 of file VertexClassifier.cc.
References particleDataTable_.
Referenced by genPrimaryVertices().
|
private |
|
virtual |
Pre-process event information (for accessing reconstraction information)
Reimplemented in VertexClassifierByProxy< Collection >, and VertexClassifierByProxy< reco::SecondaryVertexTagInfoCollection >.
Definition at line 33 of file VertexClassifier.cc.
References genPrimaryVertices(), edm::EventSetup::getData(), hepMCLabel_, mcInformation_, VertexHistory::newEvent(), particleDataTable_, and tracer_.
Referenced by VertexHistoryAnalyzer::analyze(), VertexClassifierByProxy< reco::SecondaryVertexTagInfoCollection >::newEvent(), and ~VertexClassifier().
|
private |
Get all the information related to decay process.
Definition at line 111 of file VertexClassifier.cc.
References funct::abs(), VertexCategories::BWeakDecay, VertexCategories::CWeakDecay, VertexCategories::flags_, HistoryBase::genVertexTrail(), VertexCategories::JpsiDecay, VertexCategories::KsDecay, VertexCategories::LambdaDecay, VertexCategories::LongLivedDecay, longLivedDecayLength_, VertexCategories::OmegaDecay, parents, particleDataTable_, EgammaObjectsElectrons_cfi::particleID, source_particleGun_cfi::ParticleID, BPhysicsValidation_cfi::pdgid, VertexCategories::SigmaMinusDecay, VertexCategories::SigmaPlusDecay, tracer_, update, and VertexCategories::XiDecay.
Referenced by evaluate().
|
private |
Get information about conversion and other interactions.
Definition at line 159 of file VertexClassifier.cc.
References funct::abs(), CMS::Annihilation, VertexCategories::AnnihilationProcess, VertexCategories::BWeakDecay, CMS::Compton, VertexCategories::ComptonProcess, CMS::Conversions, VertexCategories::ConversionsProcess, VertexCategories::CWeakDecay, CMS::Decay, VertexCategories::DecayProcess, CMS::EBrem, VertexCategories::EBremProcess, CMS::EIoni, VertexCategories::EIoniProcess, RemoveAddSevLevel::flag, VertexCategories::flags_, g4toCMSProcMap_, CMS::Hadronic, VertexCategories::HadronicProcess, CMS::HIoni, VertexCategories::HIoniProcess, VertexCategories::JpsiDecay, VertexCategories::KnownProcess, VertexCategories::KsDecay, VertexCategories::LambdaDecay, VertexCategories::LongLivedDecay, longLivedDecayLength_, CMS::MuBrem, VertexCategories::MuBremProcess, CMS::MuIoni, VertexCategories::MuIoniProcess, CMS::MuNucl, VertexCategories::MuNuclProcess, CMS::MuPairProd, VertexCategories::MuPairProdProcess, VertexCategories::OmegaDecay, particleDataTable_, EgammaObjectsElectrons_cfi::particleID, source_particleGun_cfi::ParticleID, BPhysicsValidation_cfi::pdgid, CMS::Photon, VertexCategories::PhotonProcess, CMS::Primary, VertexCategories::PrimaryProcess, LaserDQM_cfg::process, G4toCMSLegacyProcTypeMap::processId(), VertexCategories::SigmaMinusDecay, VertexCategories::SigmaPlusDecay, HistoryBase::simVertexTrail(), CMS::SynchrotronRadiation, VertexCategories::SynchrotronRadiationProcess, tracer_, CMS::Undefined, VertexCategories::UndefinedProcess, CMS::Unknown, VertexCategories::UnknownProcess, update, and VertexCategories::XiDecay.
Referenced by evaluate().
|
private |
Get reconstruction information.
|
private |
Get all the information related to the simulation details.
Definition at line 104 of file VertexClassifier.cc.
References EncodedEventId::bunchCrossing(), EncodedEventId::event(), VertexCategories::flags_, VertexCategories::SignalEvent, HistoryBase::simVertex(), and tracer_.
Referenced by evaluate().
|
private |
Get geometrical information about the vertices.
Definition at line 256 of file VertexClassifier.cc.
References fastPrimaryVertexProducer_cfi::clusters, hgcalValidationTPG_cfi::Clusters, SoftLeptonByDistance_cfi::distance, VertexCategories::flags_, genpvs_, HistoryBase::genVertexTrail(), AlCaHLTBitMon_ParallelJobs::p, funct::pow(), VertexCategories::PrimaryVertex, VertexCategories::SecondaryVertex, HistoryBase::simVertexTrail(), mathSSE::sqrt(), VertexCategories::TertiaryVertex, tracer_, vertexClusteringDistance_, VertexClassifier::GeneratedPrimaryVertex::x, VertexClassifier::GeneratedPrimaryVertex::y, and VertexClassifier::GeneratedPrimaryVertex::z.
Referenced by evaluate().
|
private |
Definition at line 46 of file VertexClassifier.h.
Referenced by processesAtSimulation().
|
private |
Definition at line 89 of file VertexClassifier.h.
Referenced by genPrimaryVertices(), and vertexInformation().
|
private |
Definition at line 48 of file VertexClassifier.h.
Referenced by newEvent(), and VertexClassifier().
|
private |
Definition at line 50 of file VertexClassifier.h.
Referenced by processesAtGenerator(), processesAtSimulation(), and VertexClassifier().
|
private |
Definition at line 53 of file VertexClassifier.h.
Referenced by genPrimaryVertices(), and newEvent().
|
private |
Definition at line 55 of file VertexClassifier.h.
Referenced by isCharged(), newEvent(), processesAtGenerator(), and processesAtSimulation().
|
private |
Definition at line 44 of file VertexClassifier.h.
Referenced by evaluate(), history(), newEvent(), processesAtGenerator(), processesAtSimulation(), simulationInformation(), VertexClassifier(), and vertexInformation().
|
private |
Definition at line 51 of file VertexClassifier.h.
Referenced by genPrimaryVertices(), VertexClassifier(), and vertexInformation().