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 > &prims, const std::vector< reco::TransientTrack > &secs, const reco::BeamSpot &s) 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
 
 ~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.

54  : theRector(o.theRector->clone()), theCheater(o.theCheater) {}

◆ ~ConfigurableMultiVertexFitter()

ConfigurableMultiVertexFitter::~ConfigurableMultiVertexFitter ( )
override

Definition at line 48 of file ConfigurableMultiVertexFitter.cc.

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

References theRector.

Member Function Documentation

◆ clone()

ConfigurableMultiVertexFitter * ConfigurableMultiVertexFitter::clone ( void  ) const
overridevirtual

Implements AbstractConfReconstructor.

Definition at line 56 of file ConfigurableMultiVertexFitter.cc.

56  {
57  return new ConfigurableMultiVertexFitter(*this);
58 }

References ConfigurableMultiVertexFitter().

◆ 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.

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 }

References visualization-live-secondInstance_cfg::m, dqmiodumpmetadata::n, filterRecHits_cfg::schedule, theCheater, and 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 > &  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. \paramname primaries Tracks that cannot come from a secondary vertex (but can, in principle, be non-primaries, also). \paramname tracks These are the tracks that are of unknown origin. These tracks are subjected to pattern recognition. \paramname spot A beamspot constraint is mandatory in this method.

Reimplemented from VertexReconstructor.

Definition at line 65 of file ConfigurableMultiVertexFitter.cc.

67  {
68  return theRector->vertices(prims, secs, s);
69 }

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

◆ vertices() [2/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.

71  {
72  return theRector->vertices(t);
73 }

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

◆ vertices() [3/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.

61  {
62  return theRector->vertices(t, s);
63 }

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

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
MultiVertexReconstructor
Definition: MultiVertexReconstructor.h:12
MultiVertexBSeeder
Definition: MultiVertexBSeeder.h:12
dqmiodumpmetadata.n
n
Definition: dqmiodumpmetadata.py:28
ConfigurableMultiVertexFitter::theCheater
int theCheater
Definition: ConfigurableMultiVertexFitter.h:37
EcalTangentSkim_cfg.o
o
Definition: EcalTangentSkim_cfg.py:36
ConfigurableMultiVertexFitter::theRector
const MultiVertexReconstructor * theRector
Definition: ConfigurableMultiVertexFitter.h:36
alignCSCRings.s
s
Definition: alignCSCRings.py:92
visualization-live-secondInstance_cfg.m
m
Definition: visualization-live-secondInstance_cfg.py:72
OrderedSet.t
t
Definition: OrderedSet.py:90
edm::ParameterSet
Definition: ParameterSet.h:36
AnnealingSchedule
Definition: AnnealingSchedule.h:6
ConfigurableMultiVertexFitter::ConfigurableMultiVertexFitter
ConfigurableMultiVertexFitter()
Definition: ConfigurableMultiVertexFitter.cc:31
VertexReconstructor
Definition: VertexReconstructor.h:13
MultiVertexReconstructor::vertices
std::vector< TransientVertex > vertices(const std::vector< reco::TransientTrack > &, const reco::BeamSpot &) const override
Definition: MultiVertexReconstructor.cc:67
filterRecHits_cfg.schedule
schedule
Definition: filterRecHits_cfg.py:62