CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
LooperTrajectoryFilter Class Referencefinal

#include <LooperTrajectoryFilter.h>

Inheritance diagram for LooperTrajectoryFilter:
TrajectoryFilter

Public Member Functions

edm::ParameterSetDescription getFilledConfigurationDescription ()
 
 LooperTrajectoryFilter (int minNumberOfHitsForLoopers=13, int minNumberOfHitsPerLoop=4, int extraNumberOfHitsBeforeTheFirstLoop=4)
 
 LooperTrajectoryFilter (const edm::ParameterSet &pset, edm::ConsumesCollector &iC)
 
std::string name () const override
 
bool qualityFilter (const Trajectory &traj) const override
 
bool qualityFilter (const TempTrajectory &traj) const override
 
bool toBeContinued (TempTrajectory &traj) const override
 
bool toBeContinued (Trajectory &traj) const override
 
- Public Member Functions inherited from TrajectoryFilter
virtual bool operator() (TempTrajectory &t) const
 
virtual bool operator() (Trajectory &t) const
 
virtual void setEvent (const edm::Event &iEvent, const edm::EventSetup &iSetup)
 
virtual ~TrajectoryFilter ()
 

Protected Member Functions

template<class T >
bool QF (const T &traj) const
 
template<class T >
bool TBC (T &traj) const
 

Protected Attributes

int theExtraNumberOfHitsBeforeTheFirstLoop
 
int theMinNumberOfHitsForLoopers
 
int theMinNumberOfHitsPerLoop
 

Additional Inherited Members

- Public Types inherited from TrajectoryFilter
typedef CkfComponentsRecord Record
 
- Static Public Attributes inherited from TrajectoryFilter
static const bool qualityFilterIfNotContributing =true
 
static const bool toBeContinuedIfNotContributing =true
 

Detailed Description

Definition at line 7 of file LooperTrajectoryFilter.h.

Constructor & Destructor Documentation

LooperTrajectoryFilter::LooperTrajectoryFilter ( int  minNumberOfHitsForLoopers = 13,
int  minNumberOfHitsPerLoop = 4,
int  extraNumberOfHitsBeforeTheFirstLoop = 4 
)
inlineexplicit
LooperTrajectoryFilter::LooperTrajectoryFilter ( const edm::ParameterSet pset,
edm::ConsumesCollector iC 
)
inlineexplicit

Definition at line 17 of file LooperTrajectoryFilter.h.

References edm::ParameterSet::getParameter(), theExtraNumberOfHitsBeforeTheFirstLoop, theMinNumberOfHitsForLoopers, and theMinNumberOfHitsPerLoop.

17  {
18  theMinNumberOfHitsForLoopers = pset.getParameter<int>("minNumberOfHitsForLoopers");
19  theMinNumberOfHitsPerLoop = pset.getParameter<int>("minNumberOfHitsPerLoop");
20  theExtraNumberOfHitsBeforeTheFirstLoop = pset.getParameter<int>("extraNumberOfHitsBeforeTheFirstLoop");
21 
22  }
T getParameter(std::string const &) const

Member Function Documentation

edm::ParameterSetDescription LooperTrajectoryFilter::getFilledConfigurationDescription ( )
inline

Definition at line 32 of file LooperTrajectoryFilter.h.

References edm::ParameterSetDescription::add().

32  {
34  desc.add<int>("minNumberOfHitsForLoopers", 13);
35  desc.add<int>("minNumberOfHitsPerLoop", 4);
36  desc.add<int>("extraNumberOfHitsBeforeTheFirstLoop", 4);
37  return desc;
38  }
ParameterDescriptionBase * add(U const &iLabel, T const &value)
std::string LooperTrajectoryFilter::name ( void  ) const
inlineoverridevirtual

Implements TrajectoryFilter.

Definition at line 30 of file LooperTrajectoryFilter.h.

Referenced by config.CFG::__str__(), and validation.Sample::digest().

30 {return "LooperTrajectoryFilter";}
template<class T >
bool LooperTrajectoryFilter::QF ( const T traj) const
inlineprotected

Definition at line 42 of file LooperTrajectoryFilter.h.

References theMinNumberOfHitsForLoopers.

42  {
43  if ( traj.isLooper() && (traj.foundHits() < theMinNumberOfHitsForLoopers) ) return false;
44  else return true;
45  }
bool LooperTrajectoryFilter::qualityFilter ( const Trajectory traj) const
inlineoverridevirtual

Implements TrajectoryFilter.

Definition at line 24 of file LooperTrajectoryFilter.h.

24 { return QF<Trajectory>(traj); }
bool LooperTrajectoryFilter::qualityFilter ( const TempTrajectory traj) const
inlineoverridevirtual

Implements TrajectoryFilter.

Definition at line 25 of file LooperTrajectoryFilter.h.

25 { return QF<TempTrajectory>(traj); }
template<class T >
bool LooperTrajectoryFilter::TBC ( T traj) const
inlineprotected

Definition at line 48 of file LooperTrajectoryFilter.h.

References LOOPER, theExtraNumberOfHitsBeforeTheFirstLoop, and theMinNumberOfHitsPerLoop.

48  {
49  bool ret = !(traj.isLooper() &&
50  ( (traj.nLoops()*theMinNumberOfHitsPerLoop + theExtraNumberOfHitsBeforeTheFirstLoop)>traj.foundHits()));
51  if (!ret)
52  traj.setStopReason(StopReason::LOOPER);
53  return ret;
54  }
bool LooperTrajectoryFilter::toBeContinued ( TempTrajectory traj) const
inlineoverridevirtual

Implements TrajectoryFilter.

Definition at line 27 of file LooperTrajectoryFilter.h.

27 { return TBC<TempTrajectory>(traj);}
bool LooperTrajectoryFilter::toBeContinued ( Trajectory traj) const
inlineoverridevirtual

Implements TrajectoryFilter.

Definition at line 28 of file LooperTrajectoryFilter.h.

28 { return TBC<Trajectory>(traj);}

Member Data Documentation

int LooperTrajectoryFilter::theExtraNumberOfHitsBeforeTheFirstLoop
protected

Definition at line 58 of file LooperTrajectoryFilter.h.

Referenced by LooperTrajectoryFilter(), and TBC().

int LooperTrajectoryFilter::theMinNumberOfHitsForLoopers
protected

Definition at line 56 of file LooperTrajectoryFilter.h.

Referenced by LooperTrajectoryFilter(), and QF().

int LooperTrajectoryFilter::theMinNumberOfHitsPerLoop
protected

Definition at line 57 of file LooperTrajectoryFilter.h.

Referenced by LooperTrajectoryFilter(), and TBC().