CMS 3D CMS Logo

MultiTrajectoryStateMerger Class Reference

Merging of MultiTrajectoryStates - uses MultiGaussianStateMergers for the actual merging. More...

#include <TrackingTools/GsfTracking/interface/MultiTrajectoryStateMerger.h>

List of all members.

Public Member Functions

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

Private Attributes

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


Detailed Description

Merging of MultiTrajectoryStates - uses MultiGaussianStateMergers for the actual merging.

Definition at line 15 of file MultiTrajectoryStateMerger.h.


Constructor & Destructor Documentation

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

Definition at line 17 of file MultiTrajectoryStateMerger.h.

Referenced by clone().

00017                                                                            :
00018     theMultiStateMerger(merger.clone()) {}
  TrajectoryStateOnSurface merge(const TrajectoryStateOnSurface& tsos) const;


Member Function Documentation

MultiTrajectoryStateMerger* MultiTrajectoryStateMerger::clone ( void   )  const [inline]

Definition at line 20 of file MultiTrajectoryStateMerger.h.

References MultiTrajectoryStateMerger().

00020                                             {
00021     return new MultiTrajectoryStateMerger(*this);
00022   }

TrajectoryStateOnSurface MultiTrajectoryStateMerger::merge ( const TrajectoryStateOnSurface tsos  )  const

Definition at line 6 of file MultiTrajectoryStateMerger.cc.

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

Referenced by GsfTrajectoryFitter::fit(), and GsfTrajectorySmoother::trajectories().

00007 {
00008   if ( !tsos.isValid() )  std::cout << "Merger called with invalid state" << std::endl;
00009   MultiGaussianState<5> multiState(GaussianStateConversions::multiGaussianStateFromTSOS(tsos));
00010   MultiGaussianState<5> mergedStates = theMultiStateMerger->merge(multiState);
00011   return GaussianStateConversions::tsosFromMultiGaussianState(mergedStates,tsos);
00012 }


Member Data Documentation

const boost::shared_ptr< const MultiGaussianStateMerger<5> > MultiTrajectoryStateMerger::theMultiStateMerger [private]

Definition at line 25 of file MultiTrajectoryStateMerger.h.

Referenced by merge().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:28:34 2009 for CMSSW by  doxygen 1.5.4