CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Private Member Functions
edm::ProductHolderBase Class Referenceabstract

#include <ProductHolder.h>

Inheritance diagram for edm::ProductHolderBase:
edm::AliasProductHolder edm::InputProductHolder edm::NoProcessProductHolder edm::ProducedProductHolder edm::ScheduledProductHolder edm::SourceProductHolder edm::UnscheduledProductHolder

Public Types

enum  ResolveStatus { ProductFound, ProductNotFound, Ambiguous }
 

Public Member Functions

BranchDescription const & branchDescription () const
 
void checkType (WrapperBase const &prod) const
 
void mergeProduct (std::unique_ptr< WrapperBase > edp, ProductProvenance const &productProvenance) const
 
void mergeProduct (std::unique_ptr< WrapperBase > edp) const
 
void mergeTheProduct (std::unique_ptr< WrapperBase > edp) const
 
std::string const & moduleLabel () const
 
bool onDemand () const
 
ProductHolderBaseoperator= (ProductHolderBase const &)=delete
 
std::string const & processName () const
 
WrapperBase const * product () const
 
WrapperBaseproduct ()
 
ProductData const & productData () const
 
ProductDataproductData ()
 
 ProductHolderBase ()
 
 ProductHolderBase (ProductHolderBase const &)=delete
 
ProductID const & productID () const
 
std::string const & productInstanceName () const
 
ProductProvenance const * productProvenancePtr () const
 
TypeID productType () const
 
bool productUnavailable () const
 
bool productWasDeleted () const
 
Provenance const * provenance () const
 
bool provenanceAvailable () const
 
bool putOrMergeProduct () const
 
void putProduct (std::unique_ptr< WrapperBase > edp, ProductProvenance const &productProvenance) const
 
void putProduct (std::unique_ptr< WrapperBase > edp) const
 
void reallyCheckType (WrapperBase const &prod) const
 
void resetBranchDescription (std::shared_ptr< BranchDescription const > bd)
 
void resetProductData ()
 
void resetStatus ()
 
std::string const & resolvedModuleLabel () const
 
ProductData const * resolveProduct (ResolveStatus &resolveStatus, Principal const &principal, bool skipCurrentProcess, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const
 
void setProcessHistory (ProcessHistory const &ph)
 
void setProductDeleted ()
 
void setProvenance (ProductProvenanceRetriever const *provRetriever, ProcessHistory const &ph, ProductID const &pid)
 
bool singleProduct () const
 
void swap (ProductHolderBase &rhs)
 
void throwProductDeletedException () const
 
void unsafe_deleteProduct () const
 
void write (std::ostream &os) const
 
virtual ~ProductHolderBase ()
 

Private Member Functions

virtual BranchDescription const & branchDescription_ () const =0
 
virtual void checkType_ (WrapperBase const &prod) const =0
 
virtual ProductData const & getProductData () const =0
 
virtual ProductDatagetProductData ()=0
 
virtual void mergeProduct_ (std::unique_ptr< WrapperBase > edp, ProductProvenance const &productProvenance) const =0
 
virtual void mergeProduct_ (std::unique_ptr< WrapperBase > edp) const =0
 
virtual bool onDemand_ () const =0
 
virtual ProductProvenance const * productProvenancePtr_ () const =0
 
virtual bool productUnavailable_ () const =0
 
virtual bool productWasDeleted_ () const =0
 
virtual bool putOrMergeProduct_ () const =0
 
virtual void putProduct_ (std::unique_ptr< WrapperBase > edp, ProductProvenance const &productProvenance) 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_ ()=0
 
virtual void resetStatus_ ()=0
 
virtual std::string const & resolvedModuleLabel_ () const =0
 
virtual ProductData const * resolveProduct_ (ResolveStatus &resolveStatus, Principal const &principal, bool skipCurrentProcess, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const =0
 
virtual void setProcessHistory_ (ProcessHistory const &ph)=0
 
virtual void setProductDeleted_ () const =0
 
virtual void setProvenance_ (ProductProvenanceRetriever const *provRetriever, ProcessHistory const &ph, ProductID const &pid)=0
 
virtual bool singleProduct_ () const =0
 
virtual void swap_ (ProductHolderBase &rhs)=0
 
WrapperBaseunsafe_product () const
 

Detailed Description

Definition at line 30 of file ProductHolder.h.

Member Enumeration Documentation

Enumerator
ProductFound 
ProductNotFound 
Ambiguous 

Definition at line 33 of file ProductHolder.h.

Constructor & Destructor Documentation

edm::ProductHolderBase::ProductHolderBase ( )

Definition at line 27 of file ProductHolder.cc.

edm::ProductHolderBase::~ProductHolderBase ( )
virtual

Definition at line 29 of file ProductHolder.cc.

edm::ProductHolderBase::ProductHolderBase ( ProductHolderBase const &  )
delete

Member Function Documentation

BranchDescription const& edm::ProductHolderBase::branchDescription ( ) const
inline

Definition at line 93 of file ProductHolder.h.

virtual BranchDescription const& edm::ProductHolderBase::branchDescription_ ( ) const
privatepure virtual
void edm::ProductHolderBase::checkType ( WrapperBase const &  prod) const
inline

Definition at line 164 of file ProductHolder.h.

virtual void edm::ProductHolderBase::checkType_ ( WrapperBase const &  prod) const
privatepure virtual
virtual ProductData const& edm::ProductHolderBase::getProductData ( ) const
privatepure virtual
virtual ProductData& edm::ProductHolderBase::getProductData ( )
privatepure virtual
void edm::ProductHolderBase::mergeProduct ( std::unique_ptr< WrapperBase edp,
ProductProvenance const &  productProvenance 
) const
inline

Definition at line 151 of file ProductHolder.h.

void edm::ProductHolderBase::mergeProduct ( std::unique_ptr< WrapperBase edp) const
inline

Definition at line 155 of file ProductHolder.h.

virtual void edm::ProductHolderBase::mergeProduct_ ( std::unique_ptr< WrapperBase edp,
ProductProvenance const &  productProvenance 
) const
privatepure virtual
virtual void edm::ProductHolderBase::mergeProduct_ ( std::unique_ptr< WrapperBase edp) const
privatepure virtual
void edm::ProductHolderBase::mergeTheProduct ( std::unique_ptr< WrapperBase edp) const

Definition at line 203 of file ProductHolder.cc.

std::string const& edm::ProductHolderBase::moduleLabel ( ) const
inline

Definition at line 102 of file ProductHolder.h.

bool edm::ProductHolderBase::onDemand ( ) const
inline

Definition at line 79 of file ProductHolder.h.

virtual bool edm::ProductHolderBase::onDemand_ ( ) const
privatepure virtual
ProductHolderBase& edm::ProductHolderBase::operator= ( ProductHolderBase const &  )
delete
std::string const& edm::ProductHolderBase::processName ( ) const
inline

Definition at line 113 of file ProductHolder.h.

WrapperBase const* edm::ProductHolderBase::product ( ) const
inline

Definition at line 85 of file ProductHolder.h.

WrapperBase* edm::ProductHolderBase::product ( )
inline

Definition at line 87 of file ProductHolder.h.

ProductData const& edm::ProductHolderBase::productData ( ) const
inline

Definition at line 41 of file ProductHolder.h.

ProductData& edm::ProductHolderBase::productData ( )
inline

Definition at line 45 of file ProductHolder.h.

ProductID const& edm::ProductHolderBase::productID ( ) const
inline

Definition at line 133 of file ProductHolder.h.

std::string const& edm::ProductHolderBase::productInstanceName ( ) const
inline

Definition at line 110 of file ProductHolder.h.

ProductProvenance const* edm::ProductHolderBase::productProvenancePtr ( ) const
inline

Definition at line 90 of file ProductHolder.h.

virtual ProductProvenance const* edm::ProductHolderBase::productProvenancePtr_ ( ) const
privatepure virtual
TypeID edm::ProductHolderBase::productType ( ) const

Definition at line 335 of file ProductHolder.cc.

bool edm::ProductHolderBase::productUnavailable ( ) const
inline

Definition at line 73 of file ProductHolder.h.

virtual bool edm::ProductHolderBase::productUnavailable_ ( ) const
privatepure virtual
bool edm::ProductHolderBase::productWasDeleted ( ) const
inline

Definition at line 82 of file ProductHolder.h.

virtual bool edm::ProductHolderBase::productWasDeleted_ ( ) const
privatepure virtual
Provenance const * edm::ProductHolderBase::provenance ( ) const

Definition at line 353 of file ProductHolder.cc.

bool edm::ProductHolderBase::provenanceAvailable ( ) const

Definition at line 323 of file ProductHolder.cc.

bool edm::ProductHolderBase::putOrMergeProduct ( ) const
inline

Definition at line 146 of file ProductHolder.h.

virtual bool edm::ProductHolderBase::putOrMergeProduct_ ( ) const
privatepure virtual
void edm::ProductHolderBase::putProduct ( std::unique_ptr< WrapperBase edp,
ProductProvenance const &  productProvenance 
) const
inline

Definition at line 136 of file ProductHolder.h.

void edm::ProductHolderBase::putProduct ( std::unique_ptr< WrapperBase edp) const
inline

Definition at line 141 of file ProductHolder.h.

virtual void edm::ProductHolderBase::putProduct_ ( std::unique_ptr< WrapperBase edp,
ProductProvenance const &  productProvenance 
) const
privatepure virtual
virtual void edm::ProductHolderBase::putProduct_ ( std::unique_ptr< WrapperBase edp) const
privatepure virtual
void edm::ProductHolderBase::reallyCheckType ( WrapperBase const &  prod) const

Definition at line 340 of file ProductHolder.cc.

void edm::ProductHolderBase::resetBranchDescription ( std::shared_ptr< BranchDescription const >  bd)
inline

Definition at line 99 of file ProductHolder.h.

virtual void edm::ProductHolderBase::resetBranchDescription_ ( std::shared_ptr< BranchDescription const >  bd)
privatepure virtual
void edm::ProductHolderBase::resetProductData ( )
inline

Definition at line 65 of file ProductHolder.h.

virtual void edm::ProductHolderBase::resetProductData_ ( )
privatepure virtual
void edm::ProductHolderBase::resetStatus ( )
inline

Definition at line 57 of file ProductHolder.h.

virtual void edm::ProductHolderBase::resetStatus_ ( )
privatepure virtual
std::string const& edm::ProductHolderBase::resolvedModuleLabel ( ) const
inline

Definition at line 107 of file ProductHolder.h.

virtual std::string const& edm::ProductHolderBase::resolvedModuleLabel_ ( ) const
privatepure virtual
ProductData const* edm::ProductHolderBase::resolveProduct ( ResolveStatus resolveStatus,
Principal const &  principal,
bool  skipCurrentProcess,
SharedResourcesAcquirer sra,
ModuleCallingContext const *  mcc 
) const
inline

Definition at line 49 of file ProductHolder.h.

virtual ProductData const* edm::ProductHolderBase::resolveProduct_ ( ResolveStatus resolveStatus,
Principal const &  principal,
bool  skipCurrentProcess,
SharedResourcesAcquirer sra,
ModuleCallingContext const *  mcc 
) const
privatepure virtual
void edm::ProductHolderBase::setProcessHistory ( ProcessHistory const &  ph)
inline

Definition at line 122 of file ProductHolder.h.

virtual void edm::ProductHolderBase::setProcessHistory_ ( ProcessHistory const &  ph)
privatepure virtual
void edm::ProductHolderBase::setProductDeleted ( )
inline

Definition at line 61 of file ProductHolder.h.

virtual void edm::ProductHolderBase::setProductDeleted_ ( ) const
privatepure virtual
void edm::ProductHolderBase::setProvenance ( ProductProvenanceRetriever const *  provRetriever,
ProcessHistory const &  ph,
ProductID const &  pid 
)
inline

Definition at line 119 of file ProductHolder.h.

virtual void edm::ProductHolderBase::setProvenance_ ( ProductProvenanceRetriever const *  provRetriever,
ProcessHistory const &  ph,
ProductID const &  pid 
)
privatepure virtual
bool edm::ProductHolderBase::singleProduct ( ) const
inline

Definition at line 96 of file ProductHolder.h.

virtual bool edm::ProductHolderBase::singleProduct_ ( ) const
privatepure virtual
void edm::ProductHolderBase::swap ( ProductHolderBase rhs)
inline

Definition at line 168 of file ProductHolder.h.

virtual void edm::ProductHolderBase::swap_ ( ProductHolderBase rhs)
privatepure virtual
void edm::ProductHolderBase::throwProductDeletedException ( ) const

Definition at line 14 of file ProductHolder.cc.

void edm::ProductHolderBase::unsafe_deleteProduct ( ) const
inline

Definition at line 67 of file ProductHolder.h.

WrapperBase* edm::ProductHolderBase::unsafe_product ( ) const
inlineprivate

Definition at line 173 of file ProductHolder.h.

void edm::ProductHolderBase::write ( std::ostream &  os) const

Definition at line 358 of file ProductHolder.cc.