Get track history and classify it in function of their . More...
#include <VertexClassifier.h>
Classes | |
struct | G4 |
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) | |
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 | |
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 * | 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 16 of file VertexClassifier.h.
Type to the associate category.
Definition at line 22 of file VertexClassifier.h.
VertexClassifier::VertexClassifier | ( | edm::ParameterSet const & | pset | ) |
Constructor by ParameterSet.
Definition at line 17 of file VertexClassifier.cc.
References HistoryBase::depth(), edm::ParameterSet::getUntrackedParameter(), longLivedDecayLength_, tracer_, and vertexClusteringDistance_.
|
inlinevirtual |
Definition at line 27 of file VertexClassifier.h.
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 evaluate().
VertexClassifier const & VertexClassifier::evaluate | ( | TrackingVertexRef const & | vertex | ) |
Classify the TrackingVertex in categories.
Definition at line 77 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 39 of file VertexClassifier.h.
References evaluate().
|
private |
Definition at line 445 of file VertexClassifier.cc.
References abs, event(), spr::find(), genpvs_, isCharged(), isFinalstateParticle(), m, mcInformation_, parents, pos, funct::pow(), python.multivaluedict::sort(), mathSSE::sqrt(), and vertexClusteringDistance_.
Referenced by newEvent().
|
inline |
Returns a reference to the vertex history used in the classification.
Definition at line 45 of file VertexClassifier.h.
References tracer_.
Referenced by VertexHistoryAnalyzer::analyze(), recoBSVTagInfoValidationAnalyzer::analyze(), and SVTagInfoValidationAnalyzer::analyze().
|
private |
Definition at line 432 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 31 of file VertexClassifier.cc.
References genPrimaryVertices(), edm::EventSetup::getData(), hepMCLabel_, mcInformation_, VertexHistory::newEvent(), particleDataTable_, and tracer_.
Referenced by VertexHistoryAnalyzer::analyze(), and VertexClassifierByProxy< reco::SecondaryVertexTagInfoCollection >::newEvent().
|
private |
Get all the information related to decay process.
Definition at line 119 of file VertexClassifier.cc.
References abs, VertexCategories::BWeakDecay, VertexCategories::CWeakDecay, VertexCategories::flags_, HistoryBase::genVertexTrail(), VertexCategories::JpsiDecay, VertexCategories::KsDecay, VertexCategories::LambdaDecay, VertexCategories::LongLivedDecay, longLivedDecayLength_, VertexCategories::OmegaDecay, parents, particleDataTable_, RecoTau_DiTaus_pt_20-420_cfg::ParticleID, VertexCategories::SigmaMinusDecay, VertexCategories::SigmaPlusDecay, tracer_, update, and VertexCategories::XiDecay.
Referenced by evaluate().
|
private |
Get information about conversion and other interactions.
Definition at line 178 of file VertexClassifier.cc.
References abs, VertexClassifier::G4::Annihilation, VertexCategories::AnnihilationProcess, VertexCategories::BWeakDecay, VertexClassifier::G4::Compton, VertexCategories::ComptonProcess, VertexClassifier::G4::Conversions, VertexCategories::ConversionsProcess, VertexCategories::CWeakDecay, VertexClassifier::G4::Decay, VertexCategories::DecayProcess, VertexClassifier::G4::EBrem, VertexCategories::EBremProcess, VertexClassifier::G4::EIoni, VertexCategories::EIoniProcess, VertexCategories::flags_, VertexClassifier::G4::Hadronic, VertexCategories::HadronicProcess, VertexClassifier::G4::HIoni, VertexCategories::HIoniProcess, VertexCategories::JpsiDecay, VertexCategories::KnownProcess, VertexCategories::KsDecay, VertexCategories::LambdaDecay, VertexCategories::LongLivedDecay, longLivedDecayLength_, VertexClassifier::G4::MuBrem, VertexCategories::MuBremProcess, VertexClassifier::G4::MuIoni, VertexCategories::MuIoniProcess, VertexClassifier::G4::MuNucl, VertexCategories::MuNuclProcess, VertexClassifier::G4::MuPairProd, VertexCategories::MuPairProdProcess, VertexCategories::OmegaDecay, particleDataTable_, RecoTau_DiTaus_pt_20-420_cfg::ParticleID, VertexClassifier::G4::Photon, VertexCategories::PhotonProcess, VertexClassifier::G4::Primary, VertexCategories::PrimaryProcess, align_tpl::process, VertexCategories::SigmaMinusDecay, VertexCategories::SigmaPlusDecay, HistoryBase::simVertexTrail(), VertexClassifier::G4::SynchrotronRadiation, VertexCategories::SynchrotronRadiationProcess, tracer_, VertexClassifier::G4::Undefined, VertexCategories::UndefinedProcess, VertexClassifier::G4::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 110 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 291 of file VertexClassifier.cc.
References VertexCategories::flags_, genpvs_, HistoryBase::genVertexTrail(), L1TEmulatorMonitor_cff::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 123 of file VertexClassifier.h.
Referenced by genPrimaryVertices(), and vertexInformation().
|
private |
Definition at line 54 of file VertexClassifier.h.
Referenced by newEvent().
|
private |
Definition at line 56 of file VertexClassifier.h.
Referenced by processesAtGenerator(), processesAtSimulation(), and VertexClassifier().
|
private |
Definition at line 83 of file VertexClassifier.h.
Referenced by genPrimaryVertices(), and newEvent().
|
private |
Definition at line 85 of file VertexClassifier.h.
Referenced by isCharged(), newEvent(), processesAtGenerator(), and processesAtSimulation().
|
private |
Definition at line 52 of file VertexClassifier.h.
Referenced by evaluate(), history(), newEvent(), processesAtGenerator(), processesAtSimulation(), simulationInformation(), VertexClassifier(), and vertexInformation().
|
private |
Definition at line 57 of file VertexClassifier.h.
Referenced by genPrimaryVertices(), VertexClassifier(), and vertexInformation().