#include <ProductProvenance.h>
Classes | |
struct | Transients |
Public Member Functions | |
BranchID const & | branchID () const |
void | initializeTransients () const |
ProductProvenance | makeProductProvenance () const |
bool & | noParentage () const |
Parentage const & | parentage () const |
ParentageID const & | parentageID () const |
ProductProvenance (BranchID const &bid, ParentageID const &id) | |
ProductProvenance (BranchID const &bid, boost::shared_ptr< Parentage > parentagePtr) | |
ProductProvenance (BranchID const &bid) | |
ProductProvenance (BranchID const &bid, std::vector< BranchID > const &parents) | |
ProductProvenance () | |
void | write (std::ostream &os) const |
~ProductProvenance () | |
Private Member Functions | |
boost::shared_ptr< Parentage > & | parentagePtr () const |
Private Attributes | |
BranchID | branchID_ |
ParentageID | parentageID_ |
Transients | transient_ |
Definition at line 24 of file ProductProvenance.h.
edm::ProductProvenance::ProductProvenance | ( | ) |
Definition at line 23 of file ProductProvenance.cc.
: branchID_(), parentageID_(), transient_() {}
edm::ProductProvenance::ProductProvenance | ( | BranchID const & | bid | ) | [explicit] |
Definition at line 29 of file ProductProvenance.cc.
: branchID_(bid), parentageID_(), transient_() {}
edm::ProductProvenance::ProductProvenance | ( | BranchID const & | bid, |
boost::shared_ptr< Parentage > | parentagePtr | ||
) |
Definition at line 42 of file ProductProvenance.cc.
References instance, and parentagePtr().
: branchID_(bid), parentageID_(pPtr->id()), transient_() { parentagePtr() = pPtr; ParentageRegistry::instance()->insertMapped(*pPtr); }
edm::ProductProvenance::ProductProvenance | ( | BranchID const & | bid, |
ParentageID const & | id | ||
) |
Definition at line 35 of file ProductProvenance.cc.
: branchID_(bid), parentageID_(edid), transient_() {}
edm::ProductProvenance::ProductProvenance | ( | BranchID const & | bid, |
std::vector< BranchID > const & | parents | ||
) |
Definition at line 51 of file ProductProvenance.cc.
References instance, parentageID_, parentagePtr(), and parents.
: branchID_(bid), parentageID_(), transient_() { parentagePtr() = boost::shared_ptr<Parentage>(new Parentage); parentagePtr()->parents() = parents; parentageID_ = parentagePtr()->id(); ParentageRegistry::instance()->insertMapped(*parentagePtr()); }
edm::ProductProvenance::~ProductProvenance | ( | ) | [inline] |
Definition at line 36 of file ProductProvenance.h.
{}
BranchID const& edm::ProductProvenance::branchID | ( | ) | const [inline] |
Definition at line 42 of file ProductProvenance.h.
References branchID_.
Referenced by edm::RootOutputFile::insertAncestors(), edm::RootOutputFile::insertProductProvenance(), edm::operator<(), edm::operator==(), and write().
{return branchID_;}
void edm::ProductProvenance::initializeTransients | ( | ) | const [inline] |
Definition at line 48 of file ProductProvenance.h.
References edm::ProductProvenance::Transients::reset(), and transient_.
{transient_.reset();}
ProductProvenance edm::ProductProvenance::makeProductProvenance | ( | ) | const |
Definition at line 63 of file ProductProvenance.cc.
{ return *this; }
bool& edm::ProductProvenance::noParentage | ( | ) | const [inline] |
Definition at line 46 of file ProductProvenance.h.
References edm::ProductProvenance::Transients::noParentage_, and transient_.
Referenced by edm::operator==(), and write().
{return transient_.noParentage_;}
Parentage const & edm::ProductProvenance::parentage | ( | ) | const |
Definition at line 68 of file ProductProvenance.cc.
References instance, parentageID_, and parentagePtr().
Referenced by edm::RootOutputFile::insertAncestors(), and edm::Provenance::parentage().
{ if (!parentagePtr()) { parentagePtr().reset(new Parentage); ParentageRegistry::instance()->getMapped(parentageID_, *parentagePtr()); } return *parentagePtr(); }
ParentageID const& edm::ProductProvenance::parentageID | ( | ) | const [inline] |
Definition at line 43 of file ProductProvenance.h.
References parentageID_.
Referenced by edm::RootOutputFile::insertProductProvenance(), edm::operator==(), edm::StreamSerializer::serializeEvent(), and write().
{return parentageID_;}
boost::shared_ptr<Parentage>& edm::ProductProvenance::parentagePtr | ( | ) | const [inline, private] |
Definition at line 59 of file ProductProvenance.h.
References edm::ProductProvenance::Transients::parentagePtr_, and transient_.
Referenced by parentage(), and ProductProvenance().
{return transient_.parentagePtr_;}
void edm::ProductProvenance::write | ( | std::ostream & | os | ) | const |
Definition at line 77 of file ProductProvenance.cc.
References branchID(), noParentage(), and parentageID().
Referenced by edm::operator<<(), and edm::Provenance::write().
{ os << "branch ID = " << branchID() << '\n'; if (!noParentage()) { os << "entry description ID = " << parentageID() << '\n'; } }
BranchID edm::ProductProvenance::branchID_ [private] |
Definition at line 61 of file ProductProvenance.h.
Referenced by branchID().
Definition at line 62 of file ProductProvenance.h.
Referenced by parentage(), parentageID(), and ProductProvenance().
Transients edm::ProductProvenance::transient_ [mutable, private] |
Definition at line 63 of file ProductProvenance.h.
Referenced by initializeTransients(), noParentage(), and parentagePtr().