CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Static Private Member Functions
TrajectoryFitter Class Referenceabstract

#include <TrajectoryFitter.h>

Inheritance diagram for TrajectoryFitter:
GsfTrajectoryFitter KFFittingSmoother KFSplittingFitter KFTrajectoryFitter

Public Types

enum  fitType { standard = 0, looper = 1 }
 
typedef Trajectory::RecHitContainer RecHitContainer
 
typedef TrajectoryFitterRecord Record
 

Public Member Functions

virtual std::unique_ptr< TrajectoryFitterclone () const =0
 
std::vector< Trajectoryfit (const Trajectory &traj, fitType type=standard) const
 
std::vector< Trajectoryfit (const TrajectorySeed &seed, const RecHitContainer &hits, const TrajectoryStateOnSurface &tsos, fitType type=standard) const
 
std::vector< Trajectoryfit (const TrajectorySeed &seed, const RecHitContainer &hits, fitType type=standard) const
 
virtual Trajectory fitOne (const Trajectory &traj, fitType type=standard) const =0
 
virtual Trajectory fitOne (const TrajectorySeed &seed, const RecHitContainer &hits, const TrajectoryStateOnSurface &tsos, fitType type=standard) const =0
 
virtual Trajectory fitOne (const TrajectorySeed &seed, const RecHitContainer &hits, fitType typee=standard) const =0
 
virtual void setHitCloner (TkCloner const *)=0
 
virtual ~TrajectoryFitter ()
 

Static Private Member Functions

static std::vector< TrajectorymakeVect (Trajectory &&outTraj)
 

Detailed Description

Interface class for trajectory fitters, i.e. computing Trajectories out of a seed and/or collection of RecHits.

Definition at line 19 of file TrajectoryFitter.h.

Member Typedef Documentation

◆ RecHitContainer

Definition at line 24 of file TrajectoryFitter.h.

◆ Record

Definition at line 23 of file TrajectoryFitter.h.

Member Enumeration Documentation

◆ fitType

Enumerator
standard 
looper 

Definition at line 21 of file TrajectoryFitter.h.

21 { standard = 0, looper = 1 };

Constructor & Destructor Documentation

◆ ~TrajectoryFitter()

virtual TrajectoryFitter::~TrajectoryFitter ( )
inlinevirtual

Definition at line 26 of file TrajectoryFitter.h.

26 {}

Member Function Documentation

◆ clone()

virtual std::unique_ptr<TrajectoryFitter> TrajectoryFitter::clone ( ) const
pure virtual

◆ fit() [1/3]

std::vector<Trajectory> TrajectoryFitter::fit ( const Trajectory traj,
fitType  type = standard 
) const
inline

Definition at line 43 of file TrajectoryFitter.h.

43  {
44  return makeVect(fitOne(traj, type));
45  }

References fitOne(), and makeVect().

Referenced by DAFTrackProducerAlgorithm::filter(), trackingPlots.Iteration::modules(), and StandAloneMuonRefitter::singleRefit().

◆ fit() [2/3]

std::vector<Trajectory> TrajectoryFitter::fit ( const TrajectorySeed seed,
const RecHitContainer hits,
const TrajectoryStateOnSurface tsos,
fitType  type = standard 
) const
inline

Definition at line 50 of file TrajectoryFitter.h.

53  {
54  return makeVect(fitOne(seed, hits, tsos, type));
55  }

References fitOne(), hfClusterShapes_cfi::hits, makeVect(), and SurveyInfoScenario_cff::seed.

Referenced by trackingPlots.Iteration::modules().

◆ fit() [3/3]

std::vector<Trajectory> TrajectoryFitter::fit ( const TrajectorySeed seed,
const RecHitContainer hits,
fitType  type = standard 
) const
inline

Definition at line 47 of file TrajectoryFitter.h.

47  {
48  return makeVect(fitOne(seed, hits, type));
49  }

References fitOne(), hfClusterShapes_cfi::hits, makeVect(), and SurveyInfoScenario_cff::seed.

Referenced by trackingPlots.Iteration::modules().

◆ fitOne() [1/3]

virtual Trajectory TrajectoryFitter::fitOne ( const Trajectory traj,
fitType  type = standard 
) const
pure virtual

◆ fitOne() [2/3]

virtual Trajectory TrajectoryFitter::fitOne ( const TrajectorySeed seed,
const RecHitContainer hits,
const TrajectoryStateOnSurface tsos,
fitType  type = standard 
) const
pure virtual

◆ fitOne() [3/3]

virtual Trajectory TrajectoryFitter::fitOne ( const TrajectorySeed seed,
const RecHitContainer hits,
fitType  typee = standard 
) const
pure virtual

◆ makeVect()

static std::vector<Trajectory> TrajectoryFitter::makeVect ( Trajectory &&  outTraj)
inlinestaticprivate

Definition at line 58 of file TrajectoryFitter.h.

58  {
59  if (outTraj.isValid())
60  return std::vector<Trajectory>(1, std::move(outTraj));
61  return std::vector<Trajectory>();
62  }

References eostools::move().

Referenced by fit().

◆ setHitCloner()

virtual void TrajectoryFitter::setHitCloner ( TkCloner const *  )
pure virtual
hfClusterShapes_cfi.hits
hits
Definition: hfClusterShapes_cfi.py:5
looper
Definition: looper.py:1
type
type
Definition: HCALResponse.h:21
eostools.move
def move(src, dest)
Definition: eostools.py:511
standard
TrajectoryFitter::makeVect
static std::vector< Trajectory > makeVect(Trajectory &&outTraj)
Definition: TrajectoryFitter.h:58
TrajectoryFitter::fitOne
virtual Trajectory fitOne(const Trajectory &traj, fitType type=standard) const =0
Trajectory::isValid
bool isValid() const
Definition: Trajectory.h:257
SurveyInfoScenario_cff.seed
seed
Definition: SurveyInfoScenario_cff.py:295