1 #ifndef art_Framework_Principal_Consumer_h 2 #define art_Framework_Principal_Consumer_h 85 class ModuleDescription;
95 template <
typename T, BranchType = InEvent>
98 template <
typename T, BranchType = InEvent>
101 template <
typename Element, BranchType = InEvent>
107 template <
typename T, BranchType = InEvent>
110 template <
typename T, BranchType = InEvent>
111 void mayConsumeMany();
113 template <
typename Element, BranchType = InEvent>
129 void showMissingConsumes()
const;
135 bool moduleContext_{
true};
136 bool requireConsumes_{
false};
144 template <
typename T, art::BranchType BT>
151 consumables_[BT].emplace_back(ConsumableType::Product,
159 template <
typename T, art::BranchType BT>
166 consumables_[BT].emplace_back(ConsumableType::Many,
TypeID{
typeid(
T)});
169 template <
typename T, art::BranchType BT>
176 consumables_[BT].emplace_back(ConsumableType::ViewElement,
187 template <
typename T, art::BranchType BT>
194 consumables_[BT].emplace_back(ConsumableType::Product,
202 template <
typename T, art::BranchType BT>
209 consumables_[BT].emplace_back(ConsumableType::Many,
TypeID{
typeid(
T)});
212 template <
typename T, art::BranchType BT>
219 consumables_[BT].emplace_back(ConsumableType::ViewElement,
std::array< ConsumableProductVectorPerBranch, NumBranchTypes > ConsumableProducts
ViewToken< Element > consumesView(InputTag const &)
ProductToken< T > mayConsume(InputTag const &)
Service to store calibration data products (CDP) in the SQLite3 metadatabase of a file...
std::array< ConsumableProductSetPerBranch, NumBranchTypes > ConsumableProductSets
ProductToken< T > consumes(InputTag const &)
ViewToken< Element > mayConsumeView(InputTag const &)