CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ProductResolverBase.cc
Go to the documentation of this file.
1 /*----------------------------------------------------------------------
2 ----------------------------------------------------------------------*/
6 
9 
10 #include <cassert>
11 
12 namespace edm {
13 
15 
17 
19  // If this product is from a the current process,
20  // the provenance is available if and only if a product has been put.
21  if (branchDescription().produced()) {
22  return productResolved();
23  }
24  // If this product is from a prior process, the provenance is available,
25  // although the per event part may have been dropped.
26  return true;
27  }
28 
29  TypeID ProductResolverBase::productType() const { return TypeID(branchDescription().wrappedTypeID()); }
30 
32 
34 
36 
37  void ProductResolverBase::write(std::ostream& os) const {
38  // This is grossly inadequate. It is also not critical for the
39  // first pass.
40  os << std::string("ProductResolver for product with ID: ") << productID();
41  }
42 
44 
45 } // namespace edm
Provenance const * provenance() const
virtual void setupUnscheduled(UnscheduledConfigurator const &)
virtual Provenance const * provenance_() const =0
ProductID const & productID() const
virtual void setMergeableRunProductMetadata_(MergeableRunProductMetadata const *)
virtual void retrieveAndMerge_(Principal const &principal, MergeableRunProductMetadata const *mergeableRunProductMetadata) const
BranchDescription const & branchDescription() const
void write(std::ostream &os) const