LArSoft  v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
RootBranchInfoList.h
Go to the documentation of this file.
1 #ifndef art_Framework_IO_Root_RootBranchInfoList_h
2 #define art_Framework_IO_Root_RootBranchInfoList_h
3 
5 #include "art/Utilities/fwd.h"
7 
8 #include <vector>
9 
10 #include "TTree.h"
11 
12 namespace art {
13  class RootBranchInfoList;
14 }
15 
17 public:
19  explicit RootBranchInfoList(TTree* tree);
20  void reset(TTree* tree);
21 
22  template <class PROD>
23  bool findBranchInfo(InputTag const& tag, RootBranchInfo& rbInfo) const;
24 
25  bool findBranchInfo(TypeID const& type,
26  InputTag const& tag,
27  RootBranchInfo& rbInfo) const;
28 
29 private:
30  std::vector<RootBranchInfo> data_;
31 };
32 
33 template <class PROD>
34 bool
36  RootBranchInfo& rbInfo) const
37 {
38  return findBranchInfo(TypeID{typeid(PROD)}, tag, rbInfo);
39 }
40 
41 #endif /* art_Framework_IO_Root_RootBranchInfoList_h */
42 
43 // Local Variables:
44 // mode: c++
45 // End:
bool findBranchInfo(InputTag const &tag, RootBranchInfo &rbInfo) const
std::vector< RootBranchInfo > data_
HLT enums.