CMS 3D CMS Logo

MeasurementTrackerEvent.h
Go to the documentation of this file.
1 #ifndef MeasurementTrackerEvent_H
2 #define MeasurementTrackerEvent_H
3 
4 #include <vector>
13 
15 
17 public:
19 
23 
27  const PxMeasurementDetSet *pixels,
28  const Phase2OTMeasurementDetSet *phase2OT,
31  const std::vector<bool> &stripClustersToSkip,
32  const std::vector<bool> &pixelClustersToSkip,
33  const std::vector<bool> &phase2OTClustersToSkip)
34  : theTracker(&tracker),
36  thePixelData(pixels),
37  thePhase2OTData(phase2OT),
40  theOwner(true),
44 
49 
50  //FIXME:just temporary solution for phase2!
52  const MeasurementTrackerEvent &trackerEvent,
53  const edm::ContainerMask<edmNew::DetSetVector<SiPixelCluster> > &phase2pixelClustersToSkip,
55 
60 
61  const MeasurementTracker &measurementTracker() const { return *theTracker; }
62  const StMeasurementDetSet &stripData() const { return *theStripData; }
63  const PxMeasurementDetSet &pixelData() const { return *thePixelData; }
67  const std::vector<bool> &stripClustersToSkip() const { return theStripClustersToSkip; }
68  const std::vector<bool> &pixelClustersToSkip() const { return thePixelClustersToSkip; }
69  const std::vector<bool> &phase2OTClustersToSkip() const { return thePhase2OTClustersToSkip; }
70 
71  // forwarded calls
74 
76  MeasurementDetWithData idToDet(const DetId &id) const { return measurementTracker().idToDet(id, *this); }
77 
78 private:
79  const MeasurementTracker *theTracker = nullptr;
85  bool theOwner = false; // do I own the tree above?
86  // these could be const pointers as well, but ContainerMask doesn't expose the vector
87  std::vector<bool> theStripClustersToSkip;
88  std::vector<bool> thePixelClustersToSkip;
89  std::vector<bool> thePhase2OTClustersToSkip;
90 };
91 
92 #endif // MeasurementTrackerEvent_H
MeasurementTrackerEvent::theTracker
const MeasurementTracker * theTracker
Definition: MeasurementTrackerEvent.h:79
MeasurementTrackerEvent::thePixelClustersToSkip
std::vector< bool > thePixelClustersToSkip
Definition: MeasurementTrackerEvent.h:88
MeasurementTrackerEvent::thePhase2OTClustersToSkip
std::vector< bool > thePhase2OTClustersToSkip
Definition: MeasurementTrackerEvent.h:89
MeasurementTrackerEvent::stripData
const StMeasurementDetSet & stripData() const
Definition: MeasurementTrackerEvent.h:62
ContainerMask.h
SiPixelCluster.h
MeasurementTrackerEvent::geomTracker
const TrackerGeometry * geomTracker() const
Definition: MeasurementTrackerEvent.h:72
MeasurementTracker::geometricSearchTracker
const GeometricSearchTracker * geometricSearchTracker() const
Definition: MeasurementTracker.h:38
edm::ContainerMask
Definition: ContainerMask.h:36
MeasurementTrackerEvent::thePhase2OTVectorHits
const VectorHitCollection * thePhase2OTVectorHits
Definition: MeasurementTrackerEvent.h:83
MeasurementTrackerEvent::pixelData
const PxMeasurementDetSet & pixelData() const
Definition: MeasurementTrackerEvent.h:63
MeasurementTrackerEvent::operator=
MeasurementTrackerEvent & operator=(const MeasurementTrackerEvent &other)=delete
MeasurementTrackerEvent::stripClustersToSkip
const std::vector< bool > & stripClustersToSkip() const
Definition: MeasurementTrackerEvent.h:67
Phase2OTMeasurementDetSet
Definition: TkMeasurementDetSet.h:433
MeasurementTrackerEvent::theStripClustersToSkip
std::vector< bool > theStripClustersToSkip
Definition: MeasurementTrackerEvent.h:87
DetId
Definition: DetId.h:17
MeasurementTracker
Definition: MeasurementTracker.h:21
MeasurementTrackerEvent::thePhase2OTVectorHitsRej
const VectorHitCollection * thePhase2OTVectorHitsRej
Definition: MeasurementTrackerEvent.h:84
MeasurementTrackerEvent::idToDet
MeasurementDetWithData idToDet(const DetId &id) const
Previous MeasurementDetSystem interface.
Definition: MeasurementTrackerEvent.h:76
trackingPlots.other
other
Definition: trackingPlots.py:1467
PxMeasurementDetSet
Definition: TkMeasurementDetSet.h:323
StMeasurementDetSet
Definition: TkMeasurementDetSet.h:138
MeasurementTracker::geomTracker
const TrackerGeometry * geomTracker() const
Definition: MeasurementTracker.h:36
PbPb_ZMuSkimMuonDPG_cff.tracker
tracker
Definition: PbPb_ZMuSkimMuonDPG_cff.py:60
funct::true
true
Definition: Factorize.h:173
MeasurementTrackerEvent::measurementTracker
const MeasurementTracker & measurementTracker() const
Definition: MeasurementTrackerEvent.h:61
MeasurementTrackerEvent::MeasurementTrackerEvent
MeasurementTrackerEvent()
Dummy constructor used for I/O (even if it's a transient object)
Definition: MeasurementTrackerEvent.h:21
MeasurementTrackerEvent
Definition: MeasurementTrackerEvent.h:16
SiStripCluster.h
MeasurementTrackerEvent::geometricSearchTracker
const GeometricSearchTracker * geometricSearchTracker() const
Definition: MeasurementTrackerEvent.h:73
MeasurementTrackerEvent::phase2OTClustersToSkip
const std::vector< bool > & phase2OTClustersToSkip() const
Definition: MeasurementTrackerEvent.h:69
MeasurementTrackerEvent::~MeasurementTrackerEvent
~MeasurementTrackerEvent()
Definition: MeasurementTrackerEvent.cc:4
MeasurementTrackerEvent::phase2OTVectorHits
const VectorHitCollection & phase2OTVectorHits() const
Definition: MeasurementTrackerEvent.h:65
MeasurementTrackerEvent::theStripData
const StMeasurementDetSet * theStripData
Definition: MeasurementTrackerEvent.h:80
MeasurementTrackerEvent::thePixelData
const PxMeasurementDetSet * thePixelData
Definition: MeasurementTrackerEvent.h:81
MeasurementTrackerEvent::phase2OTData
const Phase2OTMeasurementDetSet & phase2OTData() const
Definition: MeasurementTrackerEvent.h:64
MeasurementTracker::idToDet
MeasurementDetWithData idToDet(const DetId &id, const MeasurementTrackerEvent &data) const override=0
MeasurementDetSystem interface.
MeasurementTracker::QualityFlags
QualityFlags
Definition: MeasurementTracker.h:23
edmNew::DetSetVector
Definition: DetSetNew.h:13
MeasurementDetWithData
Definition: MeasurementDetWithData.h:6
Phase2TrackerCluster1D.h
GeometricSearchTracker
Definition: GeometricSearchTracker.h:14
MeasurementTrackerEvent::phase2OTVectorHitsRej
const VectorHitCollection & phase2OTVectorHitsRej() const
Definition: MeasurementTrackerEvent.h:66
MeasurementTrackerEvent::MeasurementTrackerEvent
MeasurementTrackerEvent(const MeasurementTracker &tracker, const StMeasurementDetSet *strips, const PxMeasurementDetSet *pixels, const Phase2OTMeasurementDetSet *phase2OT, const VectorHitCollection *phase2OTVectorHits, const VectorHitCollection *phase2OTVectorHitsRej, const std::vector< bool > &stripClustersToSkip, const std::vector< bool > &pixelClustersToSkip, const std::vector< bool > &phase2OTClustersToSkip)
Real constructor 1: with the full data (owned)
Definition: MeasurementTrackerEvent.h:25
MeasurementTrackerEvent::pixelClustersToSkip
const std::vector< bool > & pixelClustersToSkip() const
Definition: MeasurementTrackerEvent.h:68
DigiDM_cff.strips
strips
#turn off noise in all subdetectors simHcalUnsuppressedDigis.doNoise = False mix.digitizers....
Definition: DigiDM_cff.py:32
MeasurementTrackerEvent::thePhase2OTData
const Phase2OTMeasurementDetSet * thePhase2OTData
Definition: MeasurementTrackerEvent.h:82
MeasurementTracker.h
MeasurementTrackerEvent::theOwner
bool theOwner
Definition: MeasurementTrackerEvent.h:85
VectorHit.h
TrackerGeometry
Definition: TrackerGeometry.h:14