16 exception <<
"ProductHolderBase::resolveProduct_: The product matching all criteria was already deleted\n"
18 <<
"Looking for module label: " <<
moduleLabel() <<
"\n"
21 <<
"This means there is a configuration error.\n"
22 <<
"The module which is asking for this data must be configured to state that it will read this data.";
63 bool skipCurrentProcess,
66 if (!skipCurrentProcess) {
82 bool skipCurrentProcess,
85 if (!skipCurrentProcess) {
101 bool skipCurrentProcess,
104 if (!skipCurrentProcess) {
124 std::unique_ptr<WrapperBase> edp,
131 assert(edp.get() !=
nullptr);
140 std::unique_ptr<WrapperBase> edp,
164 assert(edp.get() !=
nullptr);
173 std::unique_ptr<WrapperBase> edp,
181 std::unique_ptr<WrapperBase>,
209 <<
"ProductHolderBase::mergeTheProduct\n"
210 <<
"Two run/lumi products for the same run/lumi which should be equal are not\n"
211 <<
"Using the first, ignoring the second\n"
219 <<
"ProductHolderBase::mergeTheProduct\n"
220 <<
"Run/lumi product has neither a mergeProduct nor isProductEqual function\n"
221 <<
"Using the first, ignoring the second in merge\n"
232 if(prod.get() ==
nullptr || !prod->isPresent()) {
348 <<
"It is actually of type " << typeID.className() <<
".\n";
361 os <<
std::string(
"ProductHolder for product with ID: ")
367 std::vector<bool>
const& ambiguous) :
368 matchingHolders_(matchingHolders),
369 ambiguous_(ambiguous) {
375 <<
"NoProcessProductHolder::getProductData() not implemented and should never be called.\n"
376 <<
"Contact a Framework developer\n";
381 <<
"NoProcessProductHolder::getProductData() not implemented and should never be called.\n"
382 <<
"Contact a Framework developer\n";
387 bool skipCurrentProcess,
391 for(
unsigned int k : lookupProcessOrder) {
401 if(pd !=
nullptr)
return pd;
457 <<
"NoProcessProductHolder::onDemand_() not implemented and should never be called.\n"
458 <<
"Contact a Framework developer\n";
463 <<
"NoProcessProductHolder::productUnavailable_() not implemented and should never be called.\n"
464 <<
"Contact a Framework developer\n";
469 <<
"NoProcessProductHolder::productWasDeleted_() not implemented and should never be called.\n"
470 <<
"Contact a Framework developer\n";
475 <<
"NoProcessProductHolder::putProduct_() not implemented and should never be called.\n"
476 <<
"Contact a Framework developer\n";
481 <<
"NoProcessProductHolder::putProduct_() not implemented and should never be called.\n"
482 <<
"Contact a Framework developer\n";
487 <<
"NoProcessProductHolder::mergeProduct_() not implemented and should never be called.\n"
488 <<
"Contact a Framework developer\n";
493 <<
"NoProcessProductHolder::mergeProduct_() not implemented and should never be called.\n"
494 <<
"Contact a Framework developer\n";
499 <<
"NoProcessProductHolder::putOrMergeProduct_() not implemented and should never be called.\n"
500 <<
"Contact a Framework developer\n";
505 <<
"NoProcessProductHolder::checkType_() not implemented and should never be called.\n"
506 <<
"Contact a Framework developer\n";
511 <<
"NoProcessProductHolder::setProductDeleted_() not implemented and should never be called.\n"
512 <<
"Contact a Framework developer\n";
517 <<
"NoProcessProductHolder::branchDescription_() not implemented and should never be called.\n"
518 <<
"Contact a Framework developer\n";
523 <<
"NoProcessProductHolder::resetBranchDescription_() not implemented and should never be called.\n"
524 <<
"Contact a Framework developer\n";
Provenance const & provenance() const
bool mergeProduct(WrapperBase const *newProduct)
virtual ProductStatus & status_() const =0
std::string const & branchName() const
WrapperBase const * product() const
bool provenanceAvailable() const
virtual void resetBranchDescription_(std::shared_ptr< BranchDescription const > bd) override
virtual ProductProvenance const * productProvenancePtr_() const override
void setProcessHistory(ProcessHistory const &ph)
std::vector< ProductHolderIndex > matchingHolders_
std::type_info const & dynamicTypeInfo() const
void readFromSource(ProductHolderBase const &phb, ModuleCallingContext const *mcc) const
virtual void setProcessHistory_(ProcessHistory const &ph) override
virtual void setProvenance_(ProductProvenanceRetriever const *provRetriever, ProcessHistory const &ph, ProductID const &pid) override
virtual void resetStatus_() override
virtual void setProductDeleted_() const override
ProductProvenance const * productProvenance() const
virtual ProductData const * resolveProduct_(ResolveStatus &resolveStatus, Principal const &principal, bool skipCurrentProcess, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const override
virtual bool singleProduct_() const override
virtual void checkType_(WrapperBase const &prod) const override
void write(std::ostream &os) const
std::string const & moduleLabel() const
virtual ~SourceProductHolder()
void unsafe_setWrapper(std::unique_ptr< WrapperBase > iValue) const
virtual bool singleProduct_() const override
virtual void setProvenance_(ProductProvenanceRetriever const *provRetriever, ProcessHistory const &ph, ProductID const &pid) override
void setProvenance(ProductProvenanceRetriever const *provRetriever, ProcessHistory const &ph, ProductID const &pid)
virtual bool putOrMergeProduct_() const override
BranchDescription const & branchDescription() const
std::string const & className() const
Provenance const * provenance() const
virtual void setProcessHistory_(ProcessHistory const &ph) override
ConstProductHolderPtr getProductHolderByIndex(ProductHolderIndex const &oid) const
virtual void resetProductData_() override
virtual bool productUnavailable_() const override
std::vector< unsigned int > const & lookupProcessOrder() const
virtual bool putOrMergeProduct_() const override
virtual void resetProductData_() override
virtual ~ProductHolderBase()
TypeID unwrappedTypeID() const
ProductID const & productID() const
virtual bool productUnavailable_() const override
virtual void putProduct_(std::unique_ptr< WrapperBase > edp, ProductProvenance const &productProvenance) const override
bool productWasDeleted() const
ProductData const & productData() const
virtual ProductData const * resolveProduct_(ResolveStatus &resolveStatus, Principal const &principal, bool skipCurrentProcess, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const override
virtual void setProcessHistory_(ProcessHistory const &ph) override
virtual void setProductDeleted_() const override
virtual ProductProvenance const * productProvenancePtr_() const override
virtual bool onDemand_() const override
NoProcessProductHolder(std::vector< ProductHolderIndex > const &matchingHolders, std::vector< bool > const &ambiguous)
virtual ProductProvenance const * productProvenancePtr_() const override
void throwProductDeletedException() const
eventsetup::produce::Produce produced
void reallyCheckType(WrapperBase const &prod) const
std::string const & processName() const
virtual ~NoProcessProductHolder()
void mergeTheProduct(std::unique_ptr< WrapperBase > edp) const
virtual void putProduct_(std::unique_ptr< WrapperBase > edp, ProductProvenance const &productProvenance) const override
std::vector< bool > ambiguous_
virtual bool singleProduct_() const override
virtual void swap_(ProductHolderBase &rhs) override
virtual ~AliasProductHolder()
virtual BranchDescription const & branchDescription_() const override
virtual ~ScheduledProductHolder()
virtual ~UnscheduledProductHolder()
ProductData const * resolveProduct(ResolveStatus &resolveStatus, Principal const &principal, bool skipCurrentProcess, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const
ProductStatus & status() const
virtual ProductData const * resolveProduct_(ResolveStatus &resolveStatus, Principal const &principal, bool skipCurrentProcess, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const override
virtual ProductData const & getProductData() const override
WrapperBase * unsafe_product() const
virtual void resetProductData_() override
virtual bool productWasDeleted_() const override
bool hasIsProductEqual() const
TypeID productType() const
virtual void mergeProduct_(std::unique_ptr< WrapperBase > edp, ProductProvenance const &productProvenance) const override
virtual bool unscheduledFill(std::string const &moduleLabel, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const =0
bool isProductEqual(WrapperBase const *newProduct) const
virtual void setProvenance_(ProductProvenanceRetriever const *provRetriever, ProcessHistory const &ph, ProductID const &pid) override
virtual bool productWasDeleted_() const override
virtual void mergeProduct_(std::unique_ptr< WrapperBase > edp, ProductProvenance const &productProvenance) const override
std::string const & productInstanceName() const
virtual ProductData const * resolveProduct_(ResolveStatus &resolveStatus, Principal const &principal, bool skipCurrentProcess, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const override
virtual ~ProducedProductHolder()
bool productUnavailable() const