Go to the documentation of this file. 1 #ifndef FWCore_Framework_ProductResolverBase_h
2 #define FWCore_Framework_ProductResolverBase_h
24 class MergeableRunProductMetadata;
25 class ProductProvenanceRetriever;
27 class ModuleCallingContext;
45 return reinterpret_cast<ProductData const*>(
kAmbiguityMask & reinterpret_cast<std::uintptr_t>(
m_data));
61 bool skipCurrentProcess,
71 bool skipCurrentProcess,
152 void write(std::ostream& os)
const;
176 bool skipCurrentProcess,
181 bool skipCurrentProcess,
195 virtual void putProduct_(std::unique_ptr<WrapperBase> edp)
const = 0;
Provenance const * provenance() const
std::string const & productInstanceName() const
void putProduct(std::unique_ptr< WrapperBase > edp) const
virtual void resetProductData_(bool deleteEarly)=0
void putOrMergeProduct(std::unique_ptr< WrapperBase > edp, MergeableRunProductMetadata const *mergeableRunProductMetadata=nullptr) const
virtual void setProductProvenanceRetriever_(ProductProvenanceRetriever const *provRetriever)=0
ProductResolverBase & operator=(ProductResolverBase const &)=delete
virtual bool singleProduct_() const =0
StableProvenance const * stableProvenance() const
virtual void putOrMergeProduct_(std::unique_ptr< WrapperBase > edp, MergeableRunProductMetadata const *mergeableRunProductMetadata) const =0
virtual bool productUnavailable_() const =0
virtual Provenance const * provenance_() const =0
static constexpr std::uintptr_t kAmbiguityValue
ProductID const & productID() const
virtual void putProduct_(std::unique_ptr< WrapperBase > edp) const =0
bool productResolved() const
bool provenanceAvailable() const
virtual void resetBranchDescription_(std::shared_ptr< BranchDescription const > bd)=0
TypeID productType() const
bool productUnavailable() const
std::ostream & operator<<(std::ostream &ost, const HLTGlobalStatus &hlt)
Formatted printout of trigger tbale.
virtual BranchDescription const & branchDescription_() const =0
std::string const & processName() const
bool unscheduledWasNotRun() const
virtual bool unscheduledWasNotRun_() const =0
std::string const & processName() const
virtual void setProductID_(ProductID const &pid)=0
void unsafe_deleteProduct() const
Resolution resolveProduct(Principal const &principal, bool skipCurrentProcess, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const
void write(std::ostream &os) const
void setProductID(ProductID const &pid)
virtual void setMergeableRunProductMetadata_(MergeableRunProductMetadata const *)
virtual bool productWasDeleted_() const =0
virtual ~ProductResolverBase()
virtual std::string const & resolvedModuleLabel_() const =0
ProductData const * m_data
ProductID const & productID() const
void setMergeableRunProductMetadata(MergeableRunProductMetadata const *mrpm)
virtual bool productWasFetchedAndIsValid_(bool iSkipCurrentProcess) const =0
std::string const & resolvedModuleLabel() const
void resetBranchDescription(std::shared_ptr< BranchDescription const > bd)
bool productWasFetchedAndIsValid(bool iSkipCurrentProcess) const
static Resolution makeAmbiguous()
Resolution(ProductData const *iData)
std::string const & moduleLabel() const
ProductData const * data() const
virtual void retrieveAndMerge_(Principal const &principal, MergeableRunProductMetadata const *mergeableRunProductMetadata) const
virtual void prefetchAsync_(WaitingTask *waitTask, Principal const &principal, bool skipCurrentProcess, ServiceToken const &token, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const =0
virtual Resolution resolveProduct_(Principal const &principal, bool skipCurrentProcess, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const =0
BranchDescription const & branchDescription() const
std::string const & moduleLabel() const
StableProvenance const & stable() const
bool productWasDeleted() const
void prefetchAsync(WaitingTask *waitTask, Principal const &principal, bool skipCurrentProcess, ServiceToken const &token, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const
virtual void setupUnscheduled(UnscheduledConfigurator const &)
virtual void connectTo(ProductResolverBase const &, Principal const *)=0
virtual bool productResolved_() const =0
bool singleProduct() const
std::string const & productInstanceName() const
virtual ProductProvenance const * productProvenancePtr_() const =0
ProductProvenance const * productProvenancePtr() const
static constexpr std::uintptr_t kAmbiguityMask
void retrieveAndMerge(Principal const &principal, MergeableRunProductMetadata const *mergeableRunProductMetadata) const
void setProductProvenanceRetriever(ProductProvenanceRetriever const *provRetriever)