Import Geant4 10.5.0 source tree

This commit is contained in:
Gabriele Cosmo
2018-12-07 15:15:39 +01:00
parent 6aa23be517
commit db49709b53
11370 changed files with 187480 additions and 160142 deletions
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4RootAnalysisManager.hh 106985 2017-10-31 10:07:18Z gcosmo $
// The main manager for Root analysis.
// It delegates most of functions to the object specific managers.
@@ -60,6 +59,8 @@ enum class G4NtupleMergeMode {
class G4RootAnalysisManager : public G4ToolsAnalysisManager
{
friend class G4RootMpiAnalysisManager;
public:
explicit G4RootAnalysisManager(G4bool isMaster = true);
virtual ~G4RootAnalysisManager();
@@ -81,15 +82,19 @@ class G4RootAnalysisManager : public G4ToolsAnalysisManager
// MT/MPI
void SetNtupleMerging(G4bool mergeNtuples,
G4int nofReducedNtupleFiles = 0,
G4bool rowWise = 0,
G4bool rowWise = true,
unsigned int basketSize = fgkDefaultBasketSize);
void SetNtupleRowWise(G4bool rowWise);
protected:
// virtual methods from base class
virtual G4bool OpenFileImpl(const G4String& fileName) final;
virtual G4bool OpenFileImpl(const G4String& fileName) override;
virtual G4bool WriteImpl() final;
virtual G4bool CloseFileImpl() final;
virtual G4bool CloseFileImpl(G4bool reset) override;
virtual G4bool IsOpenFileImpl() const final;
// virtual functions (overriden in MPI implementation)
virtual G4bool WriteNtuple();
virtual G4bool Reset();
private:
// constants
@@ -100,10 +105,13 @@ class G4RootAnalysisManager : public G4ToolsAnalysisManager
static G4ThreadLocal G4RootAnalysisManager* fgInstance;
// methods
void SetNtupleMergingMode(G4bool mergeNtuples, G4int nofNtupleFiles);
void SetNtupleMergingMode(G4bool mergeNtuples,
G4int nofNtupleFiles,
G4bool rowWise);
void ClearNtupleManagers();
void CreateNtupleManagers();
G4int GetNtupleFileNumber();
G4bool ResetNtuple();
template <typename T>
G4bool WriteT(const std::vector<T*>& htVector,
@@ -115,8 +123,6 @@ class G4RootAnalysisManager : public G4ToolsAnalysisManager
G4bool WriteH3();
G4bool WriteP1();
G4bool WriteP2();
G4bool WriteNtuple();
G4bool Reset();
// data members
G4int fNofNtupleFiles;
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4RootAnalysisManager.hh 70604 2013-06-03 11:27:06Z ihrivnac $
#include "G4RootNtupleManager.hh"
#include "G4RootFileManager.hh"
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4RootAnalysisReader.hh 74257 2013-10-02 14:24:55Z gcosmo $
// The main manager for Root analysis reader.
// It delegates most of functions to the object specific managers.
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4RootAnalysisReader.hh 70604 2013-06-03 11:27:06Z ihrivnac $
#include "G4RootRNtupleManager.hh"
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4RootFileManager.hh 70604 2013-06-03 11:27:06Z ihrivnac $
// The manager for Root output file operations.
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id:$
// Class for Root main ntuple management.
//
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4RootNtupleManager.hh 70604 2013-06-03 11:27:06Z ihrivnac $
// Manager class for Root ntuples.
// It implements functions specific to Root ntuples.
@@ -67,11 +66,13 @@ class G4RootNtupleManager : public G4TNtupleManager<tools::wroot::ntuple>
{
friend class G4RootAnalysisManager;
friend class G4RootMainNtupleManager;
friend class G4RootMpiAnalysisManager;
friend class G4RootMpiNtupleManager;
public:
explicit G4RootNtupleManager(const G4AnalysisManagerState& state,
G4int nofMainManagers = 0,
G4bool rowWise = true);
explicit G4RootNtupleManager(const G4AnalysisManagerState& state,
G4int nofMainManagers,
G4bool rowWise);
virtual ~G4RootNtupleManager();
private:
@@ -93,13 +94,14 @@ class G4RootNtupleManager : public G4TNtupleManager<tools::wroot::ntuple>
NtupleDescriptionType* ntupleDescription) final;
virtual void FinishTNtuple(
NtupleDescriptionType* ntupleDescription) final;
NtupleDescriptionType* ntupleDescription,
G4bool fromBooking) final;
virtual G4bool Reset(G4bool deleteNtuple);
// Method for merging
//
G4bool Merge();
virtual G4bool Merge();
// Access functions
//
@@ -117,6 +119,7 @@ class G4RootNtupleManager : public G4TNtupleManager<tools::wroot::ntuple>
std::shared_ptr<G4RootFileManager> fFileManager;
tools::wroot::directory* fNtupleDirectory;
std::vector<G4RootMainNtupleManager*> fMainNtupleManagers;
G4bool fRowWise;
};
// inline functions
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id$
// Structure containing the information related to Root pntuple.
//
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id:$
// Class for Root pntuple management.
//
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4RootRFileManager.hh 70604 2013-06-03 11:27:06Z ihrivnac $
// The manager for Root file input operations.
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4RootRNtupleManager.hh 70604 2013-06-03 11:27:06Z ihrivnac $
// Manager class for Root read ntuples.
// It implements functions specific to Root read ntuples.
-1
View File
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: g4root.hh 72292 2013-07-15 12:01:43Z ihrivnac $
// Author: Ivana Hrivnacova, 15/06/2011 (ivana@ipno.in2p3.fr)
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: g4root_defs.hh 92688 2015-09-14 07:01:13Z gcosmo $
// Author: Ivana Hrivnacova, 15/06/2011 (ivana@ipno.in2p3.fr)