LArSoft  v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
MetadataSummary.h
Go to the documentation of this file.
1 #ifndef art_Framework_Art_detail_MetadataSummary_h
2 #define art_Framework_Art_detail_MetadataSummary_h
3 
5 
6 #include <string>
7 #include <vector>
8 
9 namespace art {
10  namespace detail {
11  class LibraryInfo;
12 
13  template <art::suffix_type S>
15  }
16 }
17 
18 namespace art {
19  namespace detail {
20 
21  struct Summary {
22  std::string message;
24  };
25 
27  public:
28  std::string
29  header() const
30  {
31  return doHeader();
32  }
33  Summary
34  summary(LibraryInfo const& li, std::size_t const entry) const
35  {
36  return doSummary(li, entry);
37  }
38  std::vector<std::size_t> const&
39  widths() const
40  {
41  return doWidths();
42  }
43  virtual ~MetadataSummary() = default;
44 
45  private:
46  virtual std::string doHeader() const = 0;
47  virtual Summary doSummary(LibraryInfo const& li,
48  std::size_t entry) const = 0;
49  virtual std::vector<std::size_t> const& doWidths() const = 0;
50  };
51  }
52 }
53 
54 #endif /* art_Framework_Art_detail_MetadataSummary_h */
55 
56 // Local variables:
57 // mode: c++
58 // End:
std::string header() const
Summary summary(LibraryInfo const &li, std::size_t const entry) const
std::vector< std::size_t > const & widths() const
HLT enums.