#include <ProductResolverBase.h>
Classes | |
class | Resolution |
Private Member Functions | |
virtual BranchDescription const & | branchDescription_ () const =0 |
virtual void | prefetchAsync_ (WaitingTask *waitTask, Principal const &principal, bool skipCurrentProcess, ServiceToken const &token, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const =0 |
virtual ProductProvenance const * | productProvenancePtr_ () const =0 |
virtual bool | productResolved_ () const =0 |
virtual bool | productUnavailable_ () const =0 |
virtual bool | productWasDeleted_ () const =0 |
virtual bool | productWasFetchedAndIsValid_ (bool iSkipCurrentProcess) const =0 |
virtual Provenance const * | provenance_ () const =0 |
virtual void | putOrMergeProduct_ (std::unique_ptr< WrapperBase > edp, MergeableRunProductMetadata const *mergeableRunProductMetadata) const =0 |
virtual void | putProduct_ (std::unique_ptr< WrapperBase > edp) const =0 |
virtual void | resetBranchDescription_ (std::shared_ptr< BranchDescription const > bd)=0 |
virtual void | resetProductData_ (bool deleteEarly)=0 |
virtual std::string const & | resolvedModuleLabel_ () const =0 |
virtual Resolution | resolveProduct_ (Principal const &principal, bool skipCurrentProcess, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const =0 |
virtual void | retrieveAndMerge_ (Principal const &principal, MergeableRunProductMetadata const *mergeableRunProductMetadata) const |
virtual void | setMergeableRunProductMetadata_ (MergeableRunProductMetadata const *) |
virtual void | setProcessHistory_ (ProcessHistory const &ph)=0 |
virtual void | setProvenance_ (ProductProvenanceRetriever const *provRetriever, ProcessHistory const &ph, ProductID const &pid)=0 |
virtual bool | singleProduct_ () const =0 |
virtual bool | unscheduledWasNotRun_ () const =0 |
Definition at line 34 of file ProductResolverBase.h.
edm::ProductResolverBase::ProductResolverBase | ( | ) |
Definition at line 14 of file ProductResolverBase.cc.
|
virtual |
Definition at line 16 of file ProductResolverBase.cc.
|
delete |
|
inline |
Definition at line 110 of file ProductResolverBase.h.
References branchDescription_().
Referenced by edm::DataManagingProductResolver::checkType(), edm::PrincipalGetAdapter::getBranchDescription(), edm::Principal::getExistingProduct(), edm::DataManagingProductResolver::mergeProduct(), moduleLabel(), edm::InputProductResolver::prefetchAsync_(), edm::PuttableProductResolver::prefetchAsync_(), edm::SwitchProducerProductResolver::prefetchAsync_(), processName(), productInstanceName(), productType(), provenanceAvailable(), edm::ProducedProductResolver::putProduct_(), edm::SwitchBaseProductResolver::putProduct_(), edm::InputProductResolver::resolveProduct_(), edm::InputProductResolver::retrieveAndMerge_(), edm::SwitchBaseProductResolver::setProvenance_(), edm::PuttableProductResolver::setupUnscheduled(), edm::UnscheduledProductResolver::setupUnscheduled(), edm::SwitchBaseProductResolver::setupUnscheduled(), edm::SwitchBaseProductResolver::SwitchBaseProductResolver(), and edm::DataManagingProductResolver::throwProductDeletedException().
|
privatepure virtual |
Implemented in edm::SingleChoiceNoProcessProductResolver, edm::NoProcessProductResolver, edm::ParentProcessProductResolver, edm::SwitchBaseProductResolver, edm::AliasProductResolver, and edm::DataManagingProductResolver.
Referenced by branchDescription(), putOrMergeProduct(), and edm::SingleChoiceNoProcessProductResolver::SingleChoiceNoProcessProductResolver().
|
pure virtual |
Implemented in edm::SingleChoiceNoProcessProductResolver, edm::NoProcessProductResolver, edm::ParentProcessProductResolver, edm::SwitchBaseProductResolver, edm::AliasProductResolver, and edm::DataManagingProductResolver.
Referenced by edm::DataManagingProductResolver::DataManagingProductResolver(), edm::SubProcess::propagateProducts(), putOrMergeProduct(), and edm::SingleChoiceNoProcessProductResolver::SingleChoiceNoProcessProductResolver().
|
inline |
Definition at line 119 of file ProductResolverBase.h.
References branchDescription(), and edm::BranchDescription::moduleLabel().
Referenced by edm::DataManagingProductResolver::resolvedModuleLabel_(), edm::SwitchBaseProductResolver::resolvedModuleLabel_(), edm::NoProcessProductResolver::resolvedModuleLabel_(), edm::SingleChoiceNoProcessProductResolver::resolvedModuleLabel_(), edm::PuttableProductResolver::setupUnscheduled(), edm::UnscheduledProductResolver::setupUnscheduled(), edm::SwitchBaseProductResolver::setupUnscheduled(), and edm::DataManagingProductResolver::throwProductDeletedException().
|
delete |
|
inline |
oDataFetchedIsValid is allowed to be nullptr in which case no value will be assigned
Definition at line 69 of file ProductResolverBase.h.
References prefetchAsync_().
Referenced by edm::SwitchAliasProductResolver::prefetchAsync_(), and edm::NoProcessProductResolver::tryPrefetchResolverAsync().
|
privatepure virtual |
Implemented in edm::SingleChoiceNoProcessProductResolver, edm::NoProcessProductResolver, edm::ParentProcessProductResolver, edm::SwitchAliasProductResolver, edm::SwitchProducerProductResolver, edm::AliasProductResolver, edm::UnscheduledProductResolver, edm::PuttableProductResolver, and edm::InputProductResolver.
Referenced by edm::InputProductResolver::InputProductResolver(), prefetchAsync(), putOrMergeProduct(), edm::PuttableProductResolver::PuttableProductResolver(), edm::SingleChoiceNoProcessProductResolver::SingleChoiceNoProcessProductResolver(), edm::SwitchAliasProductResolver::SwitchAliasProductResolver(), edm::SwitchProducerProductResolver::SwitchProducerProductResolver(), and edm::UnscheduledProductResolver::UnscheduledProductResolver().
|
inline |
Definition at line 130 of file ProductResolverBase.h.
References branchDescription(), edm::BranchDescription::processName(), and provenance().
Referenced by edm::DataManagingProductResolver::throwProductDeletedException().
|
inline |
Definition at line 162 of file ProductResolverBase.h.
References edm::Provenance::productID(), and provenance().
Referenced by write().
|
inline |
Definition at line 127 of file ProductResolverBase.h.
References branchDescription(), and edm::BranchDescription::productInstanceName().
Referenced by edm::DataManagingProductResolver::throwProductDeletedException().
|
inline |
Definition at line 107 of file ProductResolverBase.h.
References productProvenancePtr_().
|
privatepure virtual |
Implemented in edm::SingleChoiceNoProcessProductResolver, edm::NoProcessProductResolver, edm::ParentProcessProductResolver, edm::SwitchBaseProductResolver, edm::AliasProductResolver, and edm::DataManagingProductResolver.
Referenced by productProvenancePtr(), putOrMergeProduct(), edm::DataManagingProductResolver::resolvedModuleLabel_(), edm::AliasProductResolver::resolvedModuleLabel_(), edm::ParentProcessProductResolver::resolvedModuleLabel_(), edm::NoProcessProductResolver::resolvedModuleLabel_(), and edm::SingleChoiceNoProcessProductResolver::resolvedModuleLabel_().
|
inline |
Definition at line 90 of file ProductResolverBase.h.
References productResolved_(), and provenanceAvailable().
Referenced by edm::InputProductResolver::prefetchAsync_(), provenanceAvailable(), edm::InputProductResolver::putProduct_(), and edm::InputProductResolver::resolveProduct_().
|
privatepure virtual |
Implemented in edm::SingleChoiceNoProcessProductResolver, edm::NoProcessProductResolver, edm::ParentProcessProductResolver, edm::SwitchBaseProductResolver, edm::AliasProductResolver, and edm::DataManagingProductResolver.
Referenced by edm::DataManagingProductResolver::getProductData(), edm::SwitchBaseProductResolver::prefetchRequested(), productResolved(), putOrMergeProduct(), and edm::SingleChoiceNoProcessProductResolver::SingleChoiceNoProcessProductResolver().
TypeID edm::ProductResolverBase::productType | ( | ) | const |
Definition at line 29 of file ProductResolverBase.cc.
References branchDescription().
Referenced by setProcessHistory().
|
inline |
Definition at line 87 of file ProductResolverBase.h.
References productUnavailable_().
Referenced by edm::SwitchProducerProductResolver::productUnavailable_().
|
privatepure virtual |
Implemented in edm::SingleChoiceNoProcessProductResolver, edm::NoProcessProductResolver, edm::ParentProcessProductResolver, edm::SwitchAliasProductResolver, edm::SwitchProducerProductResolver, edm::AliasProductResolver, and edm::DataManagingProductResolver.
Referenced by edm::DataManagingProductResolver::getProductData(), productUnavailable(), putOrMergeProduct(), edm::SingleChoiceNoProcessProductResolver::SingleChoiceNoProcessProductResolver(), and edm::SwitchProducerProductResolver::unscheduledWasNotRun_().
|
inline |
Definition at line 100 of file ProductResolverBase.h.
References productWasDeleted_().
Referenced by edm::DataManagingProductResolver::resolveProductImpl().
|
privatepure virtual |
Implemented in edm::SingleChoiceNoProcessProductResolver, edm::NoProcessProductResolver, edm::ParentProcessProductResolver, edm::SwitchBaseProductResolver, edm::AliasProductResolver, and edm::DataManagingProductResolver.
Referenced by edm::DataManagingProductResolver::getProductData(), productWasDeleted(), putOrMergeProduct(), and edm::SingleChoiceNoProcessProductResolver::SingleChoiceNoProcessProductResolver().
|
inline |
Definition at line 102 of file ProductResolverBase.h.
References productWasFetchedAndIsValid_().
Referenced by edm::NoProcessProductResolver::dataValidFromResolver().
|
privatepure virtual |
Implemented in edm::SingleChoiceNoProcessProductResolver, edm::NoProcessProductResolver, edm::ParentProcessProductResolver, edm::SwitchBaseProductResolver, edm::AliasProductResolver, and edm::DataManagingProductResolver.
Referenced by edm::DataManagingProductResolver::getProductData(), productWasFetchedAndIsValid(), putOrMergeProduct(), and edm::SingleChoiceNoProcessProductResolver::SingleChoiceNoProcessProductResolver().
Provenance const * edm::ProductResolverBase::provenance | ( | ) | const |
Definition at line 31 of file ProductResolverBase.cc.
References provenance_().
Referenced by processName(), productID(), edm::DataManagingProductResolver::productProvenancePtr_(), edm::AliasProductResolver::productProvenancePtr_(), edm::SwitchBaseProductResolver::productProvenancePtr_(), and stableProvenance().
|
privatepure virtual |
Implemented in edm::SingleChoiceNoProcessProductResolver, edm::NoProcessProductResolver, edm::ParentProcessProductResolver, edm::SwitchBaseProductResolver, edm::AliasProductResolver, and edm::DataManagingProductResolver.
Referenced by provenance(), putOrMergeProduct(), and edm::SingleChoiceNoProcessProductResolver::SingleChoiceNoProcessProductResolver().
bool edm::ProductResolverBase::provenanceAvailable | ( | ) | const |
Definition at line 18 of file ProductResolverBase.cc.
References branchDescription(), and productResolved().
Referenced by productResolved().
|
inline |
Definition at line 168 of file ProductResolverBase.h.
References branchDescription_(), connectTo(), eostools::move(), sysUtil::pid, prefetchAsync_(), cmsRelvalreport::principal(), productProvenancePtr_(), productResolved_(), productUnavailable_(), productWasDeleted_(), productWasFetchedAndIsValid_(), provenance_(), putOrMergeProduct_(), putProduct_(), resetBranchDescription_(), resetProductData_(), resolvedModuleLabel_(), resolveProduct_(), retrieveAndMerge_(), setMergeableRunProductMetadata_(), setProcessHistory_(), setProvenance_(), setupUnscheduled(), singleProduct_(), AlCaHLTBitMon_QueryRunRegistry::string, and unscheduledWasNotRun_().
Referenced by edm::Principal::putOrMerge(), and edm::InputProductResolver::retrieveAndMerge_().
|
privatepure virtual |
Implemented in edm::SingleChoiceNoProcessProductResolver, edm::NoProcessProductResolver, edm::ParentProcessProductResolver, edm::SwitchBaseProductResolver, edm::AliasProductResolver, and edm::DataManagingProductResolver.
Referenced by edm::DataManagingProductResolver::getProductData(), edm::AliasProductResolver::productWasFetchedAndIsValid_(), edm::SwitchBaseProductResolver::productWasFetchedAndIsValid_(), edm::ParentProcessProductResolver::productWasFetchedAndIsValid_(), putOrMergeProduct(), and edm::SingleChoiceNoProcessProductResolver::SingleChoiceNoProcessProductResolver().
|
inline |
Definition at line 165 of file ProductResolverBase.h.
References eostools::move(), and putProduct_().
Referenced by edm::InputProductResolver::prefetchAsync_(), edm::DataManagingProductResolver::putOrMergeProduct_(), and edm::InputProductResolver::resolveProduct_().
|
privatepure virtual |
Implemented in edm::SingleChoiceNoProcessProductResolver, edm::NoProcessProductResolver, edm::ParentProcessProductResolver, edm::SwitchBaseProductResolver, edm::AliasProductResolver, edm::PuttableProductResolver, edm::ProducedProductResolver, and edm::InputProductResolver.
Referenced by edm::InputProductResolver::InputProductResolver(), edm::ProducedProductResolver::ProducedProductResolver(), edm::AliasProductResolver::productWasFetchedAndIsValid_(), edm::SwitchBaseProductResolver::productWasFetchedAndIsValid_(), edm::ParentProcessProductResolver::productWasFetchedAndIsValid_(), putOrMergeProduct(), putProduct(), edm::SingleChoiceNoProcessProductResolver::SingleChoiceNoProcessProductResolver(), and edm::PuttableProductResolver::unscheduledWasNotRun_().
|
inline |
Definition at line 116 of file ProductResolverBase.h.
References resetBranchDescription_().
Referenced by edm::Principal::adjustToNewProductRegistry().
|
privatepure virtual |
Implemented in edm::SingleChoiceNoProcessProductResolver, edm::NoProcessProductResolver, edm::ParentProcessProductResolver, edm::SwitchBaseProductResolver, edm::AliasProductResolver, and edm::DataManagingProductResolver.
Referenced by putOrMergeProduct(), resetBranchDescription(), and edm::SingleChoiceNoProcessProductResolver::SingleChoiceNoProcessProductResolver().
|
inline |
Definition at line 82 of file ProductResolverBase.h.
References resetProductData_().
|
privatepure virtual |
Implemented in edm::SingleChoiceNoProcessProductResolver, edm::NoProcessProductResolver, edm::ParentProcessProductResolver, edm::SwitchBaseProductResolver, edm::AliasProductResolver, edm::UnscheduledProductResolver, edm::PuttableProductResolver, edm::InputProductResolver, edm::DataManagingProductResolver, and edm::DataManagingOrAliasProductResolver.
Referenced by putOrMergeProduct(), resetProductData(), and unsafe_deleteProduct().
|
inline |
Definition at line 124 of file ProductResolverBase.h.
References resolvedModuleLabel_().
|
privatepure virtual |
|
inline |
Definition at line 60 of file ProductResolverBase.h.
References resolveProduct_().
Referenced by edm::SwitchProducerProductResolver::resolveProduct_(), edm::SwitchAliasProductResolver::resolveProduct_(), and edm::NoProcessProductResolver::tryResolver().
|
privatepure virtual |
Implemented in edm::SingleChoiceNoProcessProductResolver, edm::NoProcessProductResolver, edm::ParentProcessProductResolver, edm::SwitchAliasProductResolver, edm::SwitchProducerProductResolver, edm::AliasProductResolver, edm::UnscheduledProductResolver, edm::PuttableProductResolver, and edm::InputProductResolver.
Referenced by edm::InputProductResolver::InputProductResolver(), putOrMergeProduct(), edm::PuttableProductResolver::PuttableProductResolver(), resolveProduct(), edm::SingleChoiceNoProcessProductResolver::SingleChoiceNoProcessProductResolver(), edm::SwitchAliasProductResolver::SwitchAliasProductResolver(), edm::SwitchProducerProductResolver::SwitchProducerProductResolver(), and edm::UnscheduledProductResolver::UnscheduledProductResolver().
|
inline |
Definition at line 78 of file ProductResolverBase.h.
References retrieveAndMerge_().
|
privatevirtual |
Reimplemented in edm::InputProductResolver.
Definition at line 33 of file ProductResolverBase.cc.
Referenced by edm::InputProductResolver::InputProductResolver(), putOrMergeProduct(), and retrieveAndMerge().
|
inline |
Definition at line 146 of file ProductResolverBase.h.
References setMergeableRunProductMetadata_().
|
privatevirtual |
Reimplemented in edm::InputProductResolver.
Definition at line 35 of file ProductResolverBase.cc.
Referenced by edm::InputProductResolver::InputProductResolver(), putOrMergeProduct(), and setMergeableRunProductMetadata().
|
inline |
Definition at line 151 of file ProductResolverBase.h.
References productType(), setProcessHistory_(), and write().
|
privatepure virtual |
Implemented in edm::SingleChoiceNoProcessProductResolver, edm::NoProcessProductResolver, edm::ParentProcessProductResolver, edm::SwitchBaseProductResolver, edm::AliasProductResolver, and edm::DataManagingProductResolver.
Referenced by putOrMergeProduct(), edm::DataManagingProductResolver::resolvedModuleLabel_(), edm::AliasProductResolver::resolvedModuleLabel_(), edm::ParentProcessProductResolver::resolvedModuleLabel_(), edm::NoProcessProductResolver::resolvedModuleLabel_(), edm::SingleChoiceNoProcessProductResolver::resolvedModuleLabel_(), and setProcessHistory().
|
inline |
Definition at line 139 of file ProductResolverBase.h.
References setProvenance_().
|
privatepure virtual |
Implemented in edm::SingleChoiceNoProcessProductResolver, edm::NoProcessProductResolver, edm::ParentProcessProductResolver, edm::SwitchBaseProductResolver, edm::AliasProductResolver, and edm::DataManagingProductResolver.
Referenced by putOrMergeProduct(), edm::DataManagingProductResolver::resolvedModuleLabel_(), edm::AliasProductResolver::resolvedModuleLabel_(), edm::SwitchBaseProductResolver::resolvedModuleLabel_(), edm::ParentProcessProductResolver::resolvedModuleLabel_(), edm::NoProcessProductResolver::resolvedModuleLabel_(), edm::SingleChoiceNoProcessProductResolver::resolvedModuleLabel_(), and setProvenance().
|
virtual |
Reimplemented in edm::SwitchBaseProductResolver, edm::UnscheduledProductResolver, edm::PuttableProductResolver, and edm::InputProductResolver.
Definition at line 43 of file ProductResolverBase.cc.
Referenced by edm::InputProductResolver::InputProductResolver(), putOrMergeProduct(), edm::PuttableProductResolver::PuttableProductResolver(), edm::Principal::setupUnscheduled(), and edm::UnscheduledProductResolver::UnscheduledProductResolver().
|
inline |
Definition at line 113 of file ProductResolverBase.h.
References singleProduct_().
|
privatepure virtual |
Implemented in edm::SingleChoiceNoProcessProductResolver, edm::NoProcessProductResolver, edm::ParentProcessProductResolver, edm::SwitchBaseProductResolver, edm::AliasProductResolver, and edm::DataManagingProductResolver.
Referenced by putOrMergeProduct(), edm::DataManagingProductResolver::resolvedModuleLabel_(), edm::AliasProductResolver::resolvedModuleLabel_(), edm::ParentProcessProductResolver::resolvedModuleLabel_(), edm::NoProcessProductResolver::resolvedModuleLabel_(), edm::SingleChoiceNoProcessProductResolver::resolvedModuleLabel_(), and singleProduct().
|
inline |
Definition at line 136 of file ProductResolverBase.h.
References provenance(), and edm::Provenance::stable().
Referenced by edm::PrincipalGetAdapter::getProductID().
|
inline |
Definition at line 84 of file ProductResolverBase.h.
References resetProductData_().
|
inline |
Definition at line 97 of file ProductResolverBase.h.
References unscheduledWasNotRun_().
|
privatepure virtual |
Implemented in edm::SingleChoiceNoProcessProductResolver, edm::NoProcessProductResolver, edm::ParentProcessProductResolver, edm::SwitchAliasProductResolver, edm::SwitchProducerProductResolver, edm::AliasProductResolver, edm::UnscheduledProductResolver, edm::PuttableProductResolver, and edm::InputProductResolver.
Referenced by putOrMergeProduct(), edm::SingleChoiceNoProcessProductResolver::SingleChoiceNoProcessProductResolver(), and unscheduledWasNotRun().
void edm::ProductResolverBase::write | ( | std::ostream & | os | ) | const |
Definition at line 37 of file ProductResolverBase.cc.
References productID(), and AlCaHLTBitMon_QueryRunRegistry::string.
Referenced by pkg.AbstractPkg::generate(), edm::operator<<(), and setProcessHistory().