CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Member Functions | Private Attributes
edm::SingleChoiceNoProcessProductResolver Class Reference

#include <ProductResolvers.h>

Inheritance diagram for edm::SingleChoiceNoProcessProductResolver:
edm::ProductResolverBase

Public Types

typedef ProducedProductResolver::ProductStatus ProductStatus
 

Public Member Functions

void connectTo (ProductResolverBase const &iOther, Principal const *) final
 
 SingleChoiceNoProcessProductResolver (ProductResolverIndex iChoice)
 
- Public Member Functions inherited from edm::ProductResolverBase
BranchDescription const & branchDescription () const
 
std::string const & moduleLabel () const
 
ProductResolverBaseoperator= (ProductResolverBase const &)=delete
 
void prefetchAsync (WaitingTaskHolder waitTask, Principal const &principal, bool skipCurrentProcess, ServiceToken const &token, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const
 
std::string const & processName () const
 
ProductID const & productID () const
 
std::string const & productInstanceName () const
 
ProductProvenance const * productProvenancePtr () const
 
bool productResolved () const
 
 ProductResolverBase ()
 
 ProductResolverBase (ProductResolverBase const &)=delete
 
TypeID productType () const
 
bool productUnavailable () const
 
bool productWasDeleted () const
 
bool productWasFetchedAndIsValid (bool iSkipCurrentProcess) const
 
Provenance const * provenance () const
 
bool provenanceAvailable () const
 
void resetBranchDescription (std::shared_ptr< BranchDescription const > bd)
 
void resetProductData ()
 
std::string const & resolvedModuleLabel () const
 
Resolution resolveProduct (Principal const &principal, bool skipCurrentProcess, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const
 
void retrieveAndMerge (Principal const &principal, MergeableRunProductMetadata const *mergeableRunProductMetadata) const
 
void setMergeableRunProductMetadata (MergeableRunProductMetadata const *mrpm)
 
void setProductID (ProductID const &pid)
 
void setProductProvenanceRetriever (ProductProvenanceRetriever const *provRetriever)
 
virtual void setupUnscheduled (UnscheduledConfigurator const &)
 
bool singleProduct () const
 
StableProvenance const * stableProvenance () const
 
void unsafe_deleteProduct () const
 
bool unscheduledWasNotRun () const
 
void write (std::ostream &os) const
 
virtual ~ProductResolverBase ()
 

Private Member Functions

BranchDescription const & branchDescription_ () const override
 
void prefetchAsync_ (WaitingTaskHolder waitTask, Principal const &principal, bool skipCurrentProcess, ServiceToken const &token, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const override
 
ProductProvenance const * productProvenancePtr_ () const override
 
bool productResolved_ () const final
 
bool productUnavailable_ () const override
 
bool productWasDeleted_ () const override
 
bool productWasFetchedAndIsValid_ (bool iSkipCurrentProcess) const override
 
Provenance const * provenance_ () const override
 
void resetBranchDescription_ (std::shared_ptr< BranchDescription const > bd) override
 
void resetProductData_ (bool deleteEarly) override
 
std::string const & resolvedModuleLabel_ () const override
 
Resolution resolveProduct_ (Principal const &principal, bool skipCurrentProcess, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const override
 
void setProductID_ (ProductID const &pid) override
 
void setProductProvenanceRetriever_ (ProductProvenanceRetriever const *provRetriever) override
 
bool singleProduct_ () const override
 
bool unscheduledWasNotRun_ () const override
 

Private Attributes

ProductResolverIndex realResolverIndex_
 

Detailed Description

Definition at line 555 of file ProductResolvers.h.

Member Typedef Documentation

◆ ProductStatus

Definition at line 557 of file ProductResolvers.h.

Constructor & Destructor Documentation

◆ SingleChoiceNoProcessProductResolver()

edm::SingleChoiceNoProcessProductResolver::SingleChoiceNoProcessProductResolver ( ProductResolverIndex  iChoice)
inline

Definition at line 558 of file ProductResolvers.h.

559  : ProductResolverBase(), realResolverIndex_(iChoice) {}

Member Function Documentation

◆ branchDescription_()

BranchDescription const & edm::SingleChoiceNoProcessProductResolver::branchDescription_ ( ) const
overrideprivatevirtual

Implements edm::ProductResolverBase.

Definition at line 1201 of file ProductResolvers.cc.

1201  {
1203  << "SingleChoiceNoProcessProductResolver::branchDescription_() not implemented and should never be called.\n"
1204  << "Contact a Framework developer\n";
1205  }

References Exception, and edm::errors::LogicError.

◆ connectTo()

void edm::SingleChoiceNoProcessProductResolver::connectTo ( ProductResolverBase const &  iOther,
Principal const *   
)
finalvirtual

Implements edm::ProductResolverBase.

Definition at line 1219 of file ProductResolvers.cc.

1219  {
1221  << "SingleChoiceNoProcessProductResolver::connectTo() not implemented and should never be called.\n"
1222  << "Contact a Framework developer\n";
1223  }

References Exception, and edm::errors::LogicError.

◆ prefetchAsync_()

void edm::SingleChoiceNoProcessProductResolver::prefetchAsync_ ( WaitingTaskHolder  waitTask,
Principal const &  principal,
bool  skipCurrentProcess,
ServiceToken const &  token,
SharedResourcesAcquirer sra,
ModuleCallingContext const *  mcc 
) const
overrideprivatevirtual

Implements edm::ProductResolverBase.

Definition at line 1151 of file ProductResolvers.cc.

1156  {
1157  principal.getProductResolverByIndex(realResolverIndex_)
1158  ->prefetchAsync(waitTask, principal, skipCurrentProcess, token, sra, mcc);
1159  }

References edm::Principal::getProductResolverByIndex(), realResolverIndex_, and unpackBuffers-CaloStage2::token.

◆ productProvenancePtr_()

ProductProvenance const * edm::SingleChoiceNoProcessProductResolver::productProvenancePtr_ ( ) const
overrideprivatevirtual

Implements edm::ProductResolverBase.

Definition at line 1165 of file ProductResolvers.cc.

1165 { return nullptr; }

◆ productResolved_()

bool edm::SingleChoiceNoProcessProductResolver::productResolved_ ( ) const
finalprivatevirtual

Implements edm::ProductResolverBase.

Definition at line 1183 of file ProductResolvers.cc.

1183  {
1185  << "SingleChoiceNoProcessProductResolver::productResolved_() not implemented and should never be called.\n"
1186  << "Contact a Framework developer\n";
1187  }

References Exception, and edm::errors::LogicError.

◆ productUnavailable_()

bool edm::SingleChoiceNoProcessProductResolver::productUnavailable_ ( ) const
overrideprivatevirtual

Implements edm::ProductResolverBase.

Definition at line 1177 of file ProductResolvers.cc.

1177  {
1179  << "SingleChoiceNoProcessProductResolver::productUnavailable_() not implemented and should never be called.\n"
1180  << "Contact a Framework developer\n";
1181  }

References Exception, and edm::errors::LogicError.

◆ productWasDeleted_()

bool edm::SingleChoiceNoProcessProductResolver::productWasDeleted_ ( ) const
overrideprivatevirtual

Implements edm::ProductResolverBase.

Definition at line 1189 of file ProductResolvers.cc.

1189  {
1191  << "SingleChoiceNoProcessProductResolver::productWasDeleted_() not implemented and should never be called.\n"
1192  << "Contact a Framework developer\n";
1193  }

References Exception, and edm::errors::LogicError.

◆ productWasFetchedAndIsValid_()

bool edm::SingleChoiceNoProcessProductResolver::productWasFetchedAndIsValid_ ( bool  iSkipCurrentProcess) const
overrideprivatevirtual

Implements edm::ProductResolverBase.

Definition at line 1195 of file ProductResolvers.cc.

1195  {
1196  throw Exception(errors::LogicError) << "SingleChoiceNoProcessProductResolver::productWasFetchedAndIsValid_() not "
1197  "implemented and should never be called.\n"
1198  << "Contact a Framework developer\n";
1199  }

References Exception, and edm::errors::LogicError.

◆ provenance_()

Provenance const * edm::SingleChoiceNoProcessProductResolver::provenance_ ( ) const
overrideprivatevirtual

Implements edm::ProductResolverBase.

Definition at line 1213 of file ProductResolvers.cc.

1213  {
1215  << "SingleChoiceNoProcessProductResolver::provenance_() not implemented and should never be called.\n"
1216  << "Contact a Framework developer\n";
1217  }

References Exception, and edm::errors::LogicError.

◆ resetBranchDescription_()

void edm::SingleChoiceNoProcessProductResolver::resetBranchDescription_ ( std::shared_ptr< BranchDescription const >  bd)
overrideprivatevirtual

Implements edm::ProductResolverBase.

Definition at line 1207 of file ProductResolvers.cc.

1207  {
1208  throw Exception(errors::LogicError) << "SingleChoiceNoProcessProductResolver::resetBranchDescription_() not "
1209  "implemented and should never be called.\n"
1210  << "Contact a Framework developer\n";
1211  }

References Exception, and edm::errors::LogicError.

◆ resetProductData_()

void edm::SingleChoiceNoProcessProductResolver::resetProductData_ ( bool  deleteEarly)
overrideprivatevirtual

Implements edm::ProductResolverBase.

Definition at line 1167 of file ProductResolvers.cc.

1167 {}

◆ resolvedModuleLabel_()

std::string const& edm::SingleChoiceNoProcessProductResolver::resolvedModuleLabel_ ( ) const
inlineoverrideprivatevirtual

Implements edm::ProductResolverBase.

Definition at line 584 of file ProductResolvers.h.

584 { return moduleLabel(); }

References edm::ProductResolverBase::moduleLabel().

◆ resolveProduct_()

ProductResolverBase::Resolution edm::SingleChoiceNoProcessProductResolver::resolveProduct_ ( Principal const &  principal,
bool  skipCurrentProcess,
SharedResourcesAcquirer sra,
ModuleCallingContext const *  mcc 
) const
overrideprivatevirtual

Implements edm::ProductResolverBase.

Definition at line 1140 of file ProductResolvers.cc.

1144  {
1145  //NOTE: Have to lookup the other ProductResolver each time rather than cache
1146  // it's pointer since it appears the pointer can change at some later stage
1147  return principal.getProductResolverByIndex(realResolverIndex_)
1148  ->resolveProduct(principal, skipCurrentProcess, sra, mcc);
1149  }

References edm::Principal::getProductResolverByIndex(), and realResolverIndex_.

◆ setProductID_()

void edm::SingleChoiceNoProcessProductResolver::setProductID_ ( ProductID const &  pid)
overrideprivatevirtual

Implements edm::ProductResolverBase.

Definition at line 1163 of file ProductResolvers.cc.

1163 {}

◆ setProductProvenanceRetriever_()

void edm::SingleChoiceNoProcessProductResolver::setProductProvenanceRetriever_ ( ProductProvenanceRetriever const *  provRetriever)
overrideprivatevirtual

Implements edm::ProductResolverBase.

Definition at line 1161 of file ProductResolvers.cc.

1161 {}

◆ singleProduct_()

bool edm::SingleChoiceNoProcessProductResolver::singleProduct_ ( ) const
overrideprivatevirtual

Implements edm::ProductResolverBase.

Definition at line 1169 of file ProductResolvers.cc.

1169 { return false; }

◆ unscheduledWasNotRun_()

bool edm::SingleChoiceNoProcessProductResolver::unscheduledWasNotRun_ ( ) const
overrideprivatevirtual

Implements edm::ProductResolverBase.

Definition at line 1171 of file ProductResolvers.cc.

1171  {
1173  << "SingleChoiceNoProcessProductResolver::unscheduledWasNotRun_() not implemented and should never be called.\n"
1174  << "Contact a Framework developer\n";
1175  }

References Exception, and edm::errors::LogicError.

Member Data Documentation

◆ realResolverIndex_

ProductResolverIndex edm::SingleChoiceNoProcessProductResolver::realResolverIndex_
private

Definition at line 591 of file ProductResolvers.h.

Referenced by prefetchAsync_(), and resolveProduct_().

edm::ProductResolverBase::ProductResolverBase
ProductResolverBase()
Definition: ProductResolverBase.cc:14
edm::errors::LogicError
Definition: EDMException.h:37
edm::SingleChoiceNoProcessProductResolver::realResolverIndex_
ProductResolverIndex realResolverIndex_
Definition: ProductResolvers.h:591
edm::ProductResolverBase::moduleLabel
std::string const & moduleLabel() const
Definition: ProductResolverBase.h:119
Exception
Definition: hltDiff.cc:245
unpackBuffers-CaloStage2.token
token
Definition: unpackBuffers-CaloStage2.py:316