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 Member Functions | Private Attributes
SimpleDAFHitCollector Class Reference

#include <SimpleDAFHitCollector.h>

Inheritance diagram for SimpleDAFHitCollector:
MultiRecHitCollector

Public Member Functions

void Debug (const std::vector< TrajectoryMeasurement > TM) const
 
const MeasurementEstimatorgetEstimator () const
 
const PropagatorgetPropagator () const
 
const SiTrackerMultiRecHitUpdatorgetUpdator () const
 
virtual std::vector
< TrajectoryMeasurement
recHits (const Trajectory &, const MeasurementTrackerEvent *theMTE) const override
 
 SimpleDAFHitCollector (const MeasurementTracker *measurementTracker, const SiTrackerMultiRecHitUpdator *updator, const MeasurementEstimator *est, const Propagator *propagator, bool debug)
 
virtual ~SimpleDAFHitCollector ()
 
- Public Member Functions inherited from MultiRecHitCollector
const MeasurementTrackergetMeasurementTracker () const
 
 MultiRecHitCollector (const MeasurementTracker *meas)
 

Private Member Functions

std::unique_ptr< TrackingRecHitclone (BaseTrackerRecHit const &hit2D) const
 
std::unique_ptr< TrackingRecHitrightdimension (TrackingRecHit const &hit) const
 

Private Attributes

const bool debug_
 
const MeasurementEstimatortheEstimator
 
TkClonerImpl theHitCloner
 
const PropagatorthePropagator
 
const SiTrackerMultiRecHitUpdatortheUpdator
 

Detailed Description

Definition at line 17 of file SimpleDAFHitCollector.h.

Constructor & Destructor Documentation

SimpleDAFHitCollector::SimpleDAFHitCollector ( const MeasurementTracker measurementTracker,
const SiTrackerMultiRecHitUpdator updator,
const MeasurementEstimator est,
const Propagator propagator,
bool  debug 
)
inlineexplicit

Definition at line 19 of file SimpleDAFHitCollector.h.

References HLT_25ns10e33_v2_cff::cloner, SiTrackerMultiRecHitUpdator::getBuilder(), theHitCloner, and theUpdator.

23  :MultiRecHitCollector(measurementTracker), theUpdator(updator), theEstimator(est), thePropagator(propagator), debug_(debug){
25 }
const MeasurementEstimator * theEstimator
MultiRecHitCollector(const MeasurementTracker *meas)
const Propagator * thePropagator
#define debug
Definition: HDRShower.cc:19
const TransientTrackingRecHitBuilder * getBuilder() const
const SiTrackerMultiRecHitUpdator * theUpdator
virtual SimpleDAFHitCollector::~SimpleDAFHitCollector ( )
inlinevirtual

Definition at line 28 of file SimpleDAFHitCollector.h.

28 {}

Member Function Documentation

std::unique_ptr<TrackingRecHit> SimpleDAFHitCollector::clone ( BaseTrackerRecHit const &  hit2D) const
inlineprivate

Definition at line 65 of file SimpleDAFHitCollector.h.

References TrackingRecHit::clone(), TrackingRecHit::det(), TrackingRecHit::detUnit(), Reference_intrackfit_cff::endcap, BaseTrackerRecHit::firstClusterRef(), BaseTrackerRecHit::localPosition(), BaseTrackerRecHit::localPositionError(), bookConverter::max, and LocalError::xx().

Referenced by rightdimension().

65  {
66  auto const & detU = *hit2D.detUnit();
67  //Use 2D SiStripRecHit in endcap
68  bool endcap = detU.type().isEndcap();
69  if (endcap) return std::unique_ptr<TrackingRecHit>{hit2D.clone()};
70  return std::unique_ptr<TrackingRecHit>{
71  new SiStripRecHit1D(hit2D.localPosition(),
72  LocalError(hit2D.localPositionError().xx(),0.f,std::numeric_limits<float>::max()),
73  *hit2D.det(), hit2D.firstClusterRef()) };
74 
75  }
void SimpleDAFHitCollector::Debug ( const std::vector< TrajectoryMeasurement TM) const

Definition at line 160 of file SimpleDAFHitCollector.cc.

const MeasurementEstimator* SimpleDAFHitCollector::getEstimator ( ) const
inline

Definition at line 40 of file SimpleDAFHitCollector.h.

References theEstimator.

40 {return theEstimator;}
const MeasurementEstimator * theEstimator
const Propagator* SimpleDAFHitCollector::getPropagator ( ) const
inline

Definition at line 41 of file SimpleDAFHitCollector.h.

References thePropagator.

41 {return thePropagator;}
const Propagator * thePropagator
const SiTrackerMultiRecHitUpdator* SimpleDAFHitCollector::getUpdator ( ) const
inline

Definition at line 39 of file SimpleDAFHitCollector.h.

References theUpdator.

39 {return theUpdator;}
const SiTrackerMultiRecHitUpdator * theUpdator
vector< TrajectoryMeasurement > SimpleDAFHitCollector::recHits ( const Trajectory traj,
const MeasurementTrackerEvent theMTE 
) const
overridevirtual

Implements MultiRecHitCollector.

Definition at line 34 of file SimpleDAFHitCollector.cc.

std::unique_ptr<TrackingRecHit> SimpleDAFHitCollector::rightdimension ( TrackingRecHit const &  hit) const
inlineprivate

Definition at line 49 of file SimpleDAFHitCollector.h.

References clone(), TrackingRecHit::clone(), compareJSON::const, TrackingRecHit::dimension(), TrackingRecHit::isValid(), and LogDebug.

49  {
50  if( !hit.isValid() || ( hit.dimension()!=2) ) {
51  return std::unique_ptr<TrackingRecHit>{hit.clone()};
52  }
53  auto const & thit = static_cast<BaseTrackerRecHit const&>(hit);
54  auto const & clus = thit.firstClusterRef();
55  if (clus.isPixel()) return std::unique_ptr<TrackingRecHit>{hit.clone()};
56  else if (thit.isMatched()) {
57  LogDebug("MultiRecHitCollector") << " SiStripMatchedRecHit2D to check!!!";
58  return std::unique_ptr<TrackingRecHit>{hit.clone()};
59  } else if (thit.isProjected()) {
60  edm::LogError("MultiRecHitCollector") << " ProjectedSiStripRecHit2D should not be present at this stage!!!";
61  return std::unique_ptr<TrackingRecHit>{hit.clone()};
62  } else return clone(thit);
63  }
#define LogDebug(id)
std::unique_ptr< TrackingRecHit > clone(BaseTrackerRecHit const &hit2D) const
string const
Definition: compareJSON.py:14

Member Data Documentation

const bool SimpleDAFHitCollector::debug_
private

Definition at line 83 of file SimpleDAFHitCollector.h.

const MeasurementEstimator* SimpleDAFHitCollector::theEstimator
private

Definition at line 79 of file SimpleDAFHitCollector.h.

Referenced by getEstimator().

TkClonerImpl SimpleDAFHitCollector::theHitCloner
private

Definition at line 82 of file SimpleDAFHitCollector.h.

Referenced by SimpleDAFHitCollector().

const Propagator* SimpleDAFHitCollector::thePropagator
private

Definition at line 81 of file SimpleDAFHitCollector.h.

Referenced by getPropagator().

const SiTrackerMultiRecHitUpdator* SimpleDAFHitCollector::theUpdator
private

Definition at line 78 of file SimpleDAFHitCollector.h.

Referenced by getUpdator(), and SimpleDAFHitCollector().