CMS 3D CMS Logo

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

#include <ProductData.h>

Public Member Functions

std::shared_ptr< BranchDescription const > const & branchDescription () const
 
 ProductData ()
 
 ProductData (std::shared_ptr< BranchDescription const > bd)
 
 ProductData (WrapperBase *product, Provenance const &prov)
 
Provenance const & provenance () const
 
void resetBranchDescription (std::shared_ptr< BranchDescription const > bd)
 
void resetProductData ()
 
void setMergeableRunProductMetadata (MergeableRunProductMetadataBase const *mrpm)
 
void setProcessHistory (ProcessHistory const &ph)
 
void setProvenance (ProductProvenanceRetriever const *provRetriever, ProcessHistory const &ph, ProductID const &pid)
 
void setWrapper (std::unique_ptr< WrapperBase > iValue)
 
std::shared_ptr< WrapperBase const > sharedConstWrapper () const
 
void swap (ProductData &other)
 
void unsafe_resetProductData () const
 
void unsafe_setWrapper (std::unique_ptr< WrapperBase > iValue) const
 
void unsafe_setWrapper (std::shared_ptr< WrapperBase const > iValue) const
 
WrapperBaseunsafe_wrapper () const
 
WrapperBase const * wrapper () const
 

Private Attributes

Provenance prov_
 
std::shared_ptr< WrapperBase const > wrapper_
 

Detailed Description

Definition at line 19 of file ProductData.h.

Constructor & Destructor Documentation

edm::ProductData::ProductData ( )

Definition at line 12 of file ProductData.cc.

12  :
13  wrapper_(),
14  prov_() {
15  }
std::shared_ptr< WrapperBase const > wrapper_
Definition: ProductData.h:81
Provenance prov_
Definition: ProductData.h:82
edm::ProductData::ProductData ( std::shared_ptr< BranchDescription const >  bd)
explicit

Definition at line 17 of file ProductData.cc.

17  :
18  wrapper_(),
19  prov_(bd, ProductID()) {
20  }
std::shared_ptr< WrapperBase const > wrapper_
Definition: ProductData.h:81
Provenance prov_
Definition: ProductData.h:82
edm::ProductData::ProductData ( WrapperBase product,
Provenance const &  prov 
)

Definition at line 23 of file ProductData.cc.

23  :
24  wrapper_(product, do_nothing_deleter()),
25  prov_(prov) {
26  }
std::shared_ptr< WrapperBase const > wrapper_
Definition: ProductData.h:81
Provenance prov_
Definition: ProductData.h:82

Member Function Documentation

std::shared_ptr<BranchDescription const> const& edm::ProductData::branchDescription ( ) const
inline

Definition at line 28 of file ProductData.h.

References edm::Provenance::constBranchDescriptionPtr(), and prov_.

28  {
30  }
Provenance prov_
Definition: ProductData.h:82
std::shared_ptr< BranchDescription const > const & constBranchDescriptionPtr() const
Definition: Provenance.h:46
Provenance const& edm::ProductData::provenance ( ) const
inline

Definition at line 32 of file ProductData.h.

References prov_.

Referenced by edm::Principal::findProducts(), and edm::Principal::getByLabel().

32 { return prov_;}
Provenance prov_
Definition: ProductData.h:82
void edm::ProductData::resetBranchDescription ( std::shared_ptr< BranchDescription const >  bd)

Definition at line 29 of file ProductData.cc.

References prov_, and edm::Provenance::setBranchDescription().

Referenced by swap().

29  {
31  }
void setBranchDescription(std::shared_ptr< BranchDescription const > const &p)
Definition: Provenance.h:91
Provenance prov_
Definition: ProductData.h:82
void edm::ProductData::resetProductData ( )
inline

Definition at line 53 of file ProductData.h.

References wrapper_.

Referenced by edm::DataManagingProductResolver::resetProductData_(), and edm::SwitchBaseProductResolver::resetProductData_().

53  {
54  wrapper_.reset();
55  }
std::shared_ptr< WrapperBase const > wrapper_
Definition: ProductData.h:81
void edm::ProductData::setMergeableRunProductMetadata ( MergeableRunProductMetadataBase const *  mrpm)
inline

Definition at line 71 of file ProductData.h.

References prov_, and edm::Provenance::setMergeableRunProductMetadata().

Referenced by edm::DataManagingProductResolver::setMergeableRunProductMetadataInProductData().

71  {
73  }
Provenance prov_
Definition: ProductData.h:82
void setMergeableRunProductMetadata(MergeableRunProductMetadataBase const *mrpm)
Definition: Provenance.h:87
void edm::ProductData::setProcessHistory ( ProcessHistory const &  ph)
inline

Definition at line 61 of file ProductData.h.

References prov_, and edm::Provenance::setProcessHistory().

Referenced by edm::DataManagingProductResolver::setProcessHistory_().

61  {
63  }
Provenance prov_
Definition: ProductData.h:82
void setProcessHistory(ProcessHistory const &ph)
Definition: Provenance.h:81
void edm::ProductData::setProvenance ( ProductProvenanceRetriever const *  provRetriever,
ProcessHistory const &  ph,
ProductID const &  pid 
)
inline

Definition at line 65 of file ProductData.h.

References prov_, edm::Provenance::setProcessHistory(), edm::Provenance::setProductID(), and edm::Provenance::setStore().

Referenced by edm::DataManagingProductResolver::setProvenance_(), and edm::SwitchBaseProductResolver::setProvenance_().

65  {
67  prov_.setStore(provRetriever);
69  }
Provenance prov_
Definition: ProductData.h:82
void setStore(ProductProvenanceRetriever const *store)
Definition: Provenance.h:79
void setProductID(ProductID const &pid)
Definition: Provenance.h:85
void setProcessHistory(ProcessHistory const &ph)
Definition: Provenance.h:81
void edm::ProductData::setWrapper ( std::unique_ptr< WrapperBase iValue)

Definition at line 33 of file ProductData.cc.

References eostools::move(), and wrapper_.

Referenced by swap().

33  {
34  wrapper_ = std::move(iValue);
35  }
std::shared_ptr< WrapperBase const > wrapper_
Definition: ProductData.h:81
def move(src, dest)
Definition: eostools.py:511
std::shared_ptr<WrapperBase const> edm::ProductData::sharedConstWrapper ( ) const
inline

Definition at line 36 of file ProductData.h.

References wrapper_.

Referenced by edm::getProductByTag(), and edm::SwitchBaseProductResolver::resolveProductImpl().

36  {
37  return wrapper_;
38  }
std::shared_ptr< WrapperBase const > wrapper_
Definition: ProductData.h:81
void edm::ProductData::swap ( ProductData other)
inline

Definition at line 40 of file ProductData.h.

References prov_, resetBranchDescription(), setWrapper(), edm::Provenance::swap(), std::swap(), unsafe_setWrapper(), and wrapper_.

Referenced by edm::swap().

40  {
41  std::swap(wrapper_, other.wrapper_);
42  prov_.swap(other.prov_);
43  }
std::shared_ptr< WrapperBase const > wrapper_
Definition: ProductData.h:81
Provenance prov_
Definition: ProductData.h:82
void swap(edm::DataFrameContainer &lhs, edm::DataFrameContainer &rhs)
void swap(Provenance &)
Definition: Provenance.cc:70
void edm::ProductData::unsafe_resetProductData ( ) const
inline

Definition at line 57 of file ProductData.h.

References wrapper_.

57  {
58  wrapper_.reset();
59  }
std::shared_ptr< WrapperBase const > wrapper_
Definition: ProductData.h:81
void edm::ProductData::unsafe_setWrapper ( std::unique_ptr< WrapperBase iValue) const

Definition at line 38 of file ProductData.cc.

References eostools::move(), and wrapper_.

Referenced by edm::SwitchBaseProductResolver::resolveProductImpl(), edm::DataManagingProductResolver::setProduct(), and swap().

38  {
39  wrapper_ = std::move(iValue);
40  }
std::shared_ptr< WrapperBase const > wrapper_
Definition: ProductData.h:81
def move(src, dest)
Definition: eostools.py:511
void edm::ProductData::unsafe_setWrapper ( std::shared_ptr< WrapperBase const >  iValue) const

Definition at line 42 of file ProductData.cc.

References eostools::move(), and wrapper_.

42  {
43  wrapper_ = std::move(iValue);
44  }
std::shared_ptr< WrapperBase const > wrapper_
Definition: ProductData.h:81
def move(src, dest)
Definition: eostools.py:511
WrapperBase* edm::ProductData::unsafe_wrapper ( ) const
inline

Definition at line 35 of file ProductData.h.

References wrapper_.

Referenced by edm::DataManagingProductResolver::mergeProduct().

35 { return const_cast<WrapperBase*>(wrapper_.get()); }
std::shared_ptr< WrapperBase const > wrapper_
Definition: ProductData.h:81
WrapperBase const* edm::ProductData::wrapper ( ) const
inline

Member Data Documentation

Provenance edm::ProductData::prov_
private
std::shared_ptr<WrapperBase const> edm::ProductData::wrapper_
mutableprivate