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
MeasurementEstimator
Definition: MeasurementEstimator.h:19
PixelClusterParameterEstimator
Definition: PixelClusterParameterEstimator.h:15
TkStackMeasurementDet::isEmpty
bool isEmpty(const Phase2OTMeasurementDetSet &data) const
Definition: TkStackMeasurementDet.h:39
Visibility.h
TkStackMeasurementDet::hasBadComponents
bool hasBadComponents(const TrajectoryStateOnSurface &tsos, const MeasurementTrackerEvent &data) const override
return TRUE if at least one of the lower and upper components has badChannels
Definition: TkStackMeasurementDet.h:44
TkStackMeasurementDet::TkStackMeasurementDet
TkStackMeasurementDet(const StackGeomDet *gdet, const PixelClusterParameterEstimator *cpe)
Definition: TkStackMeasurementDet.cc:7
Phase2TrackerCluster1D
Definition: Phase2TrackerCluster1D.h:10
MeasurementDet::RecHitContainer
TrackingRecHit::ConstRecHitContainer RecHitContainer
Definition: MeasurementDet.h:19
TkStackMeasurementDet::lowerDet
const TkPhase2OTMeasurementDet * lowerDet() const
Definition: TkStackMeasurementDet.h:32
TkStackMeasurementDet::theLowerDet
const TkPhase2OTMeasurementDet * theLowerDet
Definition: TkStackMeasurementDet.h:50
PixelClusterParameterEstimator.h
TkStackMeasurementDet::thePixelCPE
const PixelClusterParameterEstimator * thePixelCPE
Definition: TkStackMeasurementDet.h:49
MeasurementDet
Definition: MeasurementDet.h:16
tracking::TempMeasurements
Definition: TempMeasurements.h:10
edm::Ref
Definition: AssociativeIterator.h:58
Phase2OTMeasurementDetSet
Definition: TkMeasurementDetSet.h:433
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
TkPhase2OTMeasurementDet::isActive
bool isActive(const MeasurementTrackerEvent &data) const override
Is this module active in reconstruction? It must be both 'setActiveThisEvent' and 'setActive'.
Definition: TkPhase2OTMeasurementDet.h:69
TkStackMeasurementDet::const_iterator
detset::const_iterator const_iterator
Definition: TkStackMeasurementDet.h:25
TkStackMeasurementDet::upperDet
const TkPhase2OTMeasurementDet * upperDet() const
Definition: TkStackMeasurementDet.h:33
TkStackMeasurementDet::init
void init(const MeasurementDet *lowerDet, const MeasurementDet *upperDet)
Definition: TkStackMeasurementDet.cc:10
edmNew::DetSet
Definition: DetSetNew.h:22
TkStackMeasurementDet
Definition: TkStackMeasurementDet.h:14
TkPhase2OTMeasurementDet.h
MeasurementTrackerEvent
Definition: MeasurementTrackerEvent.h:16
TkStackMeasurementDet::measurements
bool measurements(const TrajectoryStateOnSurface &stateOnThisDet, const MeasurementEstimator &est, const MeasurementTrackerEvent &data, TempMeasurements &result) const override
Definition: TkStackMeasurementDet.cc:100
TkStackMeasurementDet::specificGeomDet
const StackGeomDet & specificGeomDet() const
Definition: TkStackMeasurementDet.h:21
StackGeomDet.h
TkStackMeasurementDet::isActive
bool isActive(const MeasurementTrackerEvent &data) const override
return TRUE if both lower and upper components are active
Definition: TkStackMeasurementDet.h:36
TkPhase2OTMeasurementDet
Definition: TkPhase2OTMeasurementDet.h:16
StackGeomDet
Definition: StackGeomDet.h:7
TkStackMeasurementDet::recHits
RecHitContainer recHits(const TrajectoryStateOnSurface &, const MeasurementTrackerEvent &data) const override
Definition: TkStackMeasurementDet.cc:20
TkStackMeasurementDet::Phase2TrackerCluster1DRef
edm::Ref< edmNew::DetSetVector< Phase2TrackerCluster1D >, Phase2TrackerCluster1D > Phase2TrackerCluster1DRef
Definition: TkStackMeasurementDet.h:22
data
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:79
AlignmentPI::index
index
Definition: AlignmentPayloadInspectorHelper.h:46
mps_fire.result
result
Definition: mps_fire.py:311
MeasurementDet::fastGeomDet
const GeomDet & fastGeomDet() const
Definition: MeasurementDet.h:80
TkStackMeasurementDet::theUpperDet
const TkPhase2OTMeasurementDet * theUpperDet
Definition: TkStackMeasurementDet.h:51
TkStackMeasurementDet::detset
edmNew::DetSet< Phase2TrackerCluster1D > detset
Definition: TkStackMeasurementDet.h:24
MeasurementDet.h
edmNew::DetSet::const_iterator
const data_type * const_iterator
Definition: DetSetNew.h:31