35 #ifndef ExG4HbookAnalysisManager_h 36 #define ExG4HbookAnalysisManager_h 1 41 #include <tools/hbook/wfile> 42 #include <tools/hbook/h1> 43 #include <tools/hbook/h2> 44 #include <tools/hbook/p1> 45 #include <tools/hbook/wntuple> 50 #define setpawc setpawc_ 51 #define setntuc setntuc_ 54 class ExG4HbookAnalysisManager;
61 typedef tools::hbook::p1
G4P1;
62 typedef tools::hbook::wntuple
G4Ntuple;
66 class ExG4HbookFileManager;
67 class ExG4HbookH1Manager;
68 class ExG4HbookH2Manager;
70 class ExG4HbookP1Manager;
72 class ExG4HbookNtupleManager;
83 ExG4HbookAnalysisManager();
84 virtual ~ExG4HbookAnalysisManager();
87 static ExG4HbookAnalysisManager* Create(
G4bool isMaster =
true);
88 static ExG4HbookAnalysisManager* Instance();
98 G4int GetH1HbookIdOffset()
const;
104 G4int GetH2HbookIdOffset()
const;
110 G4int GetP1HbookIdOffset()
const;
115 G4int GetNtupleHbookIdOffset()
const;
120 G4bool onlyIfActive =
true)
const;
122 G4bool onlyIfActive =
true)
const;
123 tools::hbook::p1* GetP1(
G4int id,
G4bool warn =
true,
124 G4bool onlyIfActive =
true)
const;
125 tools::hbook::wntuple* GetNtuple()
const;
126 tools::hbook::wntuple* GetNtuple(
G4int ntupleId)
const;
129 std::vector<tools::hbook::h1*>::iterator BeginH1();
130 std::vector<tools::hbook::h1*>::iterator EndH1();
131 std::vector<tools::hbook::h1*>::const_iterator BeginConstH1()
const;
132 std::vector<tools::hbook::h1*>::const_iterator EndConstH1()
const;
134 std::vector<tools::hbook::h2*>::iterator BeginH2();
135 std::vector<tools::hbook::h2*>::iterator EndH2();
136 std::vector<tools::hbook::h2*>::const_iterator BeginConstH2()
const;
137 std::vector<tools::hbook::h2*>::const_iterator EndConstH2()
const;
139 std::vector<tools::hbook::p1*>::iterator BeginP1();
140 std::vector<tools::hbook::p1*>::iterator EndP1();
141 std::vector<tools::hbook::p1*>::const_iterator BeginConstP1()
const;
142 std::vector<tools::hbook::p1*>::const_iterator EndConstP1()
const;
144 std::vector<tools::hbook::wntuple*>::iterator BeginNtuple();
145 std::vector<tools::hbook::wntuple*>::iterator EndNtuple();
146 std::vector<tools::hbook::wntuple*>::const_iterator BeginConstNtuple()
const;
147 std::vector<tools::hbook::wntuple*>::const_iterator EndConstNtuple()
const;
152 virtual G4bool WriteImpl();
153 virtual G4bool CloseFileImpl();
154 virtual G4bool PlotImpl();
155 virtual G4bool MergeImpl(tools::histo::hmpi* hmpi);
156 virtual G4bool IsOpenFileImpl()
const;
161 static ExG4HbookAnalysisManager* fgInstance;
167 ExG4HbookH1Manager* fH1Manager;
168 ExG4HbookH2Manager* fH2Manager;
170 ExG4HbookP1Manager* fP1Manager;
172 ExG4HbookNtupleManager* fNtupleManager;
173 std::shared_ptr<ExG4HbookFileManager> fFileManager;
176 #include "ExG4HbookAnalysisManager.icc"
tools::hbook::wntuple G4Ntuple
ExG4HbookAnalysisManager G4AnalysisManager
ntupleExperimental Reset()