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_ |
edm::ESGetToken< ParticleDataTable, edm::DefaultRecord > | particleDataTableToken_ |
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 edm::ConsumesCollector::consumes(), HistoryBase::depth(), hepMCLabel_, longLivedDecayLength_, tracer_, and vertexClusteringDistance_.
|
inlinevirtual |
Definition at line 26 of file VertexClassifier.h.
VertexClassifier const & VertexClassifier::evaluate | ( | reco::VertexBaseRef const & | vertex | ) |
Classify the RecoVertex in categories.
Definition at line 48 of file VertexClassifier.cc.
References VertexHistory::evaluate(), VertexCategories::Fake, VertexCategories::flags_, processesAtGenerator(), processesAtSimulation(), VertexCategories::reset(), simulationInformation(), tracer_, VertexCategories::unknownVertex(), bphysicsOniaDQM_cfi::vertex, and vertexInformation().
Referenced by VertexHistoryAnalyzer::analyze(), and VertexClassifierByProxy< reco::SecondaryVertexTagInfoCollection >::evaluate().
VertexClassifier const & VertexClassifier::evaluate | ( | TrackingVertexRef const & | vertex | ) |
Classify the TrackingVertex in categories.
Definition at line 74 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(), bphysicsOniaDQM_cfi::vertex, and vertexInformation().
|
inline |
Classify the RecoVertex in categories.
Definition at line 38 of file VertexClassifier.h.
References evaluate(), and bphysicsOniaDQM_cfi::vertex.
Referenced by evaluate().
|
private |
Definition at line 382 of file VertexClassifier.cc.
References funct::abs(), HLT_2023v12_cff::distance, spr::find(), genpvs_, edm::HepMCProduct::GetEvent(), isCharged(), isFinalstateParticle(), visualization-live-secondInstance_cfg::m, mcInformation_, parents, funct::pow(), MetAnalyzer::pv(), jetUpdater_cfi::sort, 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 SVTagInfoValidationAnalyzer::analyze(), VertexHistoryAnalyzer::analyze(), and recoBSVTagInfoValidationAnalyzer::analyze().
|
private |
Definition at line 372 of file VertexClassifier.cc.
References AlCaHLTBitMon_ParallelJobs::p, and particleDataTable_.
Referenced by genPrimaryVertices().
|
private |
Definition at line 368 of file VertexClassifier.cc.
References AlCaHLTBitMon_ParallelJobs::p.
Referenced by genPrimaryVertices().
|
virtual |
Pre-process event information (for accessing reconstraction information)
Reimplemented in VertexClassifierByProxy< Collection >, and VertexClassifierByProxy< reco::SecondaryVertexTagInfoCollection >.
Definition at line 34 of file VertexClassifier.cc.
References genPrimaryVertices(), hepMCLabel_, mcInformation_, VertexHistory::newEvent(), particleDataTable_, particleDataTableToken_, singleTopDQM_cfi::setup, and tracer_.
Referenced by VertexHistoryAnalyzer::analyze(), and VertexClassifierByProxy< reco::SecondaryVertexTagInfoCollection >::newEvent().
|
private |
Get all the information related to decay process.
Definition at line 112 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, LHEGenericFilter_cfi::ParticleID, EgammaValidation_cff::pdgid, VertexCategories::SigmaMinusDecay, VertexCategories::SigmaPlusDecay, tracer_, update, bphysicsOniaDQM_cfi::vertex, and VertexCategories::XiDecay.
Referenced by evaluate().
|
private |
Get information about conversion and other interactions.
Definition at line 160 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, LHEGenericFilter_cfi::ParticleID, EgammaValidation_cff::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 105 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 257 of file VertexClassifier.cc.
References caloTruthCellsNtuples_cff::Clusters, bsc_activity_cfg::clusters, HLT_2023v12_cff::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 90 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 56 of file VertexClassifier.h.
Referenced by newEvent().
|
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().