CMS 3D CMS Logo

EDFilter.cc
Go to the documentation of this file.
1 /*----------------------------------------------------------------------
2 
3 
4 ----------------------------------------------------------------------*/
5 
13 
15 
18 
19 namespace edm {
20 
21  EDFilter::EDFilter() : ProducerBase(), moduleDescription_(), previousParentage_(), previousParentageId_() {
23  }
24 
26 
28  EventSetupImpl const& c,
29  ActivityRegistry* act,
30  ModuleCallingContext const* mcc) {
31  bool rc = false;
32  Event e(ep, moduleDescription_, mcc);
33  e.setConsumer(this);
36  EventSignalsSentry sentry(act, mcc);
37  rc = this->filter(
38  e, EventSetup{c, static_cast<unsigned int>(Transition::Event), esGetTokenIndices(Transition::Event)});
40  return rc;
41  }
42 
44  std::vector<std::string> res = {SharedResourcesRegistry::kLegacyModuleResourceName};
46 
47  this->beginJob();
48  }
49 
50  void EDFilter::doEndJob() { this->endJob(); }
51 
53  Run r(rp, moduleDescription_, mcc, false);
54  r.setConsumer(this);
55  Run const& cnstR = r;
56  this->beginRun(
57  cnstR, EventSetup{c, static_cast<unsigned int>(Transition::BeginRun), esGetTokenIndices(Transition::BeginRun)});
58  commit_(r);
59  return;
60  }
61 
63  Run r(rp, moduleDescription_, mcc, true);
64  r.setConsumer(this);
65  Run const& cnstR = r;
66  this->endRun(cnstR,
67  EventSetup{c, static_cast<unsigned int>(Transition::EndRun), esGetTokenIndices(Transition::EndRun)});
68  commit_(r);
69  return;
70  }
71 
73  EventSetupImpl const& c,
74  ModuleCallingContext const* mcc) {
75  LuminosityBlock lb(lbp, moduleDescription_, mcc, false);
76  lb.setConsumer(this);
77  LuminosityBlock const& cnstLb = lb;
78  this->beginLuminosityBlock(cnstLb,
79  EventSetup{c,
80  static_cast<unsigned int>(Transition::BeginLuminosityBlock),
82  commit_(lb);
83  }
84 
86  EventSetupImpl const& c,
87  ModuleCallingContext const* mcc) {
88  LuminosityBlock lb(lbp, moduleDescription_, mcc, true);
89  lb.setConsumer(this);
90  LuminosityBlock const& cnstLb = lb;
91  this->endLuminosityBlock(cnstLb,
92  EventSetup{c,
93  static_cast<unsigned int>(Transition::EndLuminosityBlock),
95  commit_(lb);
96  return;
97  }
98 
100 
102 
105  desc.setUnknown();
106  descriptions.addDefault(desc);
107  }
108 
110 
111  static const std::string kBaseType("EDFilter");
113 } // namespace edm
std::vector< BranchID > previousParentage_
Definition: EDFilter.h:115
static void prevalidate(ConfigurationDescriptions &)
Definition: EDFilter.cc:109
virtual void endJob()
Definition: EDFilter.h:101
void setConsumer(EDConsumerBase const *iConsumer)
bool doEvent(EventPrincipal const &ep, EventSetupImpl const &c, ActivityRegistry *act, ModuleCallingContext const *mcc)
Definition: EDFilter.cc:27
virtual void beginRun(Run const &, EventSetup const &)
Definition: EDFilter.h:103
void doEndLuminosityBlock(LuminosityBlockPrincipal const &lbp, EventSetupImpl const &c, ModuleCallingContext const *mcc)
Definition: EDFilter.cc:85
SharedResourcesAcquirer createAcquirer(std::vector< std::string > const &) const
virtual void respondToCloseInputFile(FileBlock const &)
Definition: EDFilter.h:108
ParentageID previousParentageId_
Definition: EDFilter.h:119
static const std::string & baseType()
Definition: EDFilter.cc:112
void setConsumer(EDConsumerBase const *iConsumer)
Definition: Event.cc:37
SharedResourcesAcquirer resourceAcquirer_
Definition: EDFilter.h:116
virtual void endLuminosityBlock(LuminosityBlock const &, EventSetup const &)
Definition: EDFilter.h:106
void doRespondToCloseInputFile(FileBlock const &fb)
Definition: EDFilter.cc:101
Definition: Electron.h:6
void addDefault(ParameterSetDescription const &psetDescription)
static void fillDescriptions(ConfigurationDescriptions &descriptions)
Definition: EDFilter.cc:103
void doEndRun(RunPrincipal const &rp, EventSetupImpl const &c, ModuleCallingContext const *mcc)
Definition: EDFilter.cc:62
static SharedResourcesRegistry * instance()
void doEndJob()
Definition: EDFilter.cc:50
void edmodule_mightGet_config(ConfigurationDescriptions &iDesc)
void doBeginRun(RunPrincipal const &rp, EventSetupImpl const &c, ModuleCallingContext const *mcc)
Definition: EDFilter.cc:52
virtual void beginLuminosityBlock(LuminosityBlock const &, EventSetup const &)
Definition: EDFilter.h:105
virtual bool filter(Event &, EventSetup const &)=0
void registerSharedResource(const std::string &)
A resource name must be registered before it can be used in the createAcquirer call.
void setProducer(ProducerBase const *iProd, std::vector< BranchID > *previousParentage, std::vector< BranchID > *gotBranchIDsFromAcquire=0)
Definition: Event.cc:55
virtual void endRun(Run const &, EventSetup const &)
Definition: EDFilter.h:104
static const std::string kLegacyModuleResourceName
All legacy modules share this resource.
void doRespondToOpenInputFile(FileBlock const &fb)
Definition: EDFilter.cc:99
void doBeginJob()
Definition: EDFilter.cc:43
static const std::string kBaseType("EDAnalyzer")
ModuleDescription moduleDescription_
Definition: EDFilter.h:114
void setSharedResourcesAcquirer(SharedResourcesAcquirer *iResourceAcquirer)
Definition: Event.cc:43
HLT enums.
virtual void beginJob()
Definition: EDFilter.h:100
void commit_(P &iPrincipal)
Definition: ProducerBase.h:111
void setConsumer(EDConsumerBase const *iConsumer)
Definition: Run.h:51
virtual void respondToOpenInputFile(FileBlock const &)
Definition: EDFilter.h:107
void doBeginLuminosityBlock(LuminosityBlockPrincipal const &lbp, EventSetupImpl const &c, ModuleCallingContext const *mcc)
Definition: EDFilter.cc:72
Definition: Run.h:45
~EDFilter() override
Definition: EDFilter.cc:25
ESProxyIndex const * esGetTokenIndices(edm::Transition iTrans) const