CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
SiStripRecHitConverter.cc
Go to the documentation of this file.
7 
9  : recHitConverterAlgorithm(conf, consumesCollector()),
10  matchedRecHitsTag(conf.getParameter<std::string>("matchedRecHits")),
11  rphiRecHitsTag(conf.getParameter<std::string>("rphiRecHits")),
12  stereoRecHitsTag(conf.getParameter<std::string>("stereoRecHits")),
13  doMatching(conf.getParameter<bool>("doMatching")) {
15  consumes<edmNew::DetSetVector<SiStripCluster> >(conf.getParameter<edm::InputTag>("ClusterProducer"));
16 
17  produces<SiStripRecHit2DCollection>(rphiRecHitsTag);
18  produces<SiStripRecHit2DCollection>(stereoRecHitsTag);
19  if (doMatching) {
20  produces<SiStripMatchedRecHit2DCollection>(matchedRecHitsTag);
21  produces<SiStripRecHit2DCollection>(rphiRecHitsTag + "Unmatched");
22  produces<SiStripRecHit2DCollection>(stereoRecHitsTag + "Unmatched");
23  }
24 }
25 
28  desc.add<edm::InputTag>("ClusterProducer", edm::InputTag("siStripClusters"));
29  desc.add<std::string>("rphiRecHits", "rphiRecHit");
30  desc.add<std::string>("stereoRecHits", "stereoRecHit");
31  desc.add<std::string>("matchedRecHits", "matchedRecHit");
32 
34 
35  // unused? could be removed after parameter gets removed from HLT menu?
36  desc.addOptionalUntracked<int>("VerbosityLevel");
37 
38  descriptions.addWithDefaultLabel(desc);
39 }
40 
43 
45  e.getByToken(clusterProducer, clusters);
47  recHitConverterAlgorithm.run(clusters, output);
48  output.shrink_to_fit();
49  LogDebug("SiStripRecHitConverter") << "found\n"
50  << output.rphi->dataSize() << " clusters in mono detectors\n"
51  << output.stereo->dataSize() << " clusters in partners stereo detectors\n";
52 
53  e.put(std::move(output.rphi), rphiRecHitsTag);
55  if (doMatching) {
57  e.put(std::move(output.rphiUnmatched), rphiRecHitsTag + "Unmatched");
58  e.put(std::move(output.stereoUnmatched), stereoRecHitsTag + "Unmatched");
59  }
60 }
void addWithDefaultLabel(ParameterSetDescription const &psetDescription)
std::unique_ptr< SiStripMatchedRecHit2DCollection > matched
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
Definition: Event.h:133
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:539
void run(edm::Handle< edmNew::DetSetVector< SiStripCluster > > input, products &output)
std::unique_ptr< SiStripRecHit2DCollection > rphi
void produce(edm::Event &, const edm::EventSetup &) override
std::unique_ptr< SiStripRecHit2DCollection > stereo
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
def move
Definition: eostools.py:511
SiStripRecHitConverter(const edm::ParameterSet &)
ParameterDescriptionBase * add(U const &iLabel, T const &value)
edm::EDGetTokenT< edmNew::DetSetVector< SiStripCluster > > clusterProducer
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
std::unique_ptr< SiStripRecHit2DCollection > stereoUnmatched
ParameterDescriptionBase * addOptionalUntracked(U const &iLabel, T const &value)
std::unique_ptr< SiStripRecHit2DCollection > rphiUnmatched
static void fillPSetDescription(edm::ParameterSetDescription &desc)
SiStripRecHitConverterAlgorithm recHitConverterAlgorithm
#define LogDebug(id)