48 : fState(type, isMaster),
49 fVFileManager(nullptr),
51 fH1HnManager(nullptr),
52 fH2HnManager(nullptr),
53 fH3HnManager(nullptr),
54 fP1HnManager(nullptr),
55 fP2HnManager(nullptr),
61 fVNtupleManager(nullptr)
129 G4bool finalResult =
true;
133 if ( name.find(
".") != std::string::npos ) {
134 name.erase(name.find(
"."), name.length());
143 std::ofstream output(name, std::ios::out);
147 <<
"Cannot open file. File name is not defined.";
152 output.setf( std::ios::scientific, std::ios::floatfield );
155 finalResult = finalResult && result;
158 finalResult = finalResult && result;
161 finalResult = finalResult && result;
184 if ( fileName !=
"" ) {
191 <<
"Cannot open file. File name is not defined.";
203 G4bool finalResult =
true;
206 finalResult = finalResult && result;
210 finalResult = finalResult && result;
298 return fVH1Manager->CreateH1(name, title, nbins, xmin, xmax,
299 unitName, fcnName, binSchemeName);
304 const std::vector<G4double>& edges,
310 return fVH1Manager->CreateH1(name, title, edges, unitName, fcnName);
332 nxbins, xmin, xmax, nybins, ymin, ymax,
333 xunitName, yunitName, xfcnName, yfcnName,
334 xbinSchemeName, ybinSchemeName);
339 const std::vector<G4double>& xedges,
340 const std::vector<G4double>& yedges,
352 xunitName, yunitName, xfcnName, yfcnName);
381 nxbins, xmin, xmax, nybins, ymin, ymax,
383 xunitName, yunitName, zunitName,
384 xfcnName, yfcnName, zfcnName,
385 xbinSchemeName, ybinSchemeName, zbinSchemeName);
390 const std::vector<G4double>& xedges,
391 const std::vector<G4double>& yedges,
392 const std::vector<G4double>& zedges,
406 xedges, yedges, zedges,
407 xunitName, yunitName, zunitName,
408 xfcnName, yfcnName, zfcnName);
420 return fVH1Manager->SetH1(
id, nbins, xmin, xmax, unitName, fcnName, binSchemeName);
425 const std::vector<G4double>& edges,
430 return fVH1Manager->SetH1(
id, edges, unitName, fcnName);
448 return fVH2Manager->SetH2(
id, nxbins, xmin, xmax, nybins, ymin, ymax,
449 xunitName, yunitName, xfcnName, yfcnName,
450 xbinSchemeName, ybinSchemeName);
455 const std::vector<G4double>& xedges,
456 const std::vector<G4double>& yedges,
464 xunitName, yunitName, xfcnName, yfcnName);
490 nxbins, xmin, xmax, nybins, ymin, ymax,
492 xunitName, yunitName, zunitName,
493 xfcnName, yfcnName, zfcnName,
494 xbinSchemeName, ybinSchemeName, zbinSchemeName);
499 const std::vector<G4double>& xedges,
500 const std::vector<G4double>& yedges,
501 const std::vector<G4double>& zedges,
511 return fVH3Manager->SetH3(
id, xedges, yedges, zedges,
512 xunitName, yunitName, zunitName,
513 xfcnName, yfcnName, zfcnName);
547 return fVP1Manager->CreateP1(name, title, nbins, xmin, xmax, ymin, ymax,
548 xunitName, yunitName, xfcnName, yfcnName,
554 const std::vector<G4double>& edges,
562 return fVP1Manager->CreateP1(name, title, edges, ymin, ymax,
563 xunitName, yunitName, xfcnName, yfcnName);
585 nxbins, xmin, xmax, nybins, ymin, ymax,
587 xunitName, yunitName, zunitName,
588 xfcnName, yfcnName, zfcnName,
589 xbinSchemeName, ybinSchemeName);
594 const std::vector<G4double>& xedges,
595 const std::vector<G4double>& yedges,
606 return fVP2Manager->CreateP2(name, title, xedges, yedges, zmin, zmax,
607 xunitName, yunitName, zunitName,
608 xfcnName, yfcnName, zfcnName);
622 return fVP1Manager->SetP1(
id, nbins, xmin, xmax, ymin, ymax,
623 xunitName, yunitName, xfcnName, yfcnName,
629 const std::vector<G4double>& edges,
637 xunitName, yunitName, xfcnName, yfcnName);
657 return fVP2Manager->SetP2(
id, nxbins, xmin, xmax, nybins, ymin, ymax,
659 xunitName, yunitName, zunitName,
660 xfcnName, yfcnName, zfcnName,
661 xbinSchemeName, ybinSchemeName);
666 const std::vector<G4double>& xedges,
667 const std::vector<G4double>& yedges,
679 return fVP2Manager->SetP2(
id, xedges, yedges, zmin, zmax,
680 xunitName, yunitName, zunitName,
681 xfcnName, yfcnName, zfcnName);
739 std::vector<int>& vector)
748 std::vector<float>& vector)
757 std::vector<double>& vector)
810 std::vector<int>& vector)
820 std::vector<float>& vector)
830 std::vector<double>& vector)
846 G4bool finalResult =
true;
849 finalResult = finalResult && result;
852 finalResult = finalResult && result;
855 finalResult = finalResult && result;
881 G4bool finalResult =
true;
884 finalResult = finalResult && result;
887 finalResult = finalResult && result;
G4int CreateH3(const G4String &name, const G4String &title, G4int nxbins, G4double xmin, G4double xmax, G4int nybins, G4double ymin, G4double ymax, G4int nzbins, G4double zmin, G4double zmax, const G4String &xunitName="none", const G4String &yunitName="none", const G4String &zunitName="none", const G4String &xfcnName="none", const G4String &yfcnName="none", const G4String &zfcnName="none", const G4String &xbinSchemeName="linear", const G4String &ybinSchemeName="linear", const G4String &zbinSchemeName="linear")
void SetP1Manager(G4VP1Manager *p1Manager)
G4bool SetHistoDirectoryName(const G4String &dirName)
void Message(const G4String &action, const G4String &object, const G4String &objectName, G4bool success=true) const
void SetH2Ascii(G4int id, G4bool ascii)
G4String GetNtupleDirectoryName() const
std::unique_ptr< T > make_unique(Args &&...args)
void SetH3Plotting(G4int id, G4bool plotting)
G4int CreateNtupleIColumn(const G4String &name)
G4int GetCompressionLevel() const
G4bool SetFirstHistoId(G4int firstId)
virtual G4bool MergeImpl(tools::histo::hmpi *hmpi)=0
void SetCompressionLevel(G4int level)
std::ostringstream G4ExceptionDescription
G4int CreateH1(const G4String &name, const G4String &title, G4int nbins, G4double xmin, G4double xmax, const G4String &unitName="none", const G4String &fcnName="none", const G4String &binSchemeName="linear")
void SetCompressionLevel(G4int level)
G4bool ScaleH1(G4int id, G4double factor)
G4bool ScaleH2(G4int id, G4double factor)
void SetH1Manager(G4VH1Manager *h1Manager)
void SetP2Activation(G4bool activation)
virtual G4bool WriteImpl()=0
void SetVerboseLevel(G4int verboseLevel)
std::unique_ptr< G4VNtupleManager > fVNtupleManager
void SetH2Plotting(G4int id, G4bool plotting)
void SetH2Activation(G4bool activation)
G4int CreateNtuple(const G4String &name, const G4String &title)
G4int GetFirstP2Id() const
G4int CreateP1(const G4String &name, const G4String &title, G4int nbins, G4double xmin, G4double xmax, G4double ymin=0, G4double ymax=0, const G4String &xunitName="none", const G4String &yunitName="none", const G4String &xfcnName="none", const G4String &yfcnName="none", const G4String &xbinSchemeName="linear")
G4int GetFirstH2Id() const
std::unique_ptr< G4VP2Manager > fVP2Manager
G4int GetFirstH1Id() const
G4bool SetFileName(const G4String &fileName)
G4bool ScaleH3(G4int id, G4double factor)
virtual std::shared_ptr< G4HnManager > GetHnManager()=0
G4int CreateNtupleSColumn(const G4String &name)
G4bool SetNtupleDirectoryName(const G4String &dirName)
G4int GetFirstP1Id() const
void SetP1Activation(G4bool activation)
G4bool SetH3(G4int id, G4int nxbins, G4double xmin, G4double xmax, G4int nzbins, G4double zmin, G4double zmax, G4int nybins, G4double ymin, G4double ymax, const G4String &xunitName="none", const G4String &yunitName="none", const G4String &zunitName="none", const G4String &xfcnName="none", const G4String &yfcnName="none", const G4String &zfcnName="none", const G4String &xbinSchemeName="linear", const G4String &ybinSchemeName="linear", const G4String &zbinSchemeName="linear")
G4int GetFirstNtupleColumnId() const
G4bool OpenFile(const G4String &fileName="")
void SetH3Manager(G4VH3Manager *h3Manager)
G4bool SetFirstH1Id(G4int firstId)
G4VAnalysisManager(const G4String &type, G4bool isMaster)
std::shared_ptr< G4HnManager > fH1HnManager
void SetH3Ascii(G4int id, G4bool ascii)
G4bool SetFirstProfileId(G4int firstId)
virtual G4bool PlotImpl()=0
const G4AnalysisVerbose * GetVerboseL3() const
virtual std::shared_ptr< G4HnManager > GetHnManager()=0
std::unique_ptr< G4VH2Manager > fVH2Manager
void SetH1Ascii(G4int id, G4bool ascii)
G4bool SetP1(G4int id, G4int nbins, G4double xmin, G4double xmax, G4double ymin=0, G4double ymax=0, const G4String &xunitName="none", const G4String &yunitName="none", const G4String &xfcnName="none", const G4String &yfcnName="none", const G4String &xbinSchemeName="linear")
void SetP2Manager(G4VP2Manager *p2Manager)
virtual std::shared_ptr< G4HnManager > GetHnManager()=0
G4bool CheckName(const G4String &name, const G4String &objectType)
G4int GetNofNtuples() const
std::shared_ptr< G4VFileManager > fVFileManager
virtual G4bool OpenFileImpl(const G4String &fileName)=0
void SetIsActivation(G4bool isActivation)
G4int GetFirstH3Id() const
G4bool SetFirstP1Id(G4int firstId)
virtual G4bool IsOpenFileImpl() const =0
std::unique_ptr< G4VH1Manager > fVH1Manager
virtual std::shared_ptr< G4HnManager > GetHnManager()=0
G4bool SetH1(G4int id, G4int nbins, G4double xmin, G4double xmax, const G4String &unitName="none", const G4String &fcnName="none", const G4String &binSchemeName="linear")
G4String GetFileName() const
std::shared_ptr< G4HnManager > fP2HnManager
G4bool ScaleP2(G4int id, G4double factor)
std::unique_ptr< G4VP1Manager > fVP1Manager
G4String GetHistoDirectoryName() const
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
G4bool SetH2(G4int id, G4int nxbins, G4double xmin, G4double xmax, G4int nybins, G4double ymin, G4double ymax, const G4String &xunitName="none", const G4String &yunitName="none", const G4String &xfcnName="none", const G4String &yfcnName="none", const G4String &xbinSchemeName="linear", const G4String &ybinSchemeName="linear")
void SetFileManager(std::shared_ptr< G4VFileManager > fileManager)
void SetH2Manager(G4VH2Manager *h2Manager)
G4bool SetP2(G4int id, G4int nxbins, G4double xmin, G4double xmax, G4int nybins, G4double ymin, G4double ymax, G4double zmin=0, G4double zmax=0, const G4String &xunitName="none", const G4String &yunitName="none", const G4String &zunitName="none", const G4String &xfcnName="none", const G4String &yfcnName="none", const G4String &zfcnName="none", const G4String &xbinSchemeName="linear", const G4String &ybinSchemeName="linear")
G4bool SetFirstNtupleId(G4int firstId)
G4bool SetFirstH3Id(G4int firstId)
G4bool IsOpenFile() const
virtual ~G4VAnalysisManager()
G4bool SetFirstP2Id(G4int firstId)
static const G4double factor
std::shared_ptr< G4HnManager > fH3HnManager
std::unique_ptr< G4AnalysisMessenger > fMessenger
G4int CreateP2(const G4String &name, const G4String &title, G4int nxbins, G4double xmin, G4double xmax, G4int nybins, G4double ymin, G4double ymax, G4double zmin=0, G4double zmax=0, const G4String &xunitName="none", const G4String &yunitName="none", const G4String &zunitName="none", const G4String &xfcnName="none", const G4String &yfcnName="none", const G4String &zfcnName="none", const G4String &xbinSchemeName="linear", const G4String &ybinSchemeName="linear")
void SetH1Plotting(G4int id, G4bool plotting)
G4String & append(const G4String &)
void SetH1Activation(G4bool activation)
void SetActivation(G4bool activation)
void SetP2Ascii(G4int id, G4bool ascii)
G4int CreateNtupleFColumn(const G4String &name)
G4int GetCompressionLevel() const
void SetH3Activation(G4bool activation)
void SetP1Ascii(G4int id, G4bool ascii)
std::shared_ptr< G4HnManager > fP1HnManager
G4bool CheckNbins(G4int nbins)
G4bool SetFirstNtupleColumnId(G4int firstId)
G4bool SetFirstH2Id(G4int firstId)
G4int CreateNtupleDColumn(const G4String &name)
std::shared_ptr< G4HnManager > fH2HnManager
void SetNtupleActivation(G4bool activation)
void SetP1Plotting(G4int id, G4bool plotting)
G4AnalysisManagerState fState
void SetVerboseLevel(G4int verboseLevel)
void SetP2Plotting(G4int id, G4bool plotting)
std::unique_ptr< G4VH3Manager > fVH3Manager
virtual G4bool CloseFileImpl()=0
virtual std::shared_ptr< G4HnManager > GetHnManager()=0
G4int GetFirstNtupleId() const
G4bool GetIsActivation() const
const G4AnalysisVerbose * GetVerboseL1() const
void SetNtupleManager(G4VNtupleManager *ntupleManager)
G4bool CheckMinMax(G4double xmin, G4double xmax, const G4String &fcnName="none", const G4String &binSchemeName="linear")
G4int CreateH2(const G4String &name, const G4String &title, G4int nxbins, G4double xmin, G4double xmax, G4int nybins, G4double ymin, G4double ymax, const G4String &xunitName="none", const G4String &yunitName="none", const G4String &xfcnName="none", const G4String &yfcnName="none", const G4String &xbinSchemeName="linear", const G4String &ybinSchemeName="linear")
G4bool CheckEdges(const std::vector< G4double > &edges)
G4bool ScaleP1(G4int id, G4double factor)
G4bool WriteAscii(const G4String &fileName)
G4bool Merge(tools::histo::hmpi *hmpi)
G4bool IsPlotting() const