28 enum { NRECHITS, CLUST_X, CLUST_Y, ERROR_X, ERROR_Y, POS, CLUSTER_PROB, NONEDGE, NOTHERBAD };
45 offlinePrimaryVerticesToken_ = consumes<reco::VertexCollection>(
std::string(
"offlinePrimaryVertices"));
47 onlyValid_ = iConfig.
getParameter<
bool>(
"onlyValidHits");
72 if (applyVertexCut_ &&
76 bool isBpixtrack =
false, isFpixtrack =
false;
78 auto const& trajParams =
track.extra()->trajParams();
80 for (
unsigned int h = 0;
h <
track.recHitsSize();
h++) {
86 uint32_t subdetid = (
id.subdetId());
94 if (!isBpixtrack && !isFpixtrack)
98 for (
unsigned int h = 0;
h <
track.recHitsSize();
h++) {
99 auto rechit = *(
hb +
h);
105 DetId id = rechit->geographicalId();
106 uint32_t subdetid = (
id.subdetId());
112 if (onlyValid_ && !isHitValid)
115 const SiPixelRecHit* prechit = dynamic_cast<const SiPixelRecHit*>(
122 sizeX = (*clust).sizeX();
123 sizeY = (*clust).sizeY();
132 int row = (
int)mp.
x();
135 float rechit_x = lp.
x();
136 float rechit_y = lp.
y();
138 LocalError lerr = rechit->localPositionError();
139 float lerr_x =
sqrt(lerr.
xx());
140 float lerr_y =
sqrt(lerr.
yy());
160 if (clusterProbability > 0)
161 histo[CLUSTER_PROB].fill(log10(clusterProbability),
id, &
iEvent);
166 histo[NRECHITS].executePerEventHarvesting(&
iEvent);
168 histo[NOTHERBAD].executePerEventHarvesting(&
iEvent);