#include <ProductResolvers.h>
Public Types | |
enum | ProductStatus { ProductStatus::ProductSet, ProductStatus::NotPut, ProductStatus::ResolveFailed, ProductStatus::ResolveNotRun, ProductStatus::ProductDeleted } |
Protected Member Functions | |
void | checkType (WrapperBase const &prod) const |
ProductStatus | defaultStatus () const |
ProductData const & | getProductData () const final |
template<bool callResolver, typename FUNC > | |
Resolution | resolveProductImpl (FUNC resolver) const |
void | setFailedStatus () const |
void | setMergeableRunProductMetadataInProductData (MergeableRunProductMetadata const *) |
void | setProduct (std::unique_ptr< WrapperBase > edp) const |
void | setProduct (std::shared_ptr< WrapperBase > edp) const |
ProductStatus | status () const |
Private Member Functions | |
BranchDescription const & | branchDescription_ () const final |
virtual bool | isFromCurrentProcess () const =0 |
ProductProvenance const * | productProvenancePtr_ () const final |
bool | productResolved_ () const final |
bool | productUnavailable_ () const final |
bool | productWasDeleted_ () const final |
bool | productWasFetchedAndIsValid_ (bool iSkipCurrentProcess) const final |
Provenance const * | provenance_ () const final |
void | resetBranchDescription_ (std::shared_ptr< BranchDescription const > bd) final |
std::string const & | resolvedModuleLabel_ () const final |
void | setProductID_ (ProductID const &pid) final |
void | setProductProvenanceRetriever_ (ProductProvenanceRetriever const *provRetriever) final |
bool | singleProduct_ () const final |
void | throwProductDeletedException () const |
Private Attributes | |
ProductStatus const | defaultStatus_ |
ProductData | productData_ |
std::atomic< ProductStatus > | theStatus_ |
Definition at line 50 of file ProductResolvers.h.
|
strong |
Enumerator | |
---|---|
ProductSet | |
NotPut | |
ResolveFailed | |
ResolveNotRun | |
ProductDeleted |
Definition at line 52 of file ProductResolvers.h.
|
inline |
Definition at line 54 of file ProductResolvers.h.
|
inlinefinalprivatevirtual |
Implements edm::ProductResolverBase.
Definition at line 89 of file ProductResolvers.h.
References edm::ProductData::branchDescription(), and getProductData().
|
protected |
Definition at line 514 of file ProductResolvers.cc.
References edm::ProductResolverBase::branchDescription(), edm::BranchDescription::branchName(), edm::BranchDescription::className(), edm::WrapperBase::dynamicTypeInfo(), edm::errors::EventCorruption, Exception, edm::TypeWithDict::unvalidatedTypeInfo(), and edm::BranchDescription::unwrappedType().
Referenced by edm::MergeableInputProductResolver::mergeProduct(), and setProduct().
|
finalvirtual |
Implements edm::ProductResolverBase.
Definition at line 512 of file ProductResolvers.cc.
References cms::cuda::assert().
|
inlineprotected |
Definition at line 70 of file ProductResolvers.h.
References defaultStatus_.
Referenced by productResolved_(), edm::PutOnReadInputProductResolver::putProduct(), edm::ProducedProductResolver::putProduct(), edm::DelayedReaderInputProductResolver::retrieveAndMerge_(), and edm::MergeableInputProductResolver::setOrMergeProduct().
|
inlinefinalprotectedvirtual |
Implements edm::DataManagingOrAliasProductResolver.
Definition at line 75 of file ProductResolvers.h.
References productData_.
Referenced by branchDescription_(), edm::MergeableInputProductResolver::mergeProduct(), productUnavailable_(), productWasFetchedAndIsValid_(), and resolveProductImpl().
|
privatepure virtual |
Implemented in edm::ProducedProductResolver, edm::PutOnReadInputProductResolver, and edm::DelayedReaderInputProductResolver.
Referenced by productWasFetchedAndIsValid_().
|
finalprivatevirtual |
Implements edm::ProductResolverBase.
Definition at line 587 of file ProductResolvers.cc.
References edm::Provenance::productProvenance(), and edm::ProductResolverBase::provenance().
|
finalprivatevirtual |
Implements edm::ProductResolverBase.
Definition at line 556 of file ProductResolvers.cc.
References defaultStatus(), or, ProductDeleted, alignCSCRings::s, and status().
|
finalprivatevirtual |
Implements edm::ProductResolverBase.
Definition at line 548 of file ProductResolvers.cc.
References getProductData(), edm::WrapperBase::isPresent(), ProductSet, ResolveNotRun, status(), and edm::ProductData::wrapper().
|
finalprivatevirtual |
Implements edm::ProductResolverBase.
Definition at line 562 of file ProductResolvers.cc.
References ProductDeleted, and status().
|
finalprivatevirtual |
Implements edm::ProductResolverBase.
Definition at line 564 of file ProductResolvers.cc.
References getProductData(), isFromCurrentProcess(), ProductSet, status(), and wrapper.
|
inlinefinalprivatevirtual |
Implements edm::ProductResolverBase.
Definition at line 93 of file ProductResolvers.h.
References productData_, and edm::ProductData::provenance().
|
inlinefinalprivatevirtual |
Implements edm::ProductResolverBase.
Definition at line 90 of file ProductResolvers.h.
References productData_, and edm::ProductData::resetBranchDescription().
|
overridevirtual |
Implements edm::DataManagingOrAliasProductResolver.
Reimplemented in edm::UnscheduledProductResolver, edm::PuttableProductResolver, and edm::DelayedReaderInputProductResolver.
Definition at line 591 of file ProductResolvers.cc.
References productData_, ProductDeleted, ProductSet, edm::ProductData::resetProductData(), resetStatus(), and theStatus_.
Referenced by edm::DelayedReaderInputProductResolver::resetProductData_(), edm::PuttableProductResolver::resetProductData_(), and edm::UnscheduledProductResolver::resetProductData_().
|
inline |
Definition at line 62 of file ProductResolvers.h.
References defaultStatus_, and theStatus_.
Referenced by resetProductData_().
|
inlinefinalprivatevirtual |
Implements edm::ProductResolverBase.
Definition at line 95 of file ProductResolvers.h.
References edm::ProductResolverBase::moduleLabel().
ProductResolverBase::Resolution edm::DataManagingProductResolver::resolveProductImpl | ( | FUNC | resolver | ) | const |
Definition at line 47 of file ProductResolvers.cc.
References getProductData(), ProductSet, edm::ProductResolverBase::productWasDeleted(), Resolution, ResolveNotRun, setFailedStatus(), status(), and throwProductDeletedException().
|
protected |
|
inlineprotected |
Definition at line 71 of file ProductResolvers.h.
References ResolveFailed, and theStatus_.
Referenced by resolveProductImpl(), edm::DelayedReaderInputProductResolver::retrieveAndMerge_(), and setProduct().
|
protected |
Definition at line 582 of file ProductResolvers.cc.
References productData_, and edm::ProductData::setMergeableRunProductMetadata().
Referenced by edm::DelayedReaderInputProductResolver::setMergeableRunProductMetadata_().
|
protected |
Definition at line 526 of file ProductResolvers.cc.
References checkType(), eostools::move(), productData_, ProductSet, setFailedStatus(), theStatus_, and edm::ProductData::unsafe_setWrapper().
Referenced by edm::MergeableInputProductResolver::mergeProduct(), edm::DelayedReaderInputProductResolver::prefetchAsync_(), edm::PutOnReadInputProductResolver::putProduct(), edm::ProducedProductResolver::putProduct(), edm::DelayedReaderInputProductResolver::resolveProduct_(), and edm::MergeableInputProductResolver::setOrMergeProduct().
|
protected |
Definition at line 535 of file ProductResolvers.cc.
References checkType(), eostools::move(), productData_, ProductSet, setFailedStatus(), theStatus_, and edm::ProductData::unsafe_setWrapper().
|
finalprivatevirtual |
Implements edm::ProductResolverBase.
Definition at line 580 of file ProductResolvers.cc.
References productData_, and edm::ProductData::setProductID().
|
finalprivatevirtual |
Implements edm::ProductResolverBase.
Definition at line 576 of file ProductResolvers.cc.
References productData_, and edm::ProductData::setProvenance().
|
finalprivatevirtual |
Implements edm::ProductResolverBase.
Definition at line 602 of file ProductResolvers.cc.
|
inlineprotected |
Definition at line 69 of file ProductResolvers.h.
References theStatus_.
Referenced by edm::MergeableInputProductResolver::mergeProduct(), productResolved_(), productUnavailable_(), productWasDeleted_(), productWasFetchedAndIsValid_(), edm::PutOnReadInputProductResolver::putProduct(), edm::ProducedProductResolver::putProduct(), resolveProductImpl(), edm::DelayedReaderInputProductResolver::retrieveAndMerge_(), edm::MergeableInputProductResolver::setOrMergeProduct(), and edm::UnscheduledProductResolver::unscheduledWasNotRun_().
|
private |
Definition at line 33 of file ProductResolvers.cc.
References edm::ProductResolverBase::branchDescription(), cppFunctionSkipper::exception, edm::ProductResolverBase::moduleLabel(), edm::ProductResolverBase::processName(), edm::ProductResolverBase::productInstanceName(), and edm::BranchDescription::unwrappedTypeID().
Referenced by resolveProductImpl().
|
private |
Definition at line 103 of file ProductResolvers.h.
Referenced by defaultStatus(), and resetStatus().
|
private |
Definition at line 101 of file ProductResolvers.h.
Referenced by edm::SwitchBaseProductResolver::branchDescription_(), getProductData(), edm::SwitchBaseProductResolver::getProductData(), provenance_(), edm::SwitchBaseProductResolver::provenance_(), resetBranchDescription_(), edm::SwitchBaseProductResolver::resetBranchDescription_(), resetProductData_(), setMergeableRunProductMetadataInProductData(), setProduct(), setProductID_(), and setProductProvenanceRetriever_().
|
mutableprivate |
Definition at line 102 of file ProductResolvers.h.
Referenced by resetProductData_(), resetStatus(), setFailedStatus(), setProduct(), and status().