CMS 3D CMS Logo

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

#include <GsfVertexUpdator.h>

Inheritance diagram for GsfVertexUpdator:
VertexUpdator< 5 >

Public Types

typedef VertexTrack
< 5 >::RefCountedLinearizedTrackState 
RefCountedLinearizedTrackState
 
typedef CachingVertex
< 5 >::RefCountedVertexTrack 
RefCountedVertexTrack
 
- Public Types inherited from VertexUpdator< 5 >
typedef CachingVertex< N >
::RefCountedVertexTrack 
RefCountedVertexTrack
 

Public Member Functions

CachingVertex< 5 > add (const CachingVertex< 5 > &oldVertex, const RefCountedVertexTrack track) const
 
VertexUpdator< 5 > * clone () const
 
 GsfVertexUpdator (bool limit=false, const GsfVertexMerger *merger=0)
 
CachingVertex< 5 > remove (const CachingVertex< 5 > &oldVertex, const RefCountedVertexTrack track) const
 
- Public Member Functions inherited from VertexUpdator< 5 >
virtual CachingVertex< Nadd (const CachingVertex< N > &v, const typename CachingVertex< N >::RefCountedVertexTrack t) const =0
 
virtual CachingVertex< Nremove (const CachingVertex< N > &v, const typename CachingVertex< N >::RefCountedVertexTrack t) const =0
 
 VertexUpdator ()
 
virtual ~VertexUpdator ()
 

Private Types

typedef std::vector
< RefCountedLinearizedTrackState
LTC
 
typedef std::pair< VertexState,
double > 
VertexChi2Pair
 
typedef std::pair< VertexState,
WeightChi2Pair
VertexComponent
 
typedef std::vector< VertexStateVSC
 
typedef std::pair< double, double > WeightChi2Pair
 

Private Member Functions

VertexChi2Pair assembleVertexComponents (const std::vector< VertexComponent > &newVertexComponents) const
 
VertexComponent createNewComponent (const VertexState &oldVertex, const RefCountedLinearizedTrackState linTrack, float weight, int sign) const
 

Private Attributes

KalmanVertexUpdator< 5 > kalmanVertexUpdator
 
bool limitComponents
 
DeepCopyPointerByClone
< GsfVertexMerger
theMerger
 
GsfVertexWeightCalculator theWeightCalculator
 

Detailed Description

Vertex updator for the Gaussian Sum vertex filter. (c.f. Th.Speer & R. Fruewirth, Comp.Phys.Comm 174, 935 (2006) )

Definition at line 14 of file GsfVertexUpdator.h.

Member Typedef Documentation

Definition at line 51 of file GsfVertexUpdator.h.

Definition at line 19 of file GsfVertexUpdator.h.

Definition at line 18 of file GsfVertexUpdator.h.

typedef std::pair<VertexState, double> GsfVertexUpdator::VertexChi2Pair
private

Definition at line 54 of file GsfVertexUpdator.h.

Definition at line 53 of file GsfVertexUpdator.h.

typedef std::vector<VertexState> GsfVertexUpdator::VSC
private

Definition at line 50 of file GsfVertexUpdator.h.

typedef std::pair<double, double> GsfVertexUpdator::WeightChi2Pair
private

Definition at line 52 of file GsfVertexUpdator.h.

Constructor & Destructor Documentation

GsfVertexUpdator::GsfVertexUpdator ( bool  limit = false,
const GsfVertexMerger merger = 0 
)

Definition at line 6 of file GsfVertexUpdator.cc.

Referenced by clone().

Member Function Documentation

CachingVertex< 5 > GsfVertexUpdator::add ( const CachingVertex< 5 > &  oldVertex,
const RefCountedVertexTrack  track 
) const

Method to add a track to an existing CachingVertex An invalid vertex is returned in case of problems during the update.

Definition at line 13 of file GsfVertexUpdator.cc.

Referenced by counter.Counter::register().

GsfVertexUpdator::VertexChi2Pair GsfVertexUpdator::assembleVertexComponents ( const std::vector< VertexComponent > &  newVertexComponents) const
private

Definition at line 134 of file GsfVertexUpdator.cc.

VertexUpdator<5>* GsfVertexUpdator::clone ( void  ) const
inlinevirtual

Clone method

Implements VertexUpdator< 5 >.

Definition at line 42 of file GsfVertexUpdator.h.

References GsfVertexUpdator().

43  {
44  return new GsfVertexUpdator(* this);
45  }
GsfVertexUpdator(bool limit=false, const GsfVertexMerger *merger=0)
GsfVertexUpdator::VertexComponent GsfVertexUpdator::createNewComponent ( const VertexState oldVertex,
const RefCountedLinearizedTrackState  linTrack,
float  weight,
int  sign 
) const
private

Where one component of the previous vertex gets updated with one component of the track.

Definition at line 104 of file GsfVertexUpdator.cc.

CachingVertex< 5 > GsfVertexUpdator::remove ( const CachingVertex< 5 > &  oldVertex,
const RefCountedVertexTrack  track 
) const

Method removing already used VertexTrack from existing CachingVertex This method is not yet implemented.

Definition at line 90 of file GsfVertexUpdator.cc.

Member Data Documentation

KalmanVertexUpdator<5> GsfVertexUpdator::kalmanVertexUpdator
private

Definition at line 64 of file GsfVertexUpdator.h.

bool GsfVertexUpdator::limitComponents
private

Definition at line 62 of file GsfVertexUpdator.h.

DeepCopyPointerByClone<GsfVertexMerger> GsfVertexUpdator::theMerger
private

Definition at line 63 of file GsfVertexUpdator.h.

GsfVertexWeightCalculator GsfVertexUpdator::theWeightCalculator
private

Definition at line 65 of file GsfVertexUpdator.h.