29 produces<GEMCSCSegmentCollection>();
33 LogDebug(
"GEMCSCSegment") <<
"deleting GEMCSCSegmentBuilder after " <<
iev <<
" events w/ gem and csc data.";
38 LogDebug(
"GEMCSCSegment") <<
"start producing segments for " << ++
iev <<
"th event w/ gem and csc data";
42 if (not cscg.isValid()) {
49 if (not gemg.isValid()) {
63 if (not cscSegment.isValid()) {
64 edm::LogError(
"GEMCSCSegment") <<
"invalid CSCSegmentCollection";
70 edm::LogError(
"GEMCSCSegment") <<
"invalid GEMRecHitCollection";
75 auto oc = std::make_unique<GEMCSCSegmentCollection>();
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
GEMCSCSegmentBuilder * segmentBuilder_
const edm::ESGetToken< GEMGeometry, MuonGeometryRecord > kGEMGeometryToken_
void LinkGEMRollsToCSCChamberIndex(const GEMGeometry *gemgeom, const CSCGeometry *cscgeom)
const edm::EDGetTokenT< GEMRecHitCollection > kGEMRecHitCollectionToken_
GEMCSCSegmentProducer(const edm::ParameterSet &)
Constructor.
Log< level::Error, false > LogError
Handle< PROD > getHandle(EDGetTokenT< PROD > token) const
~GEMCSCSegmentProducer() override
Destructor.
void build(const GEMRecHitCollection *rechits, const CSCSegmentCollection *cscsegments, GEMCSCSegmentCollection &oc)
void produce(edm::Event &, const edm::EventSetup &) override
Produce the GEM-CSCSegment collection.
HitContainer const *__restrict__ TkSoA const *__restrict__ Quality const *__restrict__ CAHitNtupletGeneratorKernelsGPU::HitToTuple const *__restrict__ int32_t int32_t int iev
const edm::EDGetTokenT< CSCSegmentCollection > kCSCSegmentCollectionToken_
void setGeometry(const GEMGeometry *gemgeom, const CSCGeometry *cscgeom)
ESHandle< T > getHandle(const ESGetToken< T, R > &iToken) const
const edm::ESGetToken< CSCGeometry, MuonGeometryRecord > kCSCGeometryToken_