CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
EntryDescription.h
Go to the documentation of this file.
1 #ifndef DataFormats_Provenance_EntryDescription_h
2 #define DataFormats_Provenance_EntryDescription_h
3 
4 /*----------------------------------------------------------------------
5 
6 EntryDescription: The event dependent portion of the description of a product
7 and how it came into existence.
8 
9 ----------------------------------------------------------------------*/
10 #include <iosfwd>
11 #include <vector>
12 
15 
16 /*
17  EntryDescription
18 
19  definitions:
20  Product: The EDProduct to which a provenance object is associated
21 
22  Creator: The EDProducer that made the product.
23 
24  Parents: The EDProducts used as input by the creator.
25 */
26 
27 namespace edm {
29  public:
31 
33 
34  // Only the 'salient attributes' are encoded into the ID.
35  EntryDescriptionID id() const;
36 
37  void write(std::ostream& os) const;
38 
39  std::vector<ProductID> const& parents() const {return parents_;}
40  std::vector<ProductID> & parents() {return parents_;}
41 
42  private:
43  // The Branch IDs of the parents
44  std::vector<ProductID> parents_;
45 
46  // the last of these is not in the roadmap, but is on the board
47 
49 
50  };
51 
52  inline
53  std::ostream&
54  operator<<(std::ostream& os, EntryDescription const& p) {
55  p.write(os);
56  return os;
57  }
58 }
59 #endif
std::vector< ProductID > & parents()
void write(std::ostream &os) const
Hash< ModuleDescriptionType > moduleDescriptionID_
std::vector< ProductID > const & parents() const
std::vector< ProductID > parents_
EntryDescriptionID id() const
std::ostream & operator<<(std::ostream &ost, const HLTGlobalStatus &hlt)
Formatted printout of trigger tbale.