CMS 3D CMS Logo

TkStackMeasurementDet.h
Go to the documentation of this file.
1 #ifndef TkStackMeasurementDet_H
2 #define TkStackMeasurementDet_H
3 
6 
9 
11 
12 // FIXME::TkStackMeasurementDet in this moment is just a prototype: to be fixed soon!
13 
14 class TkStackMeasurementDet final : public MeasurementDet {
15 public:
17  void init(const MeasurementDet* lowerDet, const MeasurementDet* upperDet);
18 
20 
21  const StackGeomDet& specificGeomDet() const { return static_cast<StackGeomDet const&>(fastGeomDet()); }
23 
26 
27  bool measurements(const TrajectoryStateOnSurface& stateOnThisDet,
28  const MeasurementEstimator& est,
30  TempMeasurements& result) const override;
31 
32  const TkPhase2OTMeasurementDet* lowerDet() const { return theLowerDet; }
33  const TkPhase2OTMeasurementDet* upperDet() const { return theUpperDet; }
34 
36  bool isActive(const MeasurementTrackerEvent& data) const override {
37  return lowerDet()->isActive(data) && upperDet()->isActive(data);
38  }
39  bool isEmpty(const Phase2OTMeasurementDetSet& data) const {
40  return data.empty(lowerDet()->index()) || data.empty(upperDet()->index());
41  }
42 
44  bool hasBadComponents(const TrajectoryStateOnSurface& tsos, const MeasurementTrackerEvent& data) const override {
45  return (lowerDet()->hasBadComponents(tsos, data) || upperDet()->hasBadComponents(tsos, data));
46  }
47 
48 private:
52 };
53 
54 #endif
TkStackMeasurementDet(const StackGeomDet *gdet, const PixelClusterParameterEstimator *cpe)
const TkPhase2OTMeasurementDet * theLowerDet
bool hasBadComponents(const TrajectoryStateOnSurface &tsos, const MeasurementTrackerEvent &data) const override
return TRUE if at least one of the lower and upper components has badChannels
data_type const * const_iterator
Definition: DetSetNew.h:31
const TkPhase2OTMeasurementDet * lowerDet() const
void init(const MeasurementDet *lowerDet, const MeasurementDet *upperDet)
edm::Ref< edmNew::DetSetVector< Phase2TrackerCluster1D >, Phase2TrackerCluster1D > Phase2TrackerCluster1DRef
const PixelClusterParameterEstimator * thePixelCPE
bool isActive(const MeasurementTrackerEvent &data) const override
return TRUE if both lower and upper components are active
bool isActive(const MeasurementTrackerEvent &data) const override
Is this module active in reconstruction? It must be both &#39;setActiveThisEvent&#39; and &#39;setActive&#39;...
bool isEmpty(const Phase2OTMeasurementDetSet &data) const
edmNew::DetSet< Phase2TrackerCluster1D > detset
bool measurements(const TrajectoryStateOnSurface &stateOnThisDet, const MeasurementEstimator &est, const MeasurementTrackerEvent &data, TempMeasurements &result) const override
RecHitContainer recHits(const TrajectoryStateOnSurface &, const MeasurementTrackerEvent &data) const override
const GeomDet & fastGeomDet() const
detset::const_iterator const_iterator
TrackingRecHit::ConstRecHitContainer RecHitContainer
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:79
const TkPhase2OTMeasurementDet * upperDet() const
const StackGeomDet & specificGeomDet() const
const TkPhase2OTMeasurementDet * theUpperDet