Fork me on GitHub

source: svn/trunk/modules/TreeWriter.h@ 1383

Last change on this file since 1383 was 1361, checked in by Pavel Demin, 11 years ago

add HectorHit class and corresponding ROOT tree branch

  • Property svn:keywords set to Id Revision Date
File size: 1.8 KB
Line 
1#ifndef TreeWriter_h
2#define TreeWriter_h
3
4/** \class TreeWriter
5 *
6 * Fills ROOT tree branches.
7 *
8 * $Date: 2014-04-08 16:43:52 +0000 (Tue, 08 Apr 2014) $
9 * $Revision: 1361 $
10 *
11 *
12 * \author P. Demin - UCL, Louvain-la-Neuve
13 *
14 */
15
16#include "classes/DelphesModule.h"
17
18#include <map>
19
20class TClass;
21class TObjArray;
22class TRefArray;
23
24class Candidate;
25class ExRootTreeBranch;
26
27class TreeWriter: public DelphesModule
28{
29public:
30
31 TreeWriter();
32 ~TreeWriter();
33
34 void Init();
35 void Process();
36 void Finish();
37
38private:
39
40 void FillParticles(Candidate *candidate, TRefArray *array);
41
42 void ProcessParticles(ExRootTreeBranch *branch, TObjArray *array);
43 void ProcessVertices(ExRootTreeBranch *branch, TObjArray *array);
44 void ProcessTracks(ExRootTreeBranch *branch, TObjArray *array);
45 void ProcessTowers(ExRootTreeBranch *branch, TObjArray *array);
46 void ProcessPhotons(ExRootTreeBranch *branch, TObjArray *array);
47 void ProcessElectrons(ExRootTreeBranch *branch, TObjArray *array);
48 void ProcessMuons(ExRootTreeBranch *branch, TObjArray *array);
49 void ProcessTauJets(ExRootTreeBranch *branch, TObjArray *array);
50 void ProcessJets(ExRootTreeBranch *branch, TObjArray *array);
51 void ProcessMissingET(ExRootTreeBranch *branch, TObjArray *array);
52 void ProcessScalarHT(ExRootTreeBranch *branch, TObjArray *array);
53 void ProcessRho(ExRootTreeBranch *branch, TObjArray *array);
54 void ProcessWeight(ExRootTreeBranch *branch, TObjArray *array);
55 void ProcessHectorHit(ExRootTreeBranch *branch, TObjArray *array);
56
57#ifndef __CINT__
58 typedef void (TreeWriter::*TProcessMethod)(ExRootTreeBranch *, TObjArray *); //!
59
60 typedef std::map< ExRootTreeBranch *, std::pair< TProcessMethod, TObjArray * > > TBranchMap; //!
61
62 TBranchMap fBranchMap; //!
63
64 std::map< TClass *, TProcessMethod > fClassMap; //!
65#endif
66
67 ClassDef(TreeWriter, 1)
68};
69
70#endif
Note: See TracBrowser for help on using the repository browser.