15 KeptProvenance::~KeptProvenance() =
default;
18 bool const dropMetaDataForDroppedData,
19 set<ProductID>& branchesWithStoredHistory)
20 : dropMetaData_{dropMetaData}
41 vector<ProductProvenance const*> stacked_pp;
42 stacked_pp.push_back(&pp);
44 if (stacked_pp.size() == 0) {
48 stacked_pp.pop_back();
60 auto const* parent_bd =
61 principal.
getForOutput(parent_pp->productID(),
false).desc();
67 if (!parent_bd->produced()) {
73 stacked_pp.push_back(parent_pp.get());
85 <<
"Attempt to set product status for product whose provenance is " ProductID const & productID() const
void setStatus(ProductProvenance const &, ProductStatus)
ProductProvenance const & insert(ProductProvenance const &)
DropMetaData const dropMetaData_
std::vector< ProductID > const & parents() const
unsigned char ProductStatus
bool const dropMetaDataForDroppedData_
Parentage const & parentage() const
OutputHandle getForOutput(ProductID const &, bool resolveProd) const
std::set< ProductProvenance > provenance_
void insertAncestors(ProductProvenance const &iGetParents, Principal const &principal)
ProductProvenance const & emplace(ProductID, ProductStatus)
cet::exempt_ptr< ProductProvenance const > branchToProductProvenance(ProductID const &) const
cet::coded_exception< errors::ErrorCodes, ExceptionDetail::translate > Exception
std::set< ProductID > & branchesWithStoredHistory_