CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
ProductRegistryHelper.cc
Go to the documentation of this file.
1 /*----------------------------------------------------------------------
2 
3 ----------------------------------------------------------------------*/
4 
10 
11 namespace edm {
13 
15  return typeLabelList_;
16  }
17 
18  void
19  ProductRegistryHelper::addToRegistry(TypeLabelList::const_iterator const& iBegin,
20  TypeLabelList::const_iterator const& iEnd,
21  ModuleDescription const& iDesc,
22  ProductRegistry& iReg,
23  bool iIsListener) {
24  std::string const prefix("LCGReflex/");
25  for (TypeLabelList::const_iterator p = iBegin; p != iEnd; ++p) {
26  edmplugin::PluginCapabilities::get()->tryToLoad(prefix + p->typeID_.userClassName());
27  BranchDescription pdesc(p->branchType_,
28  iDesc.moduleLabel(),
29  iDesc.processName(),
30  p->typeID_.userClassName(),
31  p->typeID_.friendlyClassName(),
32  p->productInstanceName_,
33  iDesc,
34  p->typeID_);
35  if (!p->branchAlias_.empty()) pdesc.branchAliases().insert(p->branchAlias_);
36  iReg.addProduct(pdesc, iIsListener);
37  }//for
38  }
39 }
std::list< TypeLabelItem > TypeLabelList
std::string const & processName() const
std::string const & moduleLabel() const
TypeLabelList & typeLabelList()
used by the fwk to register the list of products of this module
static PluginCapabilities * get()
bool tryToLoad(const std::string &iName)
std::set< std::string > const & branchAliases() const
author Stefano ARGIRO author Bill Tanenbaum
static void addToRegistry(TypeLabelList::const_iterator const &iBegin, TypeLabelList::const_iterator const &iEnd, ModuleDescription const &iDesc, ProductRegistry &iReg, bool iIsListener=false)
void addProduct(BranchDescription const &productdesc, bool iFromListener=false)