CMS 3D CMS Logo

MuIsoDepositCopyProducer.cc
Go to the documentation of this file.
2 
3 // Framework
8 
10 
12 
14 #include <string>
15 
16 using namespace edm;
17 using namespace std;
18 using namespace reco;
19 
22  : theConfig(par),
23  theInputTags(par.getParameter<std::vector<edm::InputTag> >("inputTags")),
24  theDepositNames(par.getParameter<std::vector<std::string> >("depositNames"))
25 
26 {
27  LogDebug("RecoMuon|MuonIsolation") << " MuIsoDepositCopyProducer CTOR";
28  if (theInputTags.size() != theDepositNames.size()) {
29  throw cms::Exception("MuIsoDepositCopyProducer constructor") << "the sizes of input/output vectors don't match";
30  }
31 
32  for (unsigned int i = 0; i < theDepositNames.size(); ++i) {
34  if (!theDepositNames[i].empty())
35  alias += "_" + theDepositNames[i];
36  produces<reco::IsoDepositMap>(theDepositNames[i]).setBranchAlias(alias);
37  }
38  for (unsigned int iDep = 0; iDep < theInputTags.size(); ++iDep)
39  theInputTokens.push_back(consumes<reco::IsoDepositMap>(theInputTags.at(iDep)));
40 }
41 
44  LogDebug("RecoMuon/MuIsoDepositCopyProducer") << " MuIsoDepositCopyProducer DTOR";
45 }
46 
49  std::string metname = "RecoMuon|MuonIsolationProducers|MuIsoDepositCopyProducer";
50 
51  LogDebug(metname) << " Muon Deposit producing..."
52  << " BEGINING OF EVENT "
53  << "================================";
54 
55  LogTrace(metname) << " Taking the inputs: ";
56 
57  for (unsigned int iDep = 0; iDep < theInputTokens.size(); ++iDep) {
59  event.getByToken(theInputTokens[iDep], inDep);
60 
61  event.put(std::make_unique<reco::IsoDepositMap>(*inDep), theDepositNames[iDep]);
62  }
63 
64  LogTrace(metname) << " END OF EVENT "
65  << "================================";
66 }
67 
Handle.h
mps_fire.i
i
Definition: mps_fire.py:355
MessageLogger.h
EDProducer.h
ESHandle.h
edm
HLT enums.
Definition: AlignableModifier.h:19
MuIsoDepositCopyProducer::produce
void produce(edm::Event &, const edm::EventSetup &) override
data making method
Definition: MuIsoDepositCopyProducer.cc:48
MuIsoDepositCopyProducer
Definition: MuIsoDepositCopyProducer.h:20
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:45
edm::Handle
Definition: AssociativeIterator.h:50
MakerMacros.h
DEFINE_FWK_MODULE
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:16
MuIsoDepositCopyProducer::theConfig
edm::ParameterSet theConfig
module configuration
Definition: MuIsoDepositCopyProducer.h:33
MuIsoDepositCopyProducer::theDepositNames
std::vector< std::string > theDepositNames
Definition: MuIsoDepositCopyProducer.h:38
MuIsoDepositCopyProducer::~MuIsoDepositCopyProducer
~MuIsoDepositCopyProducer() override
destructor
Definition: MuIsoDepositCopyProducer.cc:43
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
LogDebug
#define LogDebug(id)
Definition: MessageLogger.h:670
edm::ParameterSet
Definition: ParameterSet.h:36
Event.h
ModuleDef.h
edm::EventSetup
Definition: EventSetup.h:57
MuIsoDepositCopyProducer.h
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
std
Definition: JetResolutionObject.h:76
SiStripOfflineCRack_cfg.alias
alias
Definition: SiStripOfflineCRack_cfg.py:129
relativeConstraints.empty
bool empty
Definition: relativeConstraints.py:46
Exception
Definition: hltDiff.cc:246
EventSetup.h
Exception.h
MuIsoDepositCopyProducer::theInputTokens
std::vector< edm::EDGetTokenT< reco::IsoDepositMap > > theInputTokens
Definition: MuIsoDepositCopyProducer.h:37
LogTrace
#define LogTrace(id)
Definition: MessageLogger.h:671
MuIsoDepositCopyProducer::MuIsoDepositCopyProducer
MuIsoDepositCopyProducer(const edm::ParameterSet &)
constructor
Definition: MuIsoDepositCopyProducer.cc:21
event
Definition: event.py:1
edm::Event
Definition: Event.h:73
edm::InputTag
Definition: InputTag.h:15
MuIsoDepositCopyProducer::theInputTags
std::vector< edm::InputTag > theInputTags
for backward compatibility: take one input module and
Definition: MuIsoDepositCopyProducer.h:36
metname
const std::string metname
Definition: MuonSeedOrcaPatternRecognition.cc:43