|
|
Go to the documentation of this file.
27 resourcesAcquirer_(nullptr),
28 isComplete_(isComplete) {}
36 << principalType <<
"::put: A null unique_ptr was passed to 'put'.\n"
37 <<
"The pointer is of type " << productType <<
".\nThe specified productInstanceName was '"
38 << productInstanceName <<
"'.\n";
42 std::type_info
const&
type) {
45 <<
"The pointer is of type " << productType <<
".\n";
49 TypeID wrongTypeID{wrongType};
51 <<
"The expected type " << rightType <<
"\nThe put type " << wrongTypeID
60 LogWarning(
"LogicError") <<
"::getByLabel: An attempt was made to read a " << principalType <<
" product before end"
61 << principalType <<
"() was called.\n"
62 <<
"The product is of type '" << productType <<
"'.\nThe specified ModuleLabel was '"
63 <<
moduleLabel <<
"'.\nThe specified productInstanceName was '" << productInstanceName
69 LogWarning(
"LogicError") <<
"::getManyByType: An attempt was made to read a " << principalType
70 <<
" product before end" << principalType <<
"() was called.\n"
71 <<
"The product is of type '" << productType <<
"'.\n";
78 <<
" product before end" << principalType <<
"() was called.\n"
79 <<
"The index of the token was " <<
token.index() <<
".\n";
99 *
exception <<
"Principal::getByToken: Found zero products matching all criteria\nLooking for type: "
100 << productType <<
"\n"
101 <<
"Looking for module label: " <<
labels.module <<
"\n"
102 <<
"Looking for productInstanceName: " <<
labels.productInstance <<
"\n"
103 << (0 ==
labels.process[0] ?
"" :
"Looking for process: ") <<
labels.process <<
"\n";
105 *
exception <<
"Principal::getByToken: Found zero products matching all criteria\nLooking for a container "
106 "with elements of type: "
107 << productType <<
"\n"
108 <<
"Looking for module label: " <<
labels.module <<
"\n"
109 <<
"Looking for productInstanceName: " <<
labels.productInstance <<
"\n"
110 << (0 ==
labels.process[0] ?
"" :
"Looking for process: ") <<
labels.process <<
"\n";
120 exception <<
"Principal::getByToken: More than 1 product matches all criteria\nLooking for a container with "
122 << productType <<
"\n"
123 <<
"Looking for module label: " <<
labels.module <<
"\n"
124 <<
"Looking for productInstanceName: " <<
labels.productInstance <<
"\n"
125 << (0 ==
labels.process[0] ?
"" :
"Looking for process: ") <<
labels.process <<
"\n"
126 <<
"This can only occur with get function calls using a Handle<View> argument.\n"
127 <<
"Try a get not using a View or change the instance name of one of the products";
160 bool ambiguous =
false;
166 }
else if (!
h.isValid()) {
197 std::ostringstream
str;
201 str << *branchDescription <<
"-----\n";
205 <<
"Illegal attempt to 'put' an unregistered product.\n"
206 <<
"No product is registered for\n"
207 <<
" product friendly class name: '" <<
type.friendlyClassName() <<
"'\n"
209 <<
" product instance name: '" << productInstanceName <<
"'\n"
212 <<
"The following data products are registered for production by " <<
md_.
moduleLabel() <<
":\n"
214 <<
"To correct the problem:\n"
215 " 1) make sure the proper 'produce' call is being made in the module's constructor,\n"
216 " 2) if 'produce' exists and uses a product instance name make sure that same name is used during the "
246 return prov->productID();
272 if ((tran == tl.transition_) and (
type == tl.typeID_) and (productInstanceName == tl.productInstanceName_)) {
std::string const & moduleLabel() const
Principal const & principal() const
Principal const & principal_
void throwOnPutOfWrongType(std::type_info const &wrongType, TypeID const &rightType)
unsigned int ProductResolverIndex
StableProvenance const * stableProvenance() const
std::vector< bool > const & recordProvenanceList() const
FWCore Framework interface EventSetupRecordImplementation h
Helper function to determine trigger accepts.
void getManyByType_(TypeID const &tid, BasicHandleVec &results, ModuleCallingContext const *mcc) const
void throwOnPutOfUninitializedToken(char const *principalType, std::type_info const &productType)
ProductResolverIndex index(KindOfType kindOfType, TypeID const &typeID, char const *moduleLabel, char const *instance, char const *process=nullptr) const
std::string const & processName() const
PrincipalGetAdapter(Principal const &pcpl, ModuleDescription const &md, bool isComplete)
ProcessHistory const & processHistory() const
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex() const
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom(BranchType iType) const
ModuleDescription const & md_
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex() const
void labelsForToken(EDGetToken const &iToken, ProductLabels &oLabels) const
ConstProductResolverPtr getProductResolverByIndex(ProductResolverIndex const &oid) const
std::shared_ptr< HandleExceptionFactory > makeHandleExceptionFactory(T &&iFunctor)
TypeLabelList const & typeLabelList() const
used by the fwk to register the list of products of this module
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
ProductResolverIndex productResolverIndex() 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)
BranchType const & branchType() const
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
ProductRegistry const & productRegistry() const
std::vector< bool > const & recordProvenanceList() const
ProductResolverIndexHelper const & productLookup() const
TypeID const & getTypeIDForPutTokenIndex(EDPutToken::value_type index) const
std::string const & productInstanceLabel(EDPutToken) const
std::vector< BranchDescription const * > allBranchDescriptions() const
ProductID const & getProductID(unsigned int iPutTokenIndex) const
static PFTauRenderPlugin instance
void labelsForToken(EDGetToken iToken, Labels &oLabels) const
void throwOnPutOfNullProduct(char const *principalType, TypeID const &productType, std::string const &productInstanceName)
BasicHandle getByToken(KindOfType kindOfType, TypeID const &typeID, ProductResolverIndex index, bool skipCurrentProcess, bool &ambiguous, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const
BranchDescription const & branchDescription() const
EDProductGetter const * prodGetter() const
void getManyByType(TypeID const &typeID, BasicHandleVec &results, EDConsumerBase const *consumes, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const
EDPutToken::value_type getPutTokenIndex(TypeID const &type, std::string const &productInstanceName) const
SharedResourcesAcquirer * resourcesAcquirer_
bool skipCurrentProcess() const
BasicHandle getByLabel(KindOfType kindOfType, TypeID const &typeID, InputTag const &inputTag, EDConsumerBase const *consumes, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const
void throwAmbiguousException(TypeID const &productType, EDGetToken token) const
BasicHandle getMatchingSequenceByLabel_(TypeID const &typeID, InputTag const &tag, ModuleCallingContext const *mcc) const
std::vector< BasicHandle > BasicHandleVec
ProductResolverIndexAndSkipBit indexFrom(EDGetToken, BranchType, TypeID const &) const
ProcessHistory const & processHistory() const
BranchType const & branchType() const