Import Geant4 11.0.0 source tree

This commit is contained in:
Gabriele Cosmo
2021-12-10 14:46:44 +01:00
committed by Ben Morgan
parent 6399a014b6
commit 80e2389dd8
3932 changed files with 202519 additions and 246221 deletions
@@ -26,7 +26,7 @@
// Class for management of G4HnInformation.
// It implements functions handling the added H1/H2 information
// (not available in g4tools).
// (not available in g4tools).
//
// Author: Ivana Hrivnacova, 18/06/2013 (ivana@ipno.in2p3.fr)
@@ -38,6 +38,7 @@
#include "globals.hh"
#include <vector>
#include <string_view>
class G4VFileManager;
@@ -46,20 +47,23 @@ class G4HnManager : public G4BaseAnalysisManager
public:
G4HnManager(const G4String& hnType,
const G4AnalysisManagerState& state);
G4HnManager() = delete;
virtual ~G4HnManager();
// Methods to manipulate additional information
G4HnInformation* AddHnInformation(const G4String& name, G4int nofDimensions);
// Access methofd
void ClearData();
// Access methofd
G4HnInformation* GetHnInformation(G4int id,
G4String functionName = "",
std::string_view functionName,
G4bool warn = true) const;
G4HnDimensionInformation* GetHnDimensionInformation(G4int id,
G4int dimension,
G4String functionName = "",
std::string_view functionName,
G4bool warn = true) const;
const std::vector<G4HnInformation*>& GetHnVector() const;
@@ -77,7 +81,7 @@ class G4HnManager : public G4BaseAnalysisManager
// Return false if there is no object selected for ASCII output,
// return true otherwise
G4bool IsAscii() const;
// Plotting option
// Return false if there is no object selected for plotting,
@@ -122,16 +126,19 @@ class G4HnManager : public G4BaseAnalysisManager
void SetPlotting(G4HnInformation* info, G4bool plotting);
void SetFileName(G4HnInformation* info, const G4String& fileName);
// Static data members
static constexpr std::string_view fkClass { "G4HnManager" };
// Data members
G4String fHnType;
G4int fNofActiveObjects;
G4int fNofAsciiObjects;
G4int fNofPlottingObjects;
G4int fNofFileNameObjects;
G4int fNofActiveObjects { 0 };
G4int fNofAsciiObjects { 0 };
G4int fNofPlottingObjects { 0 };
G4int fNofFileNameObjects { 0 };
// Additional histograms/ntuple properties not included in tools
std::vector<G4HnInformation*> fHnVector;
std::shared_ptr<G4VFileManager> fFileManager;
std::shared_ptr<G4VFileManager> fFileManager { nullptr };
};
inline G4int G4HnManager::GetNofHns() const