Import Geant4 11.2.0 source tree
This commit is contained in:
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user