CMS 3D CMS Logo

ProductResolverBase.cc
Go to the documentation of this file.
1 /*----------------------------------------------------------------------
2 ----------------------------------------------------------------------*/
6 
9 
10 #include <cassert>
11 
12 namespace edm {
13 
15 
17 
18  bool
20  // If this product is from a the current process,
21  // the provenance is available if and only if a product has been put.
22  if(branchDescription().produced()) {
23  return productResolved();
24  }
25  // If this product is from a prior process, the provenance is available,
26  // although the per event part may have been dropped.
27  return true;
28  }
29 
30  TypeID
32  return TypeID(branchDescription().wrappedTypeID());
33  }
34 
35  Provenance const*
37  return provenance_();
38  }
39 
40  void
42  }
43 
44  void
46  }
47 
48  void
49  ProductResolverBase::write(std::ostream& os) const {
50  // This is grossly inadequate. It is also not critical for the
51  // first pass.
52  os << std::string("ProductResolver for product with ID: ")
53  << productID();
54  }
55 
56  void
58 
59 }
Provenance const * provenance() const
virtual void setupUnscheduled(UnscheduledConfigurator const &)
ProductID const & productID() const
virtual void setMergeableRunProductMetadata_(MergeableRunProductMetadata const *)
virtual void retrieveAndMerge_(Principal const &principal, MergeableRunProductMetadata const *mergeableRunProductMetadata) const
HLT enums.
BranchDescription const & branchDescription() const
virtual Provenance const * provenance_() const =0
void write(std::ostream &os) const