CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | Friends
edm::one::EDProducerBase Class Referenceabstract

#include <EDProducerBase.h>

Inheritance diagram for edm::one::EDProducerBase:
edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper edm::one::EDProducer< T > edm::one::EDProducer< edm::BeginLuminosityBlockProducer > edm::one::EDProducer< edm::BeginRunProducer > edm::one::EDProducer< edm::BeginRunProducer, edm::EndRunProducer > edm::one::EDProducer< edm::EndLuminosityBlockProducer > edm::one::EDProducer< edm::EndLuminosityBlockProducer, edm::one::WatchLuminosityBlocks > edm::one::EDProducer< edm::EndRunProducer > edm::one::EDProducer< edm::EndRunProducer, edm::EndLuminosityBlockProducer > edm::one::EDProducer< edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::one::WatchRuns, edm::one::WatchLuminosityBlocks > edm::one::EDProducer< edm::one::WatchLuminosityBlocks, edm::EndLuminosityBlockProducer > edm::one::EDProducer< edm::one::WatchRuns, edm::BeginLuminosityBlockProducer, edm::EndRunProducer > edm::one::EDProducer< edm::one::WatchRuns, edm::EndLuminosityBlockProducer, edm::EndRunProducer > edm::one::EDProducer< EndRunProducer > edm::one::EDProducer< one::WatchRuns, EndRunProducer >

Public Types

typedef EDProducerBase ModuleType
 
typedef WorkerT< EDProducerBaseWorkerType
 
- Public Types inherited from edm::ProducerBase
typedef
ProductRegistryHelper::TypeLabelList 
TypeLabelList
 

Public Member Functions

 EDProducerBase ()
 
virtual ~EDProducerBase ()
 
- Public Member Functions inherited from edm::ProducerBase
 ProducerBase ()
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription
const &)> 
registrationCallback () const
 used by the fwk to register list of products More...
 
virtual ~ProducerBase ()
 
- Public Member Functions inherited from edm::EDConsumerBase
 EDConsumerBase ()
 
ProductHolderIndex indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductHolderIndex > &) const
 
void itemsToGet (BranchType, std::vector< ProductHolderIndex > &) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void updateLookup (BranchType iBranchType, ProductHolderIndexHelper const &)
 
virtual ~EDConsumerBase ()
 

Static Public Member Functions

static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 

Protected Member Functions

CurrentProcessingContext const * currentContext () const
 
- Protected Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 

Private Member Functions

virtual void beginJob ()
 
void doBeginJob ()
 
void doBeginLuminosityBlock (LuminosityBlockPrincipal &lbp, EventSetup const &c, CurrentProcessingContext const *cpc)
 
virtual void doBeginLuminosityBlock_ (LuminosityBlock const &lbp, EventSetup const &c)
 
virtual void doBeginLuminosityBlockProduce_ (LuminosityBlock &lbp, EventSetup const &c)
 
void doBeginRun (RunPrincipal &rp, EventSetup const &c, CurrentProcessingContext const *cpc)
 
virtual void doBeginRun_ (Run const &rp, EventSetup const &c)
 
virtual void doBeginRunProduce_ (Run &rp, EventSetup const &c)
 
void doEndJob ()
 
void doEndLuminosityBlock (LuminosityBlockPrincipal &lbp, EventSetup const &c, CurrentProcessingContext const *cpc)
 
virtual void doEndLuminosityBlock_ (LuminosityBlock const &lbp, EventSetup const &c)
 
virtual void doEndLuminosityBlockProduce_ (LuminosityBlock &lbp, EventSetup const &c)
 
void doEndRun (RunPrincipal &rp, EventSetup const &c, CurrentProcessingContext const *cpc)
 
virtual void doEndRun_ (Run const &rp, EventSetup const &c)
 
virtual void doEndRunProduce_ (Run &rp, EventSetup const &c)
 
bool doEvent (EventPrincipal &ep, EventSetup const &c, CurrentProcessingContext const *cpcp)
 
void doPostForkReacquireResources (unsigned int iChildIndex, unsigned int iNumberOfChildren)
 
void doPreForkReleaseResources ()
 
void doRespondToCloseInputFile (FileBlock const &fb)
 
void doRespondToCloseOutputFiles (FileBlock const &fb)
 
void doRespondToOpenInputFile (FileBlock const &fb)
 
void doRespondToOpenOutputFiles (FileBlock const &fb)
 
virtual void endJob ()
 
virtual void produce (Event &, EventSetup const &)=0
 
void registerProductsAndCallbacks (EDProducerBase *module, ProductRegistry *reg)
 
void setModuleDescription (ModuleDescription const &md)
 
std::string workerType () const
 

Private Attributes

CurrentProcessingContext const * current_context_
 
ModuleDescription moduleDescription_
 
std::vector< BranchIDpreviousParentage_
 
ParentageID previousParentageId_
 

Friends

template<typename T >
class edm::WorkerT
 

Detailed Description

Definition at line 35 of file EDProducerBase.h.

Member Typedef Documentation

Definition at line 40 of file EDProducerBase.h.

Definition at line 41 of file EDProducerBase.h.

Constructor & Destructor Documentation

edm::one::EDProducerBase::EDProducerBase ( )

Definition at line 40 of file EDProducerBase.cc.

40  :
41  ProducerBase(),
43  current_context_(nullptr),
ParentageID previousParentageId_
std::vector< BranchID > previousParentage_
ModuleDescription moduleDescription_
CurrentProcessingContext const * current_context_
edm::one::EDProducerBase::~EDProducerBase ( )
virtual

Definition at line 47 of file EDProducerBase.cc.

48  {
49  }

Member Function Documentation

const std::string & edm::one::EDProducerBase::baseType ( )
static

Definition at line 181 of file EDProducerBase.cc.

References edm::one::kBaseType().

181  {
182  return kBaseType;
183  }
static const std::string kBaseType("EDFilter")
virtual void edm::one::EDProducerBase::beginJob ( void  )
inlineprivatevirtual

Reimplemented in LaserAlignment, GlobalHitsProdHist, MEtoEDMConverter, L1GtTriggerMenuLiteProducer, and AlcaBeamSpotFromDB.

Definition at line 86 of file EDProducerBase.h.

Referenced by doBeginJob().

86 {}
CurrentProcessingContext const * edm::one::EDProducerBase::currentContext ( ) const
protected

Definition at line 162 of file EDProducerBase.cc.

References current_context_.

162  {
163  return current_context_;
164  }
CurrentProcessingContext const * current_context_
void edm::one::EDProducerBase::doBeginJob ( )
private

Definition at line 63 of file EDProducerBase.cc.

References beginJob().

63  {
64  this->beginJob();
65  }
void edm::one::EDProducerBase::doBeginLuminosityBlock ( LuminosityBlockPrincipal lbp,
EventSetup const &  c,
CurrentProcessingContext const *  cpc 
)
private

Definition at line 98 of file EDProducerBase.cc.

References edm::ProducerBase::commit_(), current_context_, doBeginLuminosityBlock_(), doBeginLuminosityBlockProduce_(), moduleDescription_, and edm::LuminosityBlock::setConsumer().

99  {
100  detail::CPCSentry sentry(current_context_, cpc);
102  lb.setConsumer(this);
103  LuminosityBlock const& cnstLb = lb;
104  this->doBeginLuminosityBlock_(cnstLb, c);
106  commit_(lb);
107  }
virtual void doBeginLuminosityBlockProduce_(LuminosityBlock &lbp, EventSetup const &c)
virtual void doBeginLuminosityBlock_(LuminosityBlock const &lbp, EventSetup const &c)
void commit_(P &iPrincipal)
Definition: ProducerBase.h:55
ModuleDescription moduleDescription_
CurrentProcessingContext const * current_context_
void edm::one::EDProducerBase::doBeginLuminosityBlock_ ( LuminosityBlock const &  lbp,
EventSetup const &  c 
)
privatevirtual

Definition at line 153 of file EDProducerBase.cc.

Referenced by doBeginLuminosityBlock().

153 {}
void edm::one::EDProducerBase::doBeginLuminosityBlockProduce_ ( LuminosityBlock lbp,
EventSetup const &  c 
)
privatevirtual

Definition at line 158 of file EDProducerBase.cc.

Referenced by doBeginLuminosityBlock().

158 {}
void edm::one::EDProducerBase::doBeginRun ( RunPrincipal rp,
EventSetup const &  c,
CurrentProcessingContext const *  cpc 
)
private

Definition at line 73 of file EDProducerBase.cc.

References edm::ProducerBase::commit_(), current_context_, doBeginRun_(), doBeginRunProduce_(), moduleDescription_, alignCSCRings::r, and edm::Run::setConsumer().

74  {
75 
76  detail::CPCSentry sentry(current_context_, cpc);
78  r.setConsumer(this);
79  Run const& cnstR = r;
80  this->doBeginRun_(cnstR, c);
81  this->doBeginRunProduce_(r,c);
82  commit_(r);
83  }
virtual void doBeginRun_(Run const &rp, EventSetup const &c)
virtual void doBeginRunProduce_(Run &rp, EventSetup const &c)
void commit_(P &iPrincipal)
Definition: ProducerBase.h:55
ModuleDescription moduleDescription_
CurrentProcessingContext const * current_context_
void edm::one::EDProducerBase::doBeginRun_ ( Run const &  rp,
EventSetup const &  c 
)
privatevirtual

Definition at line 151 of file EDProducerBase.cc.

Referenced by doBeginRun().

151 {}
void edm::one::EDProducerBase::doBeginRunProduce_ ( Run rp,
EventSetup const &  c 
)
privatevirtual

Definition at line 156 of file EDProducerBase.cc.

Referenced by doBeginRun().

156 {}
void edm::one::EDProducerBase::doEndJob ( )
private

Definition at line 68 of file EDProducerBase.cc.

References endJob().

68  {
69  this->endJob();
70  }
void edm::one::EDProducerBase::doEndLuminosityBlock ( LuminosityBlockPrincipal lbp,
EventSetup const &  c,
CurrentProcessingContext const *  cpc 
)
private

Definition at line 110 of file EDProducerBase.cc.

References edm::ProducerBase::commit_(), current_context_, doEndLuminosityBlock_(), doEndLuminosityBlockProduce_(), moduleDescription_, and edm::LuminosityBlock::setConsumer().

111  {
112  detail::CPCSentry sentry(current_context_, cpc);
114  lb.setConsumer(this);
115  LuminosityBlock const& cnstLb = lb;
116  this->doEndLuminosityBlock_(cnstLb, c);
117  this->doEndLuminosityBlockProduce_(lb, c);
118  commit_(lb);
119  }
virtual void doEndLuminosityBlock_(LuminosityBlock const &lbp, EventSetup const &c)
virtual void doEndLuminosityBlockProduce_(LuminosityBlock &lbp, EventSetup const &c)
void commit_(P &iPrincipal)
Definition: ProducerBase.h:55
ModuleDescription moduleDescription_
CurrentProcessingContext const * current_context_
void edm::one::EDProducerBase::doEndLuminosityBlock_ ( LuminosityBlock const &  lbp,
EventSetup const &  c 
)
privatevirtual

Definition at line 154 of file EDProducerBase.cc.

Referenced by doEndLuminosityBlock().

154 {}
void edm::one::EDProducerBase::doEndLuminosityBlockProduce_ ( LuminosityBlock lbp,
EventSetup const &  c 
)
privatevirtual

Definition at line 159 of file EDProducerBase.cc.

Referenced by doEndLuminosityBlock().

159 {}
void edm::one::EDProducerBase::doEndRun ( RunPrincipal rp,
EventSetup const &  c,
CurrentProcessingContext const *  cpc 
)
private

Definition at line 86 of file EDProducerBase.cc.

References edm::ProducerBase::commit_(), current_context_, doEndRun_(), doEndRunProduce_(), moduleDescription_, alignCSCRings::r, and edm::Run::setConsumer().

87  {
88  detail::CPCSentry sentry(current_context_, cpc);
90  r.setConsumer(this);
91  Run const& cnstR = r;
92  this->doEndRun_(cnstR, c);
93  this->doEndRunProduce_(r, c);
94  commit_(r);
95  }
virtual void doEndRunProduce_(Run &rp, EventSetup const &c)
void commit_(P &iPrincipal)
Definition: ProducerBase.h:55
ModuleDescription moduleDescription_
CurrentProcessingContext const * current_context_
virtual void doEndRun_(Run const &rp, EventSetup const &c)
void edm::one::EDProducerBase::doEndRun_ ( Run const &  rp,
EventSetup const &  c 
)
privatevirtual

Definition at line 152 of file EDProducerBase.cc.

Referenced by doEndRun().

152 {}
void edm::one::EDProducerBase::doEndRunProduce_ ( Run rp,
EventSetup const &  c 
)
privatevirtual

Definition at line 157 of file EDProducerBase.cc.

Referenced by doEndRun().

157 {}
bool edm::one::EDProducerBase::doEvent ( EventPrincipal ep,
EventSetup const &  c,
CurrentProcessingContext const *  cpcp 
)
private

Definition at line 52 of file EDProducerBase.cc.

References edm::ProducerBase::commit_(), current_context_, alignCSCRings::e, moduleDescription_, previousParentage_, previousParentageId_, produce(), and edm::Event::setConsumer().

53  {
54  detail::CPCSentry sentry(current_context_, cpc);
56  e.setConsumer(this);
57  this->produce(e, c);
59  return true;
60  }
ParentageID previousParentageId_
void commit_(P &iPrincipal)
Definition: ProducerBase.h:55
std::vector< BranchID > previousParentage_
ModuleDescription moduleDescription_
virtual void produce(Event &, EventSetup const &)=0
CurrentProcessingContext const * current_context_
void edm::one::EDProducerBase::doPostForkReacquireResources ( unsigned int  iChildIndex,
unsigned int  iNumberOfChildren 
)
private

Definition at line 147 of file EDProducerBase.cc.

147  {
148  //postForkReacquireResources(iChildIndex, iNumberOfChildren);
149  }
void edm::one::EDProducerBase::doPreForkReleaseResources ( )
private

Definition at line 142 of file EDProducerBase.cc.

142  {
143  //preForkReleaseResources();
144  }
void edm::one::EDProducerBase::doRespondToCloseInputFile ( FileBlock const &  fb)
private

Definition at line 127 of file EDProducerBase.cc.

127  {
128  //respondToCloseInputFile(fb);
129  }
void edm::one::EDProducerBase::doRespondToCloseOutputFiles ( FileBlock const &  fb)
private

Definition at line 137 of file EDProducerBase.cc.

137  {
138  //respondToCloseOutputFiles(fb);
139  }
void edm::one::EDProducerBase::doRespondToOpenInputFile ( FileBlock const &  fb)
private

Definition at line 122 of file EDProducerBase.cc.

122  {
123  //respondToOpenInputFile(fb);
124  }
void edm::one::EDProducerBase::doRespondToOpenOutputFiles ( FileBlock const &  fb)
private

Definition at line 132 of file EDProducerBase.cc.

132  {
133  //respondToOpenOutputFiles(fb);
134  }
virtual void edm::one::EDProducerBase::endJob ( void  )
inlineprivatevirtual
void edm::one::EDProducerBase::fillDescriptions ( ConfigurationDescriptions descriptions)
static

Definition at line 167 of file EDProducerBase.cc.

References edm::ConfigurationDescriptions::addDefault(), and edm::ParameterSetDescription::setUnknown().

167  {
169  desc.setUnknown();
170  descriptions.addDefault(desc);
171  }
void edm::one::EDProducerBase::prevalidate ( ConfigurationDescriptions descriptions)
static

Definition at line 174 of file EDProducerBase.cc.

References edm::edmodule_mightGet_config().

174  {
175  edmodule_mightGet_config(iConfig);
176  }
void edmodule_mightGet_config(ConfigurationDescriptions &iDesc)
virtual void edm::one::EDProducerBase::produce ( Event ,
EventSetup const &   
)
privatepure virtual
void edm::one::EDProducerBase::registerProductsAndCallbacks ( EDProducerBase module,
ProductRegistry reg 
)
inlineprivate

Definition at line 80 of file EDProducerBase.h.

References moduleDescription_, and edm::ProducerBase::registerProducts().

80  {
82  }
void registerProducts(ProducerBase *, ProductRegistry *, ModuleDescription const &)
Definition: ProducerBase.cc:60
Definition: vlib.h:209
ModuleDescription moduleDescription_
void edm::one::EDProducerBase::setModuleDescription ( ModuleDescription const &  md)
inlineprivate

Definition at line 100 of file EDProducerBase.h.

References moduleDescription_.

100  {
101  moduleDescription_ = md;
102  }
ModuleDescription moduleDescription_
std::string edm::one::EDProducerBase::workerType ( ) const
inlineprivate

Definition at line 83 of file EDProducerBase.h.

83 {return "WorkerT<EDProducer>";}

Friends And Related Function Documentation

template<typename T >
friend class edm::WorkerT
friend

Definition at line 39 of file EDProducerBase.h.

Member Data Documentation

CurrentProcessingContext const* edm::one::EDProducerBase::current_context_
private
ModuleDescription edm::one::EDProducerBase::moduleDescription_
private
std::vector<BranchID> edm::one::EDProducerBase::previousParentage_
private

Definition at line 105 of file EDProducerBase.h.

Referenced by doEvent().

ParentageID edm::one::EDProducerBase::previousParentageId_
private

Definition at line 106 of file EDProducerBase.h.

Referenced by doEvent().