CMS 3D CMS Logo

ProductData.cc
Go to the documentation of this file.
1 /*----------------------------------------------------------------------
2 ----------------------------------------------------------------------*/
4 
8 
9 #include <algorithm>
10 
11 namespace edm {
12  ProductData::ProductData() : wrapper_(), prov_() {}
13 
14  ProductData::ProductData(std::shared_ptr<BranchDescription const> bd) : wrapper_(), prov_(bd, ProductID()) {}
15 
16  // For use by FWLite
18  : wrapper_(product, do_nothing_deleter()), prov_(prov) {}
19 
20  void ProductData::resetBranchDescription(std::shared_ptr<BranchDescription const> bd) {
22  }
23 
24  void ProductData::setWrapper(std::unique_ptr<WrapperBase> iValue) { wrapper_ = std::move(iValue); }
25 
26  //Not const thread-safe update
27  void ProductData::unsafe_setWrapper(std::unique_ptr<WrapperBase> iValue) const { wrapper_ = std::move(iValue); }
28 
29  void ProductData::unsafe_setWrapper(std::shared_ptr<WrapperBase const> iValue) const { wrapper_ = std::move(iValue); }
30 } // namespace edm
edm::ProductData::ProductData
ProductData()
Definition: ProductData.cc:12
edm::ProductData::wrapper_
std::shared_ptr< WrapperBase const > wrapper_
Definition: ProductData.h:71
edm
HLT enums.
Definition: AlignableModifier.h:19
edm::do_nothing_deleter
Definition: do_nothing_deleter.h:34
edm::Provenance::setBranchDescription
void setBranchDescription(std::shared_ptr< BranchDescription const > const &p)
Definition: Provenance.h:87
edm::ProductData::resetBranchDescription
void resetBranchDescription(std::shared_ptr< BranchDescription const > bd)
Definition: ProductData.cc:20
edm::ProductData::setWrapper
void setWrapper(std::unique_ptr< WrapperBase > iValue)
Definition: ProductData.cc:24
ProductID.h
WrapperBase.h
edm::ProductData::prov_
Provenance prov_
Definition: ProductData.h:72
ProductData.h
edm::WrapperBase
Definition: WrapperBase.h:23
eostools.move
def move(src, dest)
Definition: eostools.py:511
edm::Provenance
Definition: Provenance.h:34
do_nothing_deleter.h
edm::ProductID
Definition: ProductID.h:27
edm::ProductData::unsafe_setWrapper
void unsafe_setWrapper(std::unique_ptr< WrapperBase > iValue) const
Definition: ProductData.cc:27