CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes
VertexClassifier Class Reference

Get track history and classify it in function of their . More...

#include <VertexClassifier.h>

Inheritance diagram for VertexClassifier:
VertexCategories VertexClassifierByProxy< Collection > VertexClassifierByProxy< reco::SecondaryVertexTagInfoCollection >

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 Flagsflags () 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::HepMCProductmcInformation_
 
edm::ESHandle< ParticleDataTableparticleDataTable_
 
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...
 

Detailed Description

Get track history and classify it in function of their .

Definition at line 18 of file VertexClassifier.h.

Member Typedef Documentation

Type to the associate category.

Definition at line 24 of file VertexClassifier.h.

Constructor & Destructor Documentation

VertexClassifier::VertexClassifier ( edm::ParameterSet const &  pset,
edm::ConsumesCollector &&  collector 
)

Constructor by ParameterSet.

Definition at line 17 of file VertexClassifier.cc.

virtual VertexClassifier::~VertexClassifier ( )
inlinevirtual

Definition at line 30 of file VertexClassifier.h.

30 {}

Member Function Documentation

VertexClassifier const & VertexClassifier::evaluate ( reco::VertexBaseRef const &  vertex)

Classify the RecoVertex in categories.

Definition at line 51 of file VertexClassifier.cc.

Referenced by VertexClassifierByProxy< reco::SecondaryVertexTagInfoCollection >::evaluate(), and evaluate().

VertexClassifier const & VertexClassifier::evaluate ( TrackingVertexRef const &  vertex)

Classify the TrackingVertex in categories.

Definition at line 81 of file VertexClassifier.cc.

VertexClassifier const& VertexClassifier::evaluate ( reco::VertexRef const &  vertex)
inline

Classify the RecoVertex in categories.

Definition at line 42 of file VertexClassifier.h.

References evaluate().

43  {
44  return evaluate( reco::VertexBaseRef(vertex) );
45  }
VertexClassifier const & evaluate(reco::VertexBaseRef const &)
Classify the RecoVertex in categories.
void VertexClassifier::genPrimaryVertices ( )
private

Definition at line 457 of file VertexClassifier.cc.

VertexHistory const& VertexClassifier::history ( ) const
inline

Returns a reference to the vertex history used in the classification.

Definition at line 48 of file VertexClassifier.h.

References tracer_.

49  {
50  return tracer_;
51  }
VertexHistory tracer_
bool VertexClassifier::isCharged ( const HepMC::GenParticle *  p)
private

Definition at line 444 of file VertexClassifier.cc.

bool VertexClassifier::isFinalstateParticle ( const HepMC::GenParticle *  p)
private

Definition at line 438 of file VertexClassifier.cc.

void VertexClassifier::newEvent ( edm::Event const &  event,
edm::EventSetup const &  setup 
)
virtual

Pre-process event information (for accessing reconstraction information)

Reimplemented in VertexClassifierByProxy< Collection >, and VertexClassifierByProxy< reco::SecondaryVertexTagInfoCollection >.

Definition at line 35 of file VertexClassifier.cc.

Referenced by VertexClassifierByProxy< reco::SecondaryVertexTagInfoCollection >::newEvent().

void VertexClassifier::processesAtGenerator ( )
private

Get all the information related to decay process.

Definition at line 123 of file VertexClassifier.cc.

void VertexClassifier::processesAtSimulation ( )
private

Get information about conversion and other interactions.

Definition at line 182 of file VertexClassifier.cc.

void VertexClassifier::reconstructionInformation ( reco::TrackBaseRef const &  )
private

Get reconstruction information.

void VertexClassifier::simulationInformation ( )
private

Get all the information related to the simulation details.

Definition at line 114 of file VertexClassifier.cc.

void VertexClassifier::vertexInformation ( )
private

Get geometrical information about the vertices.

Definition at line 303 of file VertexClassifier.cc.

Member Data Documentation

const G4toCMSLegacyProcTypeMap VertexClassifier::g4toCMSProcMap_
private

Definition at line 57 of file VertexClassifier.h.

std::vector<GeneratedPrimaryVertex> VertexClassifier::genpvs_
private

Definition at line 104 of file VertexClassifier.h.

const edm::InputTag VertexClassifier::hepMCLabel_
private

Definition at line 59 of file VertexClassifier.h.

double VertexClassifier::longLivedDecayLength_
private

Definition at line 61 of file VertexClassifier.h.

edm::Handle<edm::HepMCProduct> VertexClassifier::mcInformation_
private

Definition at line 64 of file VertexClassifier.h.

edm::ESHandle<ParticleDataTable> VertexClassifier::particleDataTable_
private

Definition at line 66 of file VertexClassifier.h.

VertexHistory VertexClassifier::tracer_
private

Definition at line 55 of file VertexClassifier.h.

Referenced by history().

double VertexClassifier::vertexClusteringDistance_
private

Definition at line 62 of file VertexClassifier.h.