Import Geant4 11.2.0 source tree

This commit is contained in:
Gabriele Cosmo
2023-12-08 10:43:34 +01:00
parent dd1f179cda
commit 860a2b92bf
3962 changed files with 139318 additions and 164259 deletions
@@ -48,13 +48,16 @@ G4bool G4RootHnFileManager<HT>::WriteExtra(
{
auto result = true;
// // create a new file
// create a new file
auto rfile = new tools::wroot::file(G4cout, fileName);
// TO DO
// rfile->add_ziper('Z', toolx::compress_buffer);
// rfile->set_compression(fState.GetCompressionLevel());
// return if creating file failed
if (rfile == nullptr) return false;
// add compression
rfile->add_ziper('Z', toolx::compress_buffer);
rfile->set_compression(fFileManager->GetCompressionLevel());
// no directory supported in this mode
auto hdirectory = &(rfile->dir());
if (hdirectory == nullptr) return false;
@@ -65,11 +68,16 @@ G4bool G4RootHnFileManager<HT>::WriteExtra(
// write file
unsigned int n;
result &= rfile->write(n);
if ( ! result) {
G4Analysis::Warn(
"Saving " + G4Analysis::GetHnType<HT>() + " " + htName + " failed",
fkClass, "WriteExtra");
return false;
}
// close file
rfile->close();
return result;
return true;
}
//_____________________________________________________________________________
@@ -75,6 +75,7 @@ class G4RootMainNtupleManager : public G4BaseAnalysisManager
protected:
// Methods to manipulate ntuples
void CreateNtuple(RootNtupleDescription* ntupleDescription, G4bool warn = true);
G4bool Delete(G4int id);
G4bool Merge();
G4bool Reset();
void ClearData();
@@ -97,6 +98,10 @@ class G4RootMainNtupleManager : public G4BaseAnalysisManager
// Static data members
static constexpr std::string_view fkClass { "G4RootMainNtupleManager" };
// Methods
G4int CreateNtupleFromBooking(G4NtupleBooking* ntupleBooking,
std::shared_ptr<G4RootFile> ntupleFile);
// Data members
G4RootNtupleManager* fNtupleBuilder { nullptr };
std::shared_ptr<G4NtupleBookingManager> fBookingManager { nullptr };
@@ -78,6 +78,7 @@ class G4RootNtupleManager : public G4TNtupleManager<tools::wroot::ntuple,
void FinishTNtuple(RootNtupleDescription* ntupleDescription, G4bool fromBooking) final;
G4bool Reset() final;
void Clear() final;
G4bool Delete(G4int id) final;
virtual G4bool Merge();
// Set functions
@@ -125,6 +125,9 @@ class G4RootPNtupleManager : public G4BaseNtupleManager
virtual G4bool Reset();
void Clear() final;
// Method to delete selected ntuple
G4bool Delete(G4int id) final;
// Activation option
//
void SetActivation(G4bool activation) final;
@@ -135,15 +138,9 @@ class G4RootPNtupleManager : public G4BaseNtupleManager
void SetNewCycle(G4bool value) final;
G4bool GetNewCycle() const final;
// Access methods
G4int GetNofNtuples() const final;
// Set methods
void SetNtupleRowWise(G4bool rowWise, G4bool rowMode);
// List ntuples
G4bool List(std::ostream& output, G4bool onlyIfActive = true) final;
private:
G4RootPNtupleDescription*
GetNtupleDescriptionInFunction(G4int id, std::string_view function, G4bool warn = true) const;