CMS 3D CMS Logo

Public Member Functions | Public Attributes

edm::ProductData Struct Reference

#include <ProductData.h>

List of all members.

Public Member Functions

boost::shared_ptr
< ConstBranchDescription >
const & 
branchDescription () const
WrapperInterfaceBase const * getInterface () const
 ProductData (boost::shared_ptr< ConstBranchDescription > bd)
 ProductData ()
 ProductData (void const *product, Provenance const &prov)
void resetBranchDescription (boost::shared_ptr< ConstBranchDescription > bd)
void resetProductData ()
void swap (ProductData &other)

Public Attributes

Provenance prov_
boost::shared_ptr< void const > wrapper_

Detailed Description

Definition at line 17 of file ProductData.h.


Constructor & Destructor Documentation

edm::ProductData::ProductData ( )

Definition at line 9 of file ProductData.cc.

                           :
    wrapper_(),
    prov_() {
  }
edm::ProductData::ProductData ( boost::shared_ptr< ConstBranchDescription bd) [explicit]

Definition at line 14 of file ProductData.cc.

                                                                     :
    wrapper_(),
    prov_(bd, ProductID()) {
  }
edm::ProductData::ProductData ( void const *  product,
Provenance const &  prov 
)

Definition at line 20 of file ProductData.cc.

                                                                      :
    wrapper_(product, do_nothing_deleter()),
    prov_(prov) {
  }

Member Function Documentation

boost::shared_ptr<ConstBranchDescription> const& edm::ProductData::branchDescription ( ) const [inline]

Definition at line 29 of file ProductData.h.

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

Referenced by edm::ProducedGroup::branchDescription_(), and edm::InputGroup::branchDescription_().

                                                                             {
      return prov_.constBranchDescriptionPtr();
    }
WrapperInterfaceBase const* edm::ProductData::getInterface ( ) const [inline]
void edm::ProductData::resetBranchDescription ( boost::shared_ptr< ConstBranchDescription bd)

Definition at line 26 of file ProductData.cc.

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

Referenced by edm::InputGroup::resetBranchDescription_(), and edm::ProducedGroup::resetBranchDescription_().

                                                                                {
    prov_.setBranchDescription(bd);
  }
void edm::ProductData::resetProductData ( ) [inline]

Definition at line 40 of file ProductData.h.

References prov_, edm::Provenance::resetProductProvenance(), and wrapper_.

Referenced by edm::Group::deleteProduct(), and edm::Group::resetProductData().

                            {
      wrapper_.reset();
      prov_.resetProductProvenance();
    }
void edm::ProductData::swap ( ProductData other) [inline]

Definition at line 33 of file ProductData.h.

References prov_, edm::Provenance::swap(), and wrapper_.

Referenced by edm::swap().

                                  {
       std::swap(wrapper_, other.wrapper_);
       prov_.swap(other.prov_);
    }

Member Data Documentation

boost::shared_ptr<void const> edm::ProductData::wrapper_ [mutable]