39 debug =
pset.getUntrackedParameter<
bool>(
"debug");
46 cout <<
"[DTRecSegment2DExtendedProducer] Constructor called" << endl;
48 produces<DTRecSegment2DCollection>();
58 cout <<
"[DTRecSegment2DExtendedProducer] Destructor called" << endl;
65 cout <<
"[DTRecSegment2DExtendedProducer] produce called" << endl;
81 auto segments = std::make_unique<DTRecSegment2DCollection>();
86 for (dtLayerIt = allHits->id_begin(); dtLayerIt != allHits->id_end(); ++dtLayerIt) {
95 cout <<
"Reconstructing the 2D segments in " << SLId << endl;
103 vector<DTRecHit1DPair> pairs(
range.first,
range.second);
106 cout <<
"Number of 1D-RecHit pairs " << pairs.size() << endl;
111 cout <<
"Number of Reconstructed segments: " << segs.
size() << endl;
112 copy(segs.
begin(), segs.
end(), ostream_iterator<DTSLRecSegment2D>(
cout,
"\n"));
116 segments->put(SLId, segs.
begin(), segs.
end());
edm::OwnVector< DTSLRecSegment2D > reconstruct(const DTSuperLayer *sl, const std::vector< DTRecHit1DPair > &hits) override
this function is called in the producer
void setClusters(const std::vector< DTSLRecCluster > &clusters)
std::pair< const_iterator, const_iterator > range
iterator range
DTRecSegment2DExtendedProducer(const edm::ParameterSet &)
Constructor.
static std::pair< DTLayerId, DTSuperLayerIdComparator > layersBySuperLayer(DTSuperLayerId slId)
Access by SL objects written into a RangeMap by layer.
DTCombinatorialExtendedPatternReco * theAlgo
edm::EDGetTokenT< DTRecHitCollection > recHits1DToken_
const DTSuperLayer * superLayer(const DTSuperLayerId &id) const
Return a DTSuperLayer given its id.
~DTRecSegment2DExtendedProducer() override
Destructor.
void setES(const edm::EventSetup &setup) override
const edm::ESGetToken< DTGeometry, MuonGeometryRecord > dtGeomToken_
DTSuperLayerId superlayerId() const
Return the corresponding SuperLayerId.
void produce(edm::Event &event, const edm::EventSetup &setup) override
The method which produces the 2D-segments.
edm::EDGetTokenT< DTRecClusterCollection > recClusToken_