1 #ifndef FWCore_Framework_ProductRegistryHelper_h
2 #define FWCore_Framework_ProductRegistryHelper_h
16 class WrapperOwningHolder;
17 class ModuleDescription;
18 class ProductRegistry;
44 void addToRegistry(TypeLabelList::const_iterator
const& iBegin,
45 TypeLabelList::const_iterator
const& iEnd,
48 bool iIsListener=
false);
58 template <
class ProductType>
60 return produces<ProductType, InEvent>(
std::string());
63 template <
class ProductType>
65 return produces<ProductType, InEvent>(instanceName);
68 template <
typename ProductType, BranchType B>
73 template <
typename ProductType, BranchType B>
75 TypeID tid(
typeid(ProductType));
76 return produces<B>(tid,instanceName);
81 return produces<InEvent>(id,instanceName);
84 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)
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)