CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
ConfigurableMultiVertexFitter Class Reference

#include <ConfigurableMultiVertexFitter.h>

Inheritance diagram for ConfigurableMultiVertexFitter:
AbstractConfReconstructor VertexReconstructor

Public Member Functions

ConfigurableMultiVertexFitterclone () const override
 
 ConfigurableMultiVertexFitter ()
 
 ConfigurableMultiVertexFitter (const ConfigurableMultiVertexFitter &o)
 
void configure (const edm::ParameterSet &) override
 
edm::ParameterSet defaults () const override
 
std::vector< TransientVertexvertices (const std::vector< reco::TransientTrack > &t) const override
 
std::vector< TransientVertexvertices (const std::vector< reco::TransientTrack > &t, const reco::BeamSpot &s) const override
 
std::vector< TransientVertexvertices (const std::vector< reco::TransientTrack > &prims, const std::vector< reco::TransientTrack > &secs, const reco::BeamSpot &s) const override
 
 ~ConfigurableMultiVertexFitter () override
 
- Public Member Functions inherited from AbstractConfReconstructor
 ~AbstractConfReconstructor () override
 
- Public Member Functions inherited from VertexReconstructor
 VertexReconstructor ()
 
virtual ~VertexReconstructor ()
 

Private Attributes

int theCheater
 
const MultiVertexReconstructortheRector
 

Detailed Description

Wrap any VertexFitter into the VertexReconstructor interface

Definition at line 12 of file ConfigurableMultiVertexFitter.h.

Constructor & Destructor Documentation

◆ ConfigurableMultiVertexFitter() [1/2]

ConfigurableMultiVertexFitter::ConfigurableMultiVertexFitter ( )

Accepted values: sigmacut: The sqrt(chi2_cut) criterion. Default: 3.0 ratio: The annealing ratio. Default: 0.25 Tini: The initial temparature. Default: 256

Definition at line 31 of file ConfigurableMultiVertexFitter.cc.

Referenced by clone().

◆ ConfigurableMultiVertexFitter() [2/2]

ConfigurableMultiVertexFitter::ConfigurableMultiVertexFitter ( const ConfigurableMultiVertexFitter o)

Definition at line 53 of file ConfigurableMultiVertexFitter.cc.

◆ ~ConfigurableMultiVertexFitter()

ConfigurableMultiVertexFitter::~ConfigurableMultiVertexFitter ( )
override

Definition at line 48 of file ConfigurableMultiVertexFitter.cc.

References theRector.

48  {
49  if (theRector)
50  delete theRector;
51 }
const MultiVertexReconstructor * theRector

Member Function Documentation

◆ clone()

ConfigurableMultiVertexFitter * ConfigurableMultiVertexFitter::clone ( void  ) const
overridevirtual

◆ configure()

void ConfigurableMultiVertexFitter::configure ( const edm::ParameterSet )
overridevirtual

The configure method configures the vertex reconstructor. It also should also write all its applied defaults back into the map,

Implements AbstractConfReconstructor.

Definition at line 34 of file ConfigurableMultiVertexFitter.cc.

References visualization-live-secondInstance_cfg::m, create_idmaps::n, produceCalibrationTree_cfg::schedule, theCheater, and theRector.

34  {
36  m.augment(mydefaults());
37  // print ( m );
38  const AnnealingSchedule* ann = schedule(m);
39  const VertexReconstructor* ini = initialiser(m.getParameter<edm::ParameterSet>("ini"));
40  if (theRector)
41  delete theRector;
42  theRector = new MultiVertexReconstructor(*ini, *ann);
43  theCheater = m.getParameter<int>("cheat");
44  delete ann;
45  delete ini;
46 }
const MultiVertexReconstructor * theRector

◆ defaults()

edm::ParameterSet ConfigurableMultiVertexFitter::defaults ( ) const
overridevirtual

Implements AbstractConfReconstructor.

Definition at line 75 of file ConfigurableMultiVertexFitter.cc.

75 { return mydefaults(); }

◆ vertices() [1/3]

std::vector< TransientVertex > ConfigurableMultiVertexFitter::vertices ( const std::vector< reco::TransientTrack > &  ) const
overridevirtual

Reconstruct vertices

Implements VertexReconstructor.

Definition at line 71 of file ConfigurableMultiVertexFitter.cc.

References submitPVValidationJobs::t, theRector, and MultiVertexReconstructor::vertices().

71  {
72  return theRector->vertices(t);
73 }
std::vector< TransientVertex > vertices(const std::vector< reco::TransientTrack > &, const reco::BeamSpot &) const override
const MultiVertexReconstructor * theRector

◆ vertices() [2/3]

std::vector< TransientVertex > ConfigurableMultiVertexFitter::vertices ( const std::vector< reco::TransientTrack > &  t,
const reco::BeamSpot  
) const
overridevirtual

Reconstruct vertices, exploiting the beamspot constraint for the primary vertex

Reimplemented from VertexReconstructor.

Definition at line 60 of file ConfigurableMultiVertexFitter.cc.

References alignCSCRings::s, submitPVValidationJobs::t, theRector, and MultiVertexReconstructor::vertices().

61  {
62  return theRector->vertices(t, s);
63 }
std::vector< TransientVertex > vertices(const std::vector< reco::TransientTrack > &, const reco::BeamSpot &) const override
const MultiVertexReconstructor * theRector

◆ vertices() [3/3]

std::vector< TransientVertex > ConfigurableMultiVertexFitter::vertices ( const std::vector< reco::TransientTrack > &  primaries,
const std::vector< reco::TransientTrack > &  tracks,
const reco::BeamSpot spot 
) const
overridevirtual

Reconstruct vertices, but exploit the fact that you know that some tracks cannot come from a secondary vertex. primaries Tracks that cannot come from a secondary vertex (but can, in principle, be non-primaries, also). tracks These are the tracks that are of unknown origin. These tracks are subjected to pattern recognition. spot A beamspot constraint is mandatory in this method.

Reimplemented from VertexReconstructor.

Definition at line 65 of file ConfigurableMultiVertexFitter.cc.

References alignCSCRings::s, theRector, and MultiVertexReconstructor::vertices().

67  {
68  return theRector->vertices(prims, secs, s);
69 }
std::vector< TransientVertex > vertices(const std::vector< reco::TransientTrack > &, const reco::BeamSpot &) const override
const MultiVertexReconstructor * theRector

Member Data Documentation

◆ theCheater

int ConfigurableMultiVertexFitter::theCheater
private

Definition at line 37 of file ConfigurableMultiVertexFitter.h.

Referenced by configure().

◆ theRector

const MultiVertexReconstructor* ConfigurableMultiVertexFitter::theRector
private