CMS 3D CMS Logo

SubProcessParentageHelper.h
Go to the documentation of this file.
1 #ifndef DataFormats_Provenance_SubProcessParentageHelper_h
2 #define DataFormats_Provenance_SubProcessParentageHelper_h
3 
4 // This class is used to properly fill Parentage in SubProcesses.
5 // In particular it helps filling the BranchChildren container
6 // that is used when dropping descendants of products that
7 // have been dropped on input.
8 //
9 // This class is only filled for SubProcesses. Its data member
10 // only has entries for products produced in a prior SubProcess
11 // or the top level Process in the same overall process.
12 
14 
15 #include <vector>
16 
17 namespace edm {
18 
19  class ProductRegistry;
20 
22  public:
23 
24  void update(SubProcessParentageHelper const& parentSubProcessParentageHelper,
25  ProductRegistry const& parentProductRegistry);
26 
27  std::vector<BranchID> const& producedProducts() const {
28  return producedProducts_;
29  }
30 
31  private:
32 
33  std::vector<BranchID> producedProducts_;
34  };
35 }
36 #endif
std::vector< BranchID > const & producedProducts() const
void update(SubProcessParentageHelper const &parentSubProcessParentageHelper, ProductRegistry const &parentProductRegistry)
std::vector< BranchID > producedProducts_
HLT enums.