28 isComplete_(isComplete)
37 char const* principalType,
42 <<
"::put: A null unique_ptr was passed to 'put'.\n" 43 <<
"The pointer is of type " 45 <<
".\nThe specified productInstanceName was '" 46 << productInstanceName
55 <<
"::put: An uninitialized EDPutToken was passed to 'put'.\n" 56 <<
"The pointer is of type " 63 TypeID wrongTypeID{wrongType};
65 <<
"The registered type for an EDPutToken does not match the put type.\n" 66 <<
"The expected type " 75 char const* principalType,
81 <<
"::getByLabel: An attempt was made to read a " 83 <<
" product before end" 86 <<
"The product is of type '" 88 <<
"'.\nThe specified ModuleLabel was '" 90 <<
"'.\nThe specified productInstanceName was '" 91 << productInstanceName
97 char const* principalType,
98 TypeID const& productType) {
101 <<
"::getManyByType: An attempt was made to read a " 103 <<
" product before end" 105 <<
"() was called.\n" 106 <<
"The product is of type '" 113 char const* principalType,
114 TypeID const& productType,
117 <<
"::getByToken: An attempt was made to read a " 119 <<
" product before end" 121 <<
"() was called.\n" 122 <<
"The index of the token was "<<token.
index()<<
".\n";
137 TypeID const& productType,
146 *exception <<
"Principal::getByToken: Found zero products matching all criteria\nLooking for type: " << productType <<
"\n" 147 <<
"Looking for module label: " << labels.
module <<
"\n" <<
"Looking for productInstanceName: " << labels.
productInstance <<
"\n" 148 << (0==labels.
process[0] ?
"" :
"Looking for process: ") << labels.
process <<
"\n";
150 *exception <<
"Principal::getByToken: Found zero products matching all criteria\nLooking for a container with elements of type: " << productType <<
"\n" 151 <<
"Looking for module label: " << labels.
module <<
"\n" <<
"Looking for productInstanceName: " << labels.
productInstance <<
"\n" 152 << (0==labels.
process[0] ?
"" :
"Looking for process: ") << labels.
process <<
"\n";
164 exception <<
"Principal::getByToken: More than 1 product matches all criteria\nLooking for a container with elements of type: " << productType <<
"\n" 165 <<
"Looking for module label: " << labels.
module <<
"\n" <<
"Looking for productInstanceName: " << labels.
productInstance <<
"\n" 166 << (0==labels.
process[0] ?
"" :
"Looking for process: ") << labels.
process <<
"\n" 167 <<
"This can only occur with get function calls using a Handle<View> argument.\n" 168 <<
"Try a get not using a View or change the instance name of one of the products";
205 bool ambiguous =
false;
255 std::ostringstream
str;
258 str << *branchDescription<<
"-----\n";
262 <<
"Illegal attempt to 'put' an unregistered product.\n" 263 <<
"No product is registered for\n" 266 <<
" product instance name: '" << productInstanceName <<
"'\n" 269 <<
"The following data products are registered for production by "<<
md_.
moduleLabel()<<
":\n" 272 <<
"To correct the problem:\n" 273 " 1) make sure the proper 'produce' call is being made in the module's constructor,\n" 274 " 2) if 'produce' exists and uses a product instance name make sure that same name is used during the 'put' call.";
286 assert(phb !=
nullptr);
294 assert(phb !=
nullptr);
302 assert(phb !=
nullptr);
304 assert(prov !=
nullptr);
305 return prov->productID();
332 if((tran == tl.transition_) and (type == tl.typeID_)
333 and (productInstanceName == tl.productInstanceName_)) {
354 std::vector<edm::ProductResolverIndex>
const&
359 std::vector<bool>
const&
ProcessHistory const & processHistory() const
SharedResourcesAcquirer * resourcesAcquirer_
BasicHandle getByToken_(TypeID const &id, KindOfType kindOfType, EDGetToken token, ModuleCallingContext const *mcc) const
ProductRegistry const & productRegistry() const
BasicHandle getMatchingSequenceByLabel_(TypeID const &typeID, InputTag const &tag, ModuleCallingContext const *mcc) const
size_t numberOfProductsConsumed() const
unsigned int ProductResolverIndex
Transition transition() const
Principal const & principal() const
FWCore Framework interface EventSetupRecordImplementation h
Helper function to determine trigger accepts.
void throwUnregisteredPutException(TypeID const &type, std::string const &productInstanceLabel) const
BasicHandle getByLabel_(TypeID const &tid, InputTag const &tag, ModuleCallingContext const *mcc) const
std::vector< bool > const & recordProvenanceList() const
std::string const & processName() const
static PFTauRenderPlugin instance
void throwOnPutOfUninitializedToken(char const *principalType, std::type_info const &productType)
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex() const
TypeLabelList const & typeLabelList() const
used by the fwk to register the list of products of this module
TypeID const & getTypeIDForPutTokenIndex(EDPutToken::value_type index) const
EDConsumerBase const * consumer_
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex() const
ProducerBase const * prodBase_
std::string const & moduleLabel() const
ProcessHistory const & processHistory() const
StableProvenance const * stableProvenance() const
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom(BranchType iType) const
BasicHandle getByLabel(KindOfType kindOfType, TypeID const &typeID, InputTag const &inputTag, EDConsumerBase const *consumes, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const
BranchType const & branchType() const
bool skipCurrentProcess() const
EDProductGetter const * prodGetter() const
ProductID const & getProductID(unsigned int iPutTokenIndex) const
ProductResolverIndexAndSkipBit indexFrom(EDGetToken, BranchType, TypeID const &) const
BranchType const & branchType() const
std::shared_ptr< HandleExceptionFactory > makeHandleExceptionFactory(T &&iFunctor)
std::vector< BranchDescription const * > allBranchDescriptions() const
void throwOnPutOfWrongType(std::type_info const &wrongType, TypeID const &rightType)
std::vector< bool > const & recordProvenanceList() const
PrincipalGetAdapter(Principal const &pcpl, ModuleDescription const &md, bool isComplete)
BranchDescription const & getBranchDescription(TypeID const &type, std::string const &productInstanceName) const
ProductResolverIndex productResolverIndex() const
ProductResolverIndexHelper const & productLookup() const
void getManyByType_(TypeID const &tid, BasicHandleVec &results, ModuleCallingContext const *mcc) const
BasicHandle makeFailToGetException(KindOfType, TypeID const &, EDGetToken) const
Principal const & principal_
void labelsForToken(EDGetToken iToken, Labels &oLabels) const
std::string const & productInstanceLabel(EDPutToken) const
EDPutToken::value_type getPutTokenIndex(TypeID const &type, std::string const &productInstanceName) const
char const * productInstance
BranchDescription const & branchDescription() const
ConstProductResolverPtr getProductResolverByIndex(ProductResolverIndex const &oid) const
void throwOnPrematureRead(char const *principalType, TypeID const &productType, std::string const &moduleLabel, std::string const &productInstanceName)
ModuleDescription const & md_
BasicHandle getByToken(KindOfType kindOfType, TypeID const &typeID, ProductResolverIndex index, bool skipCurrentProcess, bool &ambiguous, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const
void throwOnPutOfNullProduct(char const *principalType, TypeID const &productType, std::string const &productInstanceName)
EDProductGetter const * prodGetter() const
void throwAmbiguousException(TypeID const &productType, EDGetToken token) const
unsigned int index() const
ProductResolverIndex index(KindOfType kindOfType, TypeID const &typeID, char const *moduleLabel, char const *instance, char const *process=nullptr) const
void getManyByType(TypeID const &typeID, BasicHandleVec &results, EDConsumerBase const *consumes, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const
void labelsForToken(EDGetToken const &iToken, ProductLabels &oLabels) const
std::vector< BasicHandle > BasicHandleVec
std::string friendlyClassName() const