1 #ifndef FWCore_Framework_PrincipalGetAdapter_h
2 #define FWCore_Framework_PrincipalGetAdapter_h
89 #include <boost/type_traits.hpp>
113 class ModuleCallingContext;
115 namespace principal_get_adapter_detail {
145 template <
typename PROD>
149 template <
typename PROD>
236 template <
typename PROD>
239 operator<<(std::ostream& os, Handle<PROD>
const&
h) {
240 os <<
h.product() <<
" " <<
h.provenance() <<
" " <<
h.id();
273 sizeof(has_postinsert_helper<T>(
nullptr)) ==
sizeof(
yes_tag) &&
281 template <
typename T>
295 template <
typename T>
300 template <
typename T>
309 template <
typename PROD>
316 template <
typename PROD>
336 std::vector<Handle<PROD> >
products;
338 typename BasicHandleVec::iterator it = bhv.begin();
339 typename BasicHandleVec::iterator
end = bhv.end();
344 products.push_back(result);
ProcessHistory const & processHistory() const
BasicHandle getByToken_(TypeID const &id, KindOfType kindOfType, EDGetToken token, ModuleCallingContext const *mcc) const
void setConsumer(EDConsumerBase const *iConsumer)
BasicHandle getMatchingSequenceByLabel_(TypeID const &typeID, InputTag const &tag, ModuleCallingContext const *mcc) const
void operator()(T *p) const
Principal const & principal() const
BasicHandle getByLabel_(TypeID const &tid, InputTag const &tag, ModuleCallingContext const *mcc) const
PrincipalGetAdapter(Principal &pcpl, ModuleDescription const &md)
static PFTauRenderPlugin instance
no_tag has_postinsert_helper(...)
EDConsumerBase const * consumer_
BranchType const & branchType() const
EDProductGetter const * prodGetter() const
ESProducts< T, S > products(const T &i1, const S &i2)
void getManyByType(std::vector< Handle< PROD > > &results, ModuleCallingContext const *mcc) const
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.
PrincipalGetAdapter & operator=(PrincipalGetAdapter const &)=delete
void convert_handle(BasicHandle &&bh, Handle< T > &result)
BranchDescription const & getBranchDescription(TypeID const &type, std::string const &productInstanceName) const
void getManyByType_(TypeID const &tid, BasicHandleVec &results, ModuleCallingContext const *mcc) const
BasicHandle makeFailToGetException(KindOfType, TypeID const &, EDGetToken) const
void operator()(T *) const
void throwOnPrematureRead(char const *principalType, TypeID const &productType, std::string const &moduleLabel, std::string const &productInstanceName)
ModuleDescription const & md_
void throwOnPutOfNullProduct(char const *principalType, TypeID const &productType, std::string const &productInstanceName)
bool checkIfComplete() const
void throwAmbiguousException(TypeID const &productType, EDGetToken token) const
void labelsForToken(EDGetToken const &iToken, ProductLabels &oLabels) const
std::vector< BasicHandle > BasicHandleVec