CMS 3D CMS Logo

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

#include <FlexibleKFFittingSmoother.h>

Inheritance diagram for FlexibleKFFittingSmoother:
TrajectoryFitter

Public Member Functions

FlexibleKFFittingSmootherclone () const
 
virtual std::vector< Trajectoryfit (const Trajectory &t) const
 
virtual std::vector< Trajectoryfit (const Trajectory &t, fitType type) const
 
virtual std::vector< Trajectoryfit (const TrajectorySeed &aSeed, const RecHitContainer &hits, const TrajectoryStateOnSurface &firstPredTsos) const
 
virtual std::vector< Trajectoryfit (const TrajectorySeed &aSeed, const RecHitContainer &hits, const TrajectoryStateOnSurface &firstPredTsos, fitType type) const
 
virtual std::vector< Trajectoryfit (const TrajectorySeed &aSeed, const RecHitContainer &hits) const
 
virtual std::vector< Trajectoryfit (const TrajectorySeed &aSeed, const RecHitContainer &hits, fitType type) const
 
 FlexibleKFFittingSmoother (const TrajectoryFitter &standardFitter, const TrajectoryFitter &looperFitter)
 constructor with predefined fitter and smoother and propagator More...
 
virtual ~FlexibleKFFittingSmoother ()
 
- Public Member Functions inherited from TrajectoryFitter
virtual ~TrajectoryFitter ()
 

Private Attributes

const TrajectoryFittertheLooperFitter
 
const TrajectoryFittertheStandardFitter
 

Additional Inherited Members

- Public Types inherited from TrajectoryFitter
enum  fitType { standard =0, looper =1 }
 
typedef Trajectory::RecHitContainer RecHitContainer
 
typedef TrajectoryFitterRecord Record
 

Detailed Description

Combine different FittingSmoother in a single module

Date:
2012/03/06 16:35:56
Revision:
1.1
Author
mangano

Definition at line 14 of file FlexibleKFFittingSmoother.h.

Constructor & Destructor Documentation

FlexibleKFFittingSmoother::FlexibleKFFittingSmoother ( const TrajectoryFitter standardFitter,
const TrajectoryFitter looperFitter 
)
inline

constructor with predefined fitter and smoother and propagator

Definition at line 18 of file FlexibleKFFittingSmoother.h.

Referenced by clone().

19  :
20  theStandardFitter(standardFitter.clone()),
21  theLooperFitter(looperFitter.clone()) {}
const TrajectoryFitter * theLooperFitter
const TrajectoryFitter * theStandardFitter
virtual TrajectoryFitter * clone() const =0
FlexibleKFFittingSmoother::~FlexibleKFFittingSmoother ( )
virtual

Definition at line 5 of file FlexibleKFFittingSmoother.cc.

6 {
7  delete theStandardFitter;
8  delete theLooperFitter;
9 }
const TrajectoryFitter * theLooperFitter
const TrajectoryFitter * theStandardFitter

Member Function Documentation

FlexibleKFFittingSmoother* FlexibleKFFittingSmoother::clone ( void  ) const
inlinevirtual

Implements TrajectoryFitter.

Definition at line 55 of file FlexibleKFFittingSmoother.h.

References FlexibleKFFittingSmoother(), theLooperFitter, and theStandardFitter.

55  {
57  }
const TrajectoryFitter * theLooperFitter
const TrajectoryFitter * theStandardFitter
FlexibleKFFittingSmoother(const TrajectoryFitter &standardFitter, const TrajectoryFitter &looperFitter)
constructor with predefined fitter and smoother and propagator
virtual std::vector<Trajectory> FlexibleKFFittingSmoother::fit ( const Trajectory t) const
inlinevirtual

Implements TrajectoryFitter.

Definition at line 25 of file FlexibleKFFittingSmoother.h.

References TrajectoryFitter::fit(), and theStandardFitter.

25  {
26  return theStandardFitter->fit(t);
27  }
const TrajectoryFitter * theStandardFitter
virtual std::vector< Trajectory > fit(const Trajectory &) const =0
std::vector< Trajectory > FlexibleKFFittingSmoother::fit ( const Trajectory t,
fitType  type 
) const
virtual

Reimplemented from TrajectoryFitter.

Definition at line 12 of file FlexibleKFFittingSmoother.cc.

References AlignmentProducer_cff::looper.

12  {
13  if(type==standard)
14  return theStandardFitter->fit(t);
15  else if(type==looper)
16  return theLooperFitter->fit(t);
17  else
18  return std::vector<Trajectory>();
19 }
type
Definition: HCALResponse.h:22
const TrajectoryFitter * theLooperFitter
const TrajectoryFitter * theStandardFitter
virtual std::vector< Trajectory > fit(const Trajectory &) const =0
virtual std::vector<Trajectory> FlexibleKFFittingSmoother::fit ( const TrajectorySeed aSeed,
const RecHitContainer hits,
const TrajectoryStateOnSurface firstPredTsos 
) const
inlinevirtual

Implements TrajectoryFitter.

Definition at line 32 of file FlexibleKFFittingSmoother.h.

References TrajectoryFitter::fit(), and theStandardFitter.

34  {
35  return theStandardFitter->fit(aSeed,hits,firstPredTsos);
36  }
const TrajectoryFitter * theStandardFitter
virtual std::vector< Trajectory > fit(const Trajectory &) const =0
std::vector< Trajectory > FlexibleKFFittingSmoother::fit ( const TrajectorySeed aSeed,
const RecHitContainer hits,
const TrajectoryStateOnSurface firstPredTsos,
fitType  type 
) const
virtual

Reimplemented from TrajectoryFitter.

Definition at line 24 of file FlexibleKFFittingSmoother.cc.

References AlignmentProducer_cff::looper.

27  {
28  if(type==standard)
29  return theStandardFitter->fit(aSeed,hits,firstPredTsos);
30  else if(type==looper)
31  return theLooperFitter->fit(aSeed,hits,firstPredTsos);
32  else
33  return std::vector<Trajectory>();
34 }
type
Definition: HCALResponse.h:22
const TrajectoryFitter * theLooperFitter
const TrajectoryFitter * theStandardFitter
virtual std::vector< Trajectory > fit(const Trajectory &) const =0
virtual std::vector<Trajectory> FlexibleKFFittingSmoother::fit ( const TrajectorySeed aSeed,
const RecHitContainer hits 
) const
inlinevirtual

Implements TrajectoryFitter.

Definition at line 43 of file FlexibleKFFittingSmoother.h.

References TrajectoryFitter::fit(), and theStandardFitter.

44  {
45  return theStandardFitter->fit(aSeed,hits);
46  }
const TrajectoryFitter * theStandardFitter
virtual std::vector< Trajectory > fit(const Trajectory &) const =0
std::vector< Trajectory > FlexibleKFFittingSmoother::fit ( const TrajectorySeed aSeed,
const RecHitContainer hits,
fitType  type 
) const
virtual

Reimplemented from TrajectoryFitter.

Definition at line 38 of file FlexibleKFFittingSmoother.cc.

References AlignmentProducer_cff::looper.

40  {
41  if(type==standard)
42  return theStandardFitter->fit(aSeed,hits);
43  else if(type==looper)
44  return theLooperFitter->fit(aSeed,hits);
45  else
46  return std::vector<Trajectory>();
47 }
type
Definition: HCALResponse.h:22
const TrajectoryFitter * theLooperFitter
const TrajectoryFitter * theStandardFitter
virtual std::vector< Trajectory > fit(const Trajectory &) const =0

Member Data Documentation

const TrajectoryFitter* FlexibleKFFittingSmoother::theLooperFitter
private

Definition at line 61 of file FlexibleKFFittingSmoother.h.

Referenced by clone().

const TrajectoryFitter* FlexibleKFFittingSmoother::theStandardFitter
private

Definition at line 60 of file FlexibleKFFittingSmoother.h.

Referenced by clone(), and fit().