1 #ifndef DataFormats_Provenance_ThinnedAssociationsHelper_h 2 #define DataFormats_Provenance_ThinnedAssociationsHelper_h 16 class BranchDescription;
40 std::vector<ThinnedAssociationBranches>::const_iterator
begin()
const;
41 std::vector<ThinnedAssociationBranches>::const_iterator
end()
const;
43 std::vector<ThinnedAssociationBranches>::const_iterator parentBegin(
BranchID const&)
const;
44 std::vector<ThinnedAssociationBranches>::const_iterator parentEnd(
BranchID const&)
const;
49 std::vector<std::pair<BranchID, ThinnedAssociationBranches const*> > associationToBranches()
const;
52 void clear() { vThinnedAssociationBranches_.clear(); }
54 void selectAssociationProducts(std::vector<BranchDescription const*>
const& associationDescriptions,
55 std::set<BranchID>
const& keptProductsInEvent,
56 std::map<BranchID, bool>& keepAssociation)
const;
58 std::vector<ThinnedAssociationBranches>
const&
data()
const {
return vThinnedAssociationBranches_; }
65 std::vector<BranchID>
const& associationsFromSecondary);
68 std::map<BranchID, bool>
const& keepAssociation,
69 std::map<BranchID::value_type, BranchID::value_type>
const& droppedBranchIDToKeptBranchID);
71 void initAssociationsFromSecondary(std::vector<BranchID>
const&,
77 std::vector<std::pair<BranchID, ThinnedAssociationBranches const*> >
const& associationToBranches,
78 std::set<BranchID>& branchesInRecursion,
79 std::set<BranchID>
const& keptProductsInEvent,
80 std::map<BranchID, bool>& keepAssociation)
const;
std::vector< ThinnedAssociationBranches > const & data() const
bool operator<(ThinnedAssociationBranches const &rhs) const
BranchID const & parent() const
ThinnedAssociationBranches()
static std::string const input
BranchID const & association() const
std::vector< ThinnedAssociationBranches > vThinnedAssociationBranches_
BranchID const & thinned() const