TreeWriter.hh
Go to the documentation of this file.
1 # pragma once
2 
3 #include <list>
4 
5 #include "TTree.h"
6 
7 #include "boca/io/TreeBranch.hh"
8 
9 class TFile;
10 
11 namespace boca
12 {
13 
15 {
16 
17 public:
18 
19  TreeWriter(TFile& file, std::string const& tree_name = "Analysis");
20 
21  TreeBranch& NewBranch(std::string const& name, TClass& cl);
22 
23  template<typename Branch_>
25  return NewBranch(name, *Branch_::Class());
26  }
27 
28  void Fill();
29 
30  void Write();
31 
32 private:
33 
34  void SetTree();
35 
36  TFile* file_;
37 
38  TTree tree_;
39 
40  std::list<TreeBranch> branches_;
41 
42 };
43 
44 }
void Fill()
Definition: TreeWriter.cpp:34
void Write()
Definition: TreeWriter.cpp:41
Definition: TreeBranch.hh:12
TreeBranch & NewBranch(std::string const &name, TClass &cl)
Definition: TreeWriter.cpp:27
TreeBranch & NewBranch(std::string const &name)
Definition: TreeWriter.hh:24
Definition: TreeWriter.hh:14
Boosted Collider Analysis.
Definition: Analysis.hh:15
TreeWriter(TFile &file, std::string const &tree_name="Analysis")
Definition: TreeWriter.cpp:10