LArSoft  v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
art::Provenance Class Reference

#include "Provenance.h"

Public Member Functions

constexpr Provenance ()=default
 
 Provenance (cet::exempt_ptr< Group const > g)
 
BranchDescription const & productDescription () const
 
std::string const & branchName () const
 
std::string const & producedClassName () const
 
std::string const & friendlyClassName () const
 
std::string const & moduleLabel () const
 
std::string const & productInstanceName () const
 
std::string const & processName () const
 
InputTag inputTag () const
 
RangeSet const & rangeOfValidity () const
 
Parentage const & parentage () const
 
std::vector< ProductID > const & parents () const
 
fhicl::ParameterSet const & parameterSet () const
 
std::set< fhicl::ParameterSetID > const & psetIDs () const
 
ProductID const & productID () const
 
bool isValid () const
 
bool isPresent () const
 
bool produced () const
 
ProductStatus const & productStatus () const
 
std::ostream & write (std::ostream &os) const
 
bool equals (Provenance const &other) const
 

Private Member Functions

ProductProvenance const & productProvenance () const
 

Private Attributes

cet::exempt_ptr< Group const > group_ {nullptr}
 

Detailed Description

Definition at line 39 of file Provenance.h.

Constructor & Destructor Documentation

constexpr art::Provenance::Provenance ( )
explicitdefault
art::Provenance::Provenance ( cet::exempt_ptr< Group const >  g)
inlineexplicit

Definition at line 42 of file Provenance.h.

42 : group_{g} {}
cet::exempt_ptr< Group const > group_
Definition: Provenance.h:149

Member Function Documentation

std::string const& art::Provenance::branchName ( ) const
inline

Definition at line 53 of file Provenance.h.

References art::BranchDescription::branchName(), and productDescription().

54  {
55  return productDescription().branchName();
56  }
BranchDescription const & productDescription() const
Definition: Provenance.h:46
std::string const & branchName() const
bool art::Provenance::equals ( Provenance const &  other) const
inline

Definition at line 143 of file Provenance.h.

References group_.

Referenced by art::operator==().

144  {
145  return group_ == other.group_;
146  }
cet::exempt_ptr< Group const > group_
Definition: Provenance.h:149
std::string const& art::Provenance::friendlyClassName ( ) const
inline

Definition at line 63 of file Provenance.h.

References art::BranchDescription::friendlyClassName(), and productDescription().

Referenced by write_product_node().

64  {
66  }
BranchDescription const & productDescription() const
Definition: Provenance.h:46
std::string const & friendlyClassName() const
InputTag art::Provenance::inputTag ( ) const
inline

Definition at line 83 of file Provenance.h.

References art::BranchDescription::inputTag(), and productDescription().

84  {
85  return productDescription().inputTag();
86  }
InputTag inputTag() const
BranchDescription const & productDescription() const
Definition: Provenance.h:46
bool art::Provenance::isPresent ( ) const
inline

Definition at line 125 of file Provenance.h.

References art::productstatus::present(), and productStatus().

Referenced by art::detail::PrincipalProcessor< DETAIL >::operator()().

126  {
128  }
ProductStatus const & productStatus() const
Definition: Provenance.h:135
ProductStatus present()
Definition: ProductStatus.h:16
bool art::Provenance::isValid ( ) const
inline

Definition at line 120 of file Provenance.h.

References group_.

Referenced by art::Handle< T >::id(), and art::Handle< T >::isValid().

121  {
122  return static_cast<bool>(group_);
123  }
cet::exempt_ptr< Group const > group_
Definition: Provenance.h:149
std::string const& art::Provenance::moduleLabel ( ) const
inline

Definition at line 68 of file Provenance.h.

References art::BranchDescription::moduleLabel(), and productDescription().

Referenced by recob::DumpPFParticles::DotFileName(), and write_module_id().

69  {
71  }
std::string const & moduleLabel() const
BranchDescription const & productDescription() const
Definition: Provenance.h:46
fhicl::ParameterSet const & art::Provenance::parameterSet ( ) const

Definition at line 18 of file Provenance.cc.

References evd::details::begin(), fhicl::ParameterSetRegistry::get(), and psetIDs().

Referenced by parents().

19 {
21 }
static collection_type const & get() noexcept
std::vector< evd::details::RawDigitInfo_t >::const_iterator begin(RawDigitCacheDataClass const &cache)
std::set< fhicl::ParameterSetID > const & psetIDs() const
Definition: Provenance.h:106
Parentage const& art::Provenance::parentage ( ) const
inline

Definition at line 95 of file Provenance.h.

References art::ProductProvenance::parentage(), and productProvenance().

Referenced by parents().

96  {
97  return productProvenance().parentage();
98  }
ProductProvenance const & productProvenance() const
Definition: Provenance.h:152
Parentage const & parentage() const
std::vector<ProductID> const& art::Provenance::parents ( void  ) const
inline

Definition at line 100 of file Provenance.h.

References parameterSet(), parentage(), and art::Parentage::parents().

Referenced by art::DataFlow::processEventProvenance(), and art::DataViewImpl::recordAsParent().

101  {
102  return parentage().parents();
103  }
std::vector< ProductID > const & parents() const
Definition: Parentage.h:30
Parentage const & parentage() const
Definition: Provenance.h:95
std::string const& art::Provenance::processName ( ) const
inline

Definition at line 78 of file Provenance.h.

References art::BranchDescription::processName(), and productDescription().

Referenced by recob::DumpPFParticles::DotFileName(), write_module_id(), and write_module_node().

79  {
81  }
std::string const & processName() const
BranchDescription const & productDescription() const
Definition: Provenance.h:46
bool art::Provenance::produced ( ) const
inline

Definition at line 130 of file Provenance.h.

References art::BranchDescription::produced(), and productDescription().

131  {
132  return productDescription().produced();
133  }
BranchDescription const & productDescription() const
Definition: Provenance.h:46
std::string const& art::Provenance::producedClassName ( ) const
inline

Definition at line 58 of file Provenance.h.

References art::BranchDescription::producedClassName(), and productDescription().

59  {
61  }
std::string const & producedClassName() const
BranchDescription const & productDescription() const
Definition: Provenance.h:46
BranchDescription const& art::Provenance::productDescription ( ) const
inline

Definition at line 46 of file Provenance.h.

References group_.

Referenced by branchName(), friendlyClassName(), art::Handle< T >::Handle(), inputTag(), moduleLabel(), processName(), produced(), producedClassName(), productInstanceName(), psetIDs(), art::DataViewImpl::recordAsParent(), and write().

47  {
48  return group_->productDescription();
49  }
cet::exempt_ptr< Group const > group_
Definition: Provenance.h:149
ProductID const& art::Provenance::productID ( ) const
inline

Definition at line 113 of file Provenance.h.

References group_.

Referenced by art::Handle< T >::id(), art::ValidHandle< T >::id(), art::DataViewImpl::recordAsParent(), and write_id().

114  {
115  return group_->productID();
116  }
cet::exempt_ptr< Group const > group_
Definition: Provenance.h:149
std::string const& art::Provenance::productInstanceName ( ) const
inline

Definition at line 73 of file Provenance.h.

References productDescription(), and art::BranchDescription::productInstanceName().

Referenced by recob::DumpPFParticles::DotFileName(), and write_product_node().

74  {
76  }
std::string const & productInstanceName() const
BranchDescription const & productDescription() const
Definition: Provenance.h:46
ProductProvenance const& art::Provenance::productProvenance ( ) const
inlineprivate

Definition at line 152 of file Provenance.h.

References group_.

Referenced by parentage(), productStatus(), and write().

153  {
154  auto prov = group_->productProvenancePtr();
155  assert(prov != nullptr);
156  return *prov;
157  }
cet::exempt_ptr< Group const > group_
Definition: Provenance.h:149
ProductStatus const& art::Provenance::productStatus ( ) const
inline

Definition at line 135 of file Provenance.h.

References productProvenance(), art::ProductProvenance::productStatus(), and write().

Referenced by isPresent().

136  {
137  return productProvenance().productStatus();
138  }
ProductProvenance const & productProvenance() const
Definition: Provenance.h:152
ProductStatus const & productStatus() const
std::set<fhicl::ParameterSetID> const& art::Provenance::psetIDs ( ) const
inline

Definition at line 106 of file Provenance.h.

References productDescription(), and art::BranchDescription::psetIDs().

Referenced by parameterSet().

107  {
108  return productDescription().psetIDs();
109  }
std::set< fhicl::ParameterSetID > const & psetIDs() const
BranchDescription const & productDescription() const
Definition: Provenance.h:46
RangeSet const& art::Provenance::rangeOfValidity ( ) const
inline

Definition at line 90 of file Provenance.h.

References group_.

91  {
92  return group_->rangeOfValidity();
93  }
cet::exempt_ptr< Group const > group_
Definition: Provenance.h:149
std::ostream & art::Provenance::write ( std::ostream &  os) const

Definition at line 24 of file Provenance.cc.

References productDescription(), productProvenance(), art::ProductProvenance::write(), and art::BranchDescription::write().

Referenced by art::operator<<(), and productStatus().

25 {
26  // This is grossly inadequate, but it is not critical for the
27  // first pass.
30  return os;
31 }
ProductProvenance const & productProvenance() const
Definition: Provenance.h:152
void write(std::ostream &os) const
void write(std::ostream &os) const
BranchDescription const & productDescription() const
Definition: Provenance.h:46

Member Data Documentation

cet::exempt_ptr<Group const> art::Provenance::group_ {nullptr}
private

The documentation for this class was generated from the following files: