Import Geant4 11.1.0 source tree

This commit is contained in:
Gabriele Cosmo
2022-12-09 14:43:28 +01:00
parent c07cea1fe0
commit 9f34590941
3810 changed files with 200490 additions and 182326 deletions
+25 -26
View File
@@ -59,7 +59,7 @@ tools::wroot::directory* G4RootFileManager::CreateDirectory(
tools::wroot::file* rfile,
const G4String& directoryName, [[maybe_unused]] const G4String& objectType) const
{
if ( ! rfile ) return nullptr;
if (rfile == nullptr) return nullptr;
if ( directoryName == "" ) {
// Do not create a new directory if its name is not set
@@ -69,13 +69,11 @@ tools::wroot::directory* G4RootFileManager::CreateDirectory(
Message(kVL4, "create", "directory for " + objectType, directoryName);
auto directory = rfile->dir().mkdir(directoryName);
if ( ! directory ) {
if (directory == nullptr) {
Warn("Cannot create directory " + directoryName, fkClass, "CreateDirectory");
return nullptr;
}
else {
Message(kVL2, "create", "directory for " + objectType, directoryName);
}
Message(kVL2, "create", "directory for " + objectType, directoryName);
return directory;
}
@@ -88,12 +86,13 @@ G4String G4RootFileManager::GetNtupleFileName(
{
// get ntuple file name
auto ntupleFileName = ntupleDescription->fFileName;
if ( ntupleFileName.size() ) {
auto ntupleFileName = ntupleDescription->GetFileName();
if (ntupleFileName.size() != 0u) {
if ( perThread ) {
ntupleFileName = GetTnFileName(ntupleFileName, GetFileType());
}
} else {
}
else {
// get default file name
ntupleFileName = GetFullFileName(fFileName, perThread);
}
@@ -129,7 +128,7 @@ G4RootFileManager::CreateFileImpl(const G4String& fileName)
// create histo directory
tools::wroot::directory* hdirectory
= CreateDirectory(file.get(), fHistoDirectoryName, "histograms");
if ( ! hdirectory ) {
if (hdirectory == nullptr) {
// Warning is issued in CreateDirectory
return std::make_shared<G4RootFile>(nullptr, nullptr, nullptr);
}
@@ -137,7 +136,7 @@ G4RootFileManager::CreateFileImpl(const G4String& fileName)
// create ntuple directory
tools::wroot::directory* ndirectory
= CreateDirectory(file.get(), fNtupleDirectoryName, "ntuples");
if ( ! ndirectory ) {
if (ndirectory == nullptr) {
// Warning is issued in CreateDirectory
return std::make_shared<G4RootFile>(nullptr, nullptr, nullptr);
}
@@ -150,10 +149,9 @@ G4bool G4RootFileManager::WriteFileImpl(std::shared_ptr<G4RootFile> file)
{
// New prototype: called by G4TFileManager base classe
if ( ! file ) return false;
// nothing to be done, but file should exist
return (file == nullptr) ? false : true;
unsigned int n;
return std::get<0>(*file)->write(n);
}
//_____________________________________________________________________________
@@ -161,7 +159,11 @@ G4bool G4RootFileManager::CloseFileImpl(std::shared_ptr<G4RootFile> file)
{
// New prototype: called by G4TFileManager base classe
if ( ! file ) return false;
if (file == nullptr) return false;
// write file (only once)
unsigned int n;
std::get<0>(*file)->write(n);
// close file
std::get<0>(*file)->close();
@@ -215,7 +217,7 @@ std::shared_ptr<G4RootFile> G4RootFileManager::CreateNtupleFile(
// register file in ntuple description only if it is not main ntuple file
// (main ntuple files are managed in main ntuple manager)
if ( mainNumber == -1 ) {
ntupleDescription->fFile = file;
ntupleDescription->SetFile(file);
}
return file;
@@ -233,19 +235,16 @@ std::shared_ptr<G4RootFile> G4RootFileManager::GetNtupleFile(
//_____________________________________________________________________________
G4bool G4RootFileManager::CloseNtupleFile(
RootNtupleDescription* ntupleDescription)
RootNtupleDescription* ntupleDescription, G4int mainNumber)
{
auto result = true;
// auto result = true;
if ( ntupleDescription->fFile ) {
// Ntuple files are registered in file manager map.
// they will be closed with CloseFiles() calls
ntupleDescription->fFile.reset();
// Notify not empty file
auto ntupleFileName = GetNtupleFileName(ntupleDescription);
result &= SetIsEmpty(ntupleFileName, ! ntupleDescription->fHasFill);
}
// Notify not empty file
auto ntupleFileName = GetNtupleFileName(ntupleDescription, true, mainNumber);
auto result = SetIsEmpty(ntupleFileName, ! ntupleDescription->GetHasFill());
// Ntuple files will be closed with CloseFiles() calls
ntupleDescription->GetFile().reset();
return result;
}