CMS 3D CMS Logo

MeasurementDetWithData.h
Go to the documentation of this file.
1 #ifndef MeasurementDetWithData_H
2 #define MeasurementDetWithData_H
3 
5 
7 public:
8  MeasurementDetWithData() : det_(nullptr), data_(nullptr) {}
9 
11 
12  bool isValid() const { return det_ != nullptr; }
13  bool isNull() const { return det_ == nullptr; }
14 
15  const MeasurementDet& mdet() const { return *det_; }
16 
17  // duplicate interface of MeasurementDet
20 
22 
23  RecHitContainer recHits(const TrajectoryStateOnSurface& tsos) const { return mdet().recHits(tsos, data()); }
24 
25  // use a MeasurementEstimator to filter the hits (same algo as below..)
26  // default as above
27  bool recHits(const TrajectoryStateOnSurface& stateOnThisDet,
28  const MeasurementEstimator& me,
30  std::vector<float>& out) const {
31  return mdet().recHits(stateOnThisDet, me, data(), result, out);
32  }
33 
35  const TrajectoryStateOnSurface& stateOnThisDet,
36  const MeasurementEstimator& me) const {
37  return mdet().recHits(result, stateOnThisDet, me, data());
38  }
39 
46  std::vector<TrajectoryMeasurement> fastMeasurements(const TrajectoryStateOnSurface& stateOnThisDet,
47  const TrajectoryStateOnSurface& tsos2,
48  const Propagator& prop,
49  const MeasurementEstimator& est) const {
50  return mdet().fastMeasurements(stateOnThisDet, tsos2, prop, est, data());
51  }
52 
53  // return false if missing (if inactive is true and one hit)
54  bool measurements(const TrajectoryStateOnSurface& stateOnThisDet,
55  const MeasurementEstimator& est,
56  TempMeasurements& result) const {
57  return mdet().measurements(stateOnThisDet, est, data(), result);
58  }
59 
60  // forward methods which don't actually depend on data
61  const GeomDet& fastGeomDet() const { return mdet().fastGeomDet(); }
62  const GeomDet& geomDet() const { return mdet().geomDet(); }
63  const Surface& surface() const { return mdet().geomDet().surface(); }
64  const Surface::PositionType& position() const { return mdet().geomDet().position(); }
65 
66  // these instead potentially depend on the data
67  bool isActive() const { return mdet().isActive(data()); }
68  bool hasBadComponents(const TrajectoryStateOnSurface& tsos) const { return mdet().hasBadComponents(tsos, data()); }
69 
70 private:
71  const MeasurementTrackerEvent& data() const { return *data_; }
74 };
75 
76 #endif
GeomDet::position
const Surface::PositionType & position() const
The position (origin of the R.F.)
Definition: GeomDet.h:43
MeasurementEstimator
Definition: MeasurementEstimator.h:19
MeasurementDetWithData::fastMeasurements
std::vector< TrajectoryMeasurement > fastMeasurements(const TrajectoryStateOnSurface &stateOnThisDet, const TrajectoryStateOnSurface &tsos2, const Propagator &prop, const MeasurementEstimator &est) const
Definition: MeasurementDetWithData.h:46
MeasurementDet::fastMeasurements
std::vector< TrajectoryMeasurement > fastMeasurements(const TrajectoryStateOnSurface &stateOnThisDet, const TrajectoryStateOnSurface &, const Propagator &, const MeasurementEstimator &est, const MeasurementTrackerEvent &data) const
Definition: MeasurementDet.h:56
MeasurementDetWithData::RecHitContainer
MeasurementDet::RecHitContainer RecHitContainer
Definition: MeasurementDetWithData.h:19
GeomDet
Definition: GeomDet.h:27
MeasurementDetWithData::isActive
bool isActive() const
Definition: MeasurementDetWithData.h:67
MeasurementDet::RecHitContainer
TrackingRecHit::ConstRecHitContainer RecHitContainer
Definition: MeasurementDet.h:19
MeasurementDetWithData::geomDet
const GeomDet & geomDet() const
Definition: MeasurementDetWithData.h:62
MeasurementDet::hasBadComponents
virtual bool hasBadComponents(const TrajectoryStateOnSurface &tsos, const MeasurementTrackerEvent &data) const =0
Surface
Definition: Surface.h:36
MeasurementDet
Definition: MeasurementDet.h:16
MeasurementDet::measurements
virtual bool measurements(const TrajectoryStateOnSurface &stateOnThisDet, const MeasurementEstimator &est, const MeasurementTrackerEvent &data, TempMeasurements &result) const =0
MeasurementDetWithData::position
const Surface::PositionType & position() const
Definition: MeasurementDetWithData.h:64
tracking::TempMeasurements
Definition: TempMeasurements.h:10
MeasurementDetWithData::fastGeomDet
const GeomDet & fastGeomDet() const
Definition: MeasurementDetWithData.h:61
MeasurementDetWithData::det_
const MeasurementDet * det_
Definition: MeasurementDetWithData.h:72
Propagator
Definition: Propagator.h:44
GeomDet::surface
const Plane & surface() const
The nominal surface of the GeomDet.
Definition: GeomDet.h:37
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
MeasurementDetWithData::recHits
bool recHits(const TrajectoryStateOnSurface &stateOnThisDet, const MeasurementEstimator &me, RecHitContainer &result, std::vector< float > &out) const
Definition: MeasurementDetWithData.h:27
MeasurementDetWithData::recHits
bool recHits(SimpleHitContainer &result, const TrajectoryStateOnSurface &stateOnThisDet, const MeasurementEstimator &me) const
Definition: MeasurementDetWithData.h:34
Point3DBase< float, GlobalTag >
MeasurementDetWithData::isNull
bool isNull() const
Definition: MeasurementDetWithData.h:13
MeasurementDetWithData::TempMeasurements
MeasurementDet::TempMeasurements TempMeasurements
Definition: MeasurementDetWithData.h:18
MeasurementTrackerEvent
Definition: MeasurementTrackerEvent.h:16
MeasurementDet::isActive
virtual bool isActive(const MeasurementTrackerEvent &data) const =0
MeasurementDet::SimpleHitContainer
std::vector< BaseTrackerRecHit * > SimpleHitContainer
Definition: MeasurementDet.h:21
MeasurementDetWithData::isValid
bool isValid() const
Definition: MeasurementDetWithData.h:12
MeasurementDetWithData::MeasurementDetWithData
MeasurementDetWithData()
Definition: MeasurementDetWithData.h:8
MeasurementDetWithData::recHits
RecHitContainer recHits(const TrajectoryStateOnSurface &tsos) const
Definition: MeasurementDetWithData.h:23
MeasurementDetWithData::MeasurementDetWithData
MeasurementDetWithData(const MeasurementDet &det, const MeasurementTrackerEvent &data)
Definition: MeasurementDetWithData.h:10
MeasurementDetWithData::data_
const MeasurementTrackerEvent * data_
Definition: MeasurementDetWithData.h:73
MeasurementDetWithData::mdet
const MeasurementDet & mdet() const
Definition: MeasurementDetWithData.h:15
MeasurementDetWithData::SimpleHitContainer
MeasurementDet::SimpleHitContainer SimpleHitContainer
Definition: MeasurementDetWithData.h:21
MeasurementDetWithData
Definition: MeasurementDetWithData.h:6
MillePedeFileConverter_cfg.out
out
Definition: MillePedeFileConverter_cfg.py:31
mps_fire.result
result
Definition: mps_fire.py:311
MeasurementDetWithData::hasBadComponents
bool hasBadComponents(const TrajectoryStateOnSurface &tsos) const
Definition: MeasurementDetWithData.h:68
MeasurementDetWithData::data
const MeasurementTrackerEvent & data() const
Definition: MeasurementDetWithData.h:71
hlt_dqm_clientPB-live_cfg.me
me
Definition: hlt_dqm_clientPB-live_cfg.py:61
MeasurementDet::fastGeomDet
const GeomDet & fastGeomDet() const
Definition: MeasurementDet.h:80
MeasurementDetWithData::surface
const Surface & surface() const
Definition: MeasurementDetWithData.h:63
MeasurementDetWithData::measurements
bool measurements(const TrajectoryStateOnSurface &stateOnThisDet, const MeasurementEstimator &est, TempMeasurements &result) const
Definition: MeasurementDetWithData.h:54
MeasurementDet.h
MeasurementDet::recHits
virtual RecHitContainer recHits(const TrajectoryStateOnSurface &, const MeasurementTrackerEvent &) const =0
MeasurementDet::geomDet
virtual const GeomDet & geomDet() const
Definition: MeasurementDet.h:81