|
|
Go to the documentation of this file. 1 #ifndef FWCore_Framework_PrincipalGetAdapter_h
2 #define FWCore_Framework_PrincipalGetAdapter_h
87 #include <type_traits>
113 class ModuleCallingContext;
117 namespace principal_get_adapter_detail {
119 TypeID const& productType,
124 TypeID const& productType,
155 template <
typename PROD>
160 template <
typename PROD>
250 template <
typename PROD>
252 os <<
h.product() <<
" " <<
h.provenance() <<
" " <<
h.id();
271 using no_tag = std::false_type;
272 using yes_tag = std::true_type;
276 template <
typename T,
void (T::*)()>
278 template <
typename T>
280 template <
typename T>
283 template <
typename T>
285 static constexpr
bool value = std::is_same<decltype(has_postinsert_helper<T>(
nullptr)),
yes_tag>::
value &&
297 template <
typename T>
302 template <
typename T>
311 template <
typename PROD>
316 template <
typename PROD>
334 std::vector<Handle<PROD> >
products;
336 typename BasicHandleVec::iterator it = bhv.begin();
337 typename BasicHandleVec::iterator
end = bhv.end();
void setConsumer(EDConsumerBase const *iConsumer)
Principal const & principal() const
Principal const & principal_
void throwOnPutOfWrongType(std::type_info const &wrongType, TypeID const &rightType)
void setProducer(ProducerBase const *iProd)
std::vector< bool > const & recordProvenanceList() const
SharedResourcesAcquirer * getSharedResourcesAcquirer() const
PrincipalGetAdapter & operator=(PrincipalGetAdapter const &)=delete
void getManyByType_(TypeID const &tid, BasicHandleVec &results, ModuleCallingContext const *mcc) const
void throwOnPutOfUninitializedToken(char const *principalType, std::type_info const &productType)
PrincipalGetAdapter(Principal const &pcpl, ModuleDescription const &md, bool isComplete)
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex() const
ModuleDescription const & md_
ModuleDescription const & moduleDescription() const
void labelsForToken(EDGetToken const &iToken, ProductLabels &oLabels) const
ESProducts< std::remove_reference_t< TArgs >... > products(TArgs &&... args)
void setSharedResourcesAcquirer(SharedResourcesAcquirer *iSra)
no_tag has_postinsert_helper(...)
std::ostream & operator<<(std::ostream &ost, const HLTGlobalStatus &hlt)
Formatted printout of trigger tbale.
BranchDescription const & getBranchDescription(TypeID const &type, std::string const &productInstanceName) const
BasicHandle makeFailToGetException(KindOfType, TypeID const &, EDGetToken) const
void throwUnregisteredPutException(TypeID const &type, std::string const &productInstanceLabel) const
void operator()(T *p) const
BasicHandle getByToken_(TypeID const &id, KindOfType kindOfType, EDGetToken token, ModuleCallingContext const *mcc) const
ProducerBase const * prodBase_
void throwOnPrematureRead(char const *principalType, TypeID const &productType, std::string const &moduleLabel, std::string const &productInstanceName)
BasicHandle getByLabel_(TypeID const &tid, InputTag const &tag, ModuleCallingContext const *mcc) const
Transition transition() const
EDConsumerBase const * consumer_
size_t numberOfProductsConsumed() const
EDProductGetter const * prodGetter() const
void operator()(T *) const
TypeID const & getTypeIDForPutTokenIndex(EDPutToken::value_type index) const
std::string const & productInstanceLabel(EDPutToken) const
ProductID const & getProductID(unsigned int iPutTokenIndex) const
static PFTauRenderPlugin instance
EDConsumerBase const * getConsumer() const
void throwOnPutOfNullProduct(char const *principalType, TypeID const &productType, std::string const &productInstanceName)
EDPutToken::value_type getPutTokenIndex(TypeID const &type, std::string const &productInstanceName) const
SharedResourcesAcquirer * resourcesAcquirer_
void throwAmbiguousException(TypeID const &productType, EDGetToken token) const
BasicHandle getMatchingSequenceByLabel_(TypeID const &typeID, InputTag const &tag, ModuleCallingContext const *mcc) const
std::vector< BasicHandle > BasicHandleVec
void getManyByType(std::vector< Handle< PROD > > &results, ModuleCallingContext const *mcc) const
bool checkIfComplete() const
ProcessHistory const & processHistory() const
BranchType const & branchType() const