CMS 3D CMS Logo

ProducesCollector.h
Go to the documentation of this file.
1 #ifndef FWCore_Framework_ProducesCollector_h
2 #define FWCore_Framework_ProducesCollector_h
3 
4 // Package: FWCore/Framework
5 // Class : edm::ProducesCollector
6 //
28 //
29 // Original Author: W. David Dagenhart
30 // Created: 24 September 2019
31 
35 
36 #include <string>
37 #include <utility>
38 
39 namespace edm {
40 
41  class TypeID;
42 
44  public:
45  ProducesCollector() = delete;
50 
51  template <class ProductType>
53  return helper_->produces<ProductType>();
54  }
55 
56  template <class ProductType>
58  return helper_->produces<ProductType>(std::move(instanceName));
59  }
60 
61  template <typename ProductType, Transition B>
63  return helper_->produces<ProductType, B>();
64  }
65 
66  template <typename ProductType, Transition B>
68  return helper_->produces<ProductType, B>(std::move(instanceName));
69  }
70 
73  bool recordProvenance = true);
74 
75  template <Transition B>
78  bool recordProvenance = true) {
79  return helper_->produces<B>(id, std::move(instanceName), recordProvenance);
80  }
81 
82  private:
83  friend class ProducerBase;
85 
87  };
88 
89 } // namespace edm
90 #endif
Definition: helper.py:1
ProductRegistryHelper::BranchAliasSetterT< ProductType > produces()
ProductRegistryHelper::BranchAliasSetter produces(const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
ProductRegistryHelper::BranchAliasSetterT< ProductType > produces(std::string instanceName)
ProductRegistryHelper::BranchAliasSetterT< ProductType > produces(std::string instanceName)
static const std::string B
ProducesCollector & operator=(ProducesCollector const &)
propagate_const< ProductRegistryHelper * > helper_
HLT enums.
ProductRegistryHelper::BranchAliasSetterT< ProductType > produces()
def move(src, dest)
Definition: eostools.py:511