1 #ifndef FWCore_Framework_ProductRegistryHelper_h
2 #define FWCore_Framework_ProductRegistryHelper_h
19 class WrapperOwningHolder;
20 class ModuleDescription;
21 class ProductRegistry;
47 void addToRegistry(TypeLabelList::const_iterator
const& iBegin,
48 TypeLabelList::const_iterator
const& iEnd,
51 bool iIsListener=
false);
61 template <
class ProductType>
63 return produces<ProductType, InEvent>(std::string());
66 template <
class ProductType>
68 return produces<ProductType, InEvent>(instanceName);
71 template <
typename ProductType, BranchType B>
73 return produces<ProductType, B>(std::string());
76 template <
typename ProductType, BranchType B>
78 TypeID tid(
typeid(ProductType));
79 return produces<B>(tid,instanceName);
84 return produces<InEvent>(
id,instanceName);
87 template <BranchType B>
std::list< TypeLabelItem > TypeLabelList
TypeLabelItem const & produces(const TypeID &id, std::string const &instanceName=std::string())
TypeLabelList typeLabelList_
TypeLabelItem const & produces(std::string const &instanceName)
std::string productInstanceName_
TypeLabelList & typeLabelList()
used by the fwk to register the list of products of this module
TypeLabelItem const & produces()
declare what type of product will make and with which optional label
TypeLabelItem const & produces()
void setBranchAlias(std::string const &alias) const
TypeLabelItem const & produces(std::string const &instanceName)
TypeLabelItem(BranchType const &branchType, TypeID const &tid, std::string const &pin)
author Stefano ARGIRO author Bill Tanenbaum
TypeLabelItem const & produces(const TypeID &id, std::string const &instanceName=std::string())
static void addToRegistry(TypeLabelList::const_iterator const &iBegin, TypeLabelList::const_iterator const &iEnd, ModuleDescription const &iDesc, ProductRegistry &iReg, bool iIsListener=false)