CMS 3D CMS Logo

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

#include <MultiTrajectoryStateMerger.h>

Public Member Functions

MultiTrajectoryStateMergerclone () const
 
TrajectoryStateOnSurface merge (const TrajectoryStateOnSurface &tsos) const
 
 MultiTrajectoryStateMerger (const MultiGaussianStateMerger< 5 > &merger)
 

Private Attributes

const std::shared_ptr< const MultiGaussianStateMerger< 5 > > theMultiStateMerger
 

Detailed Description

Merging of MultiTrajectoryStates - uses MultiGaussianStateMergers for the actual merging.

Definition at line 13 of file MultiTrajectoryStateMerger.h.

Constructor & Destructor Documentation

◆ MultiTrajectoryStateMerger()

MultiTrajectoryStateMerger::MultiTrajectoryStateMerger ( const MultiGaussianStateMerger< 5 > &  merger)
inline

Definition at line 15 of file MultiTrajectoryStateMerger.h.

Referenced by clone().

15 : theMultiStateMerger(merger.clone()) {}
const std::shared_ptr< const MultiGaussianStateMerger< 5 > > theMultiStateMerger
virtual MultiGaussianStateMerger * clone() const =0

Member Function Documentation

◆ clone()

MultiTrajectoryStateMerger* MultiTrajectoryStateMerger::clone ( void  ) const
inline

Definition at line 17 of file MultiTrajectoryStateMerger.h.

References MultiTrajectoryStateMerger().

17 { return new MultiTrajectoryStateMerger(*this); }
MultiTrajectoryStateMerger(const MultiGaussianStateMerger< 5 > &merger)

◆ merge()

TrajectoryStateOnSurface MultiTrajectoryStateMerger::merge ( const TrajectoryStateOnSurface tsos) const

Definition at line 4 of file MultiTrajectoryStateMerger.cc.

References gather_cfg::cout, TrajectoryStateOnSurface::isValid(), GaussianStateConversions::multiGaussianStateFromTSOS(), MultiGaussianStateTransform::multiState(), theMultiStateMerger, and GaussianStateConversions::tsosFromMultiGaussianState().

Referenced by GsfTrajectoryFitter::fitOne(), and GsfTrajectorySmoother::trajectory().

4  {
5  if (!tsos.isValid())
6  std::cout << "Merger called with invalid state" << std::endl;
10 }
Mixture of multi-variate gaussian states.
const std::shared_ptr< const MultiGaussianStateMerger< 5 > > theMultiStateMerger
TrajectoryStateOnSurface tsosFromMultiGaussianState(const MultiGaussianState< 5 > &multiState, const TrajectoryStateOnSurface &refTsos)
MultiGaussianState< N > multiState(const std::vector< MultiGaussianState< N >::Vector > &, const std::vector< MultiGaussianState< N >::Matrix > &, const std::vector< double > &)
MultiGaussianState< 5 > multiGaussianStateFromTSOS(const TrajectoryStateOnSurface &tsos)

Member Data Documentation

◆ theMultiStateMerger

const std::shared_ptr<const MultiGaussianStateMerger<5> > MultiTrajectoryStateMerger::theMultiStateMerger
private

Definition at line 20 of file MultiTrajectoryStateMerger.h.

Referenced by merge().