Geant4  10.02.p03
G4XmlNtupleManager Class Reference

#include <G4XmlNtupleManager.hh>

Inheritance diagram for G4XmlNtupleManager:
Collaboration diagram for G4XmlNtupleManager:

Public Member Functions

 G4XmlNtupleManager (const G4AnalysisManagerState &state)
 
 ~G4XmlNtupleManager ()
 
- Public Member Functions inherited from G4TNtupleManager< tools::waxml::ntuple >
 G4TNtupleManager (const G4AnalysisManagerState &state)
 
 ~G4TNtupleManager ()
 
- Public Member Functions inherited from G4VNtupleManager
 G4VNtupleManager (const G4AnalysisManagerState &state)
 
virtual ~G4VNtupleManager ()
 
 G4VNtupleManager (const G4VNtupleManager &rhs)=delete
 
G4VNtupleManageroperator= (const G4VNtupleManager &rhs)=delete
 
- Public Member Functions inherited from G4BaseAnalysisManager
 G4BaseAnalysisManager (const G4AnalysisManagerState &state)
 
virtual ~G4BaseAnalysisManager ()
 
G4bool SetFirstId (G4int firstId)
 
void SetLockFirstId (G4bool lockFirstId)
 
G4int GetFirstId () const
 

Private Types

using NtupleType = tools::waxml::ntuple
 
using NtupleDescriptionType = G4TNtupleDescription< NtupleType >
 

Private Member Functions

void SetFileManager (std::shared_ptr< G4XmlFileManager > fileManager)
 
const std::vector< NtupleDescriptionType * > & GetNtupleDescriptionVector () const
 
virtual void CreateTNtuple (NtupleDescriptionType *ntupleDescription, const G4String &name, const G4String &title) final
 
virtual void CreateTNtupleFromBooking (NtupleDescriptionType *ntupleDescription) final
 
virtual void FinishTNtuple (NtupleDescriptionType *ntupleDescription) final
 

Private Attributes

std::shared_ptr< G4XmlFileManagerfFileManager
 

Friends

class G4XmlAnalysisManager
 

Additional Inherited Members

- Protected Member Functions inherited from G4TNtupleManager< tools::waxml::ntuple >
void CreateNtuplesFromBooking ()
 
G4bool IsEmpty () const
 
G4bool Reset (G4bool deleteNtuple)
 
virtual G4int CreateNtuple (const G4String &name, const G4String &title) final
 
virtual G4int CreateNtupleIColumn (const G4String &name, std::vector< int > *vector) final
 
virtual G4int CreateNtupleIColumn (G4int ntupleId, const G4String &name, std::vector< int > *vector) final
 
virtual G4int CreateNtupleFColumn (const G4String &name, std::vector< float > *vector) final
 
virtual G4int CreateNtupleFColumn (G4int ntupleId, const G4String &name, std::vector< float > *vector) final
 
virtual G4int CreateNtupleDColumn (const G4String &name, std::vector< double > *vector) final
 
virtual G4int CreateNtupleDColumn (G4int ntupleId, const G4String &name, std::vector< double > *vector) final
 
virtual G4int CreateNtupleSColumn (const G4String &name) final
 
virtual G4int CreateNtupleSColumn (G4int ntupleId, const G4String &name) final
 
virtual void FinishNtuple () final
 
virtual void FinishNtuple (G4int ntupleId) final
 
virtual G4bool FillNtupleIColumn (G4int columnId, G4int value) final
 
virtual G4bool FillNtupleIColumn (G4int ntupleId, G4int columnId, G4int value) final
 
virtual G4bool FillNtupleFColumn (G4int columnId, G4float value) final
 
virtual G4bool FillNtupleFColumn (G4int ntupleId, G4int columnId, G4float value) final
 
virtual G4bool FillNtupleDColumn (G4int columnId, G4double value) final
 
virtual G4bool FillNtupleDColumn (G4int ntupleId, G4int columnId, G4double value) final
 
virtual G4bool FillNtupleSColumn (G4int columnId, const G4String &value) final
 
virtual G4bool FillNtupleSColumn (G4int ntupleId, G4int columnId, const G4String &value) final
 
virtual G4bool AddNtupleRow () final
 
virtual G4bool AddNtupleRow (G4int ntupleId) final
 
virtual void SetActivation (G4bool activation) final
 
virtual void SetActivation (G4int ntupleId, G4bool activation) final
 
virtual G4bool GetActivation (G4int ntupleId) const final
 
tools::waxml::ntupleGetNtuple () const
 
tools::waxml::ntupleGetNtuple (G4int ntupleId) const
 
virtual G4int GetNofNtuples () const final
 
std::vector< tools::waxml::ntuple *>::iterator BeginNtuple ()
 
std::vector< tools::waxml::ntuple *>::iterator EndNtuple ()
 
std::vector< tools::waxml::ntuple *>::const_iterator BeginConstNtuple () const
 
std::vector< tools::waxml::ntuple *>::const_iterator EndConstNtuple () const
 
- Protected Member Functions inherited from G4VNtupleManager
G4bool SetFirstNtupleColumnId (G4int firstId)
 
G4int GetFirstNtupleColumnId () const
 
- Protected Attributes inherited from G4TNtupleManager< tools::waxml::ntuple >
std::vector< G4TNtupleDescription< tools::waxml::ntuple > *> fNtupleDescriptionVector
 
std::vector< tools::waxml::ntuple *> fNtupleVector
 
- Protected Attributes inherited from G4VNtupleManager
G4int fFirstNtupleColumnId
 
G4bool fLockFirstNtupleColumnId
 
- Protected Attributes inherited from G4BaseAnalysisManager
const G4AnalysisManagerStatefState
 
G4int fFirstId
 
G4bool fLockFirstId
 

Detailed Description

Definition at line 45 of file G4XmlNtupleManager.hh.

Member Typedef Documentation

◆ NtupleDescriptionType

◆ NtupleType

Definition at line 55 of file G4XmlNtupleManager.hh.

Constructor & Destructor Documentation

◆ G4XmlNtupleManager()

G4XmlNtupleManager::G4XmlNtupleManager ( const G4AnalysisManagerState state)
explicit

Definition at line 45 of file G4XmlNtupleManager.cc.

47  fFileManager(nullptr)
48 {}
std::shared_ptr< G4XmlFileManager > fFileManager

◆ ~G4XmlNtupleManager()

G4XmlNtupleManager::~G4XmlNtupleManager ( )

Definition at line 51 of file G4XmlNtupleManager.cc.

52 {}

Member Function Documentation

◆ CreateTNtuple()

void G4XmlNtupleManager::CreateTNtuple ( NtupleDescriptionType ntupleDescription,
const G4String name,
const G4String title 
)
finalprivatevirtual

Definition at line 59 of file G4XmlNtupleManager.cc.

62 {
63  // Create ntuple if the file is open (what means here that
64  // a filename was already set)
65  if ( fFileManager->GetFileName().size() ) {
66  if ( fFileManager->CreateNtupleFile(ntupleDescription) ) {
67  ntupleDescription->fNtuple
68  = new tools::waxml::ntuple(*(ntupleDescription->fFile));
69  // ntuple object is deleted when closing a file
70  fNtupleVector.push_back(ntupleDescription->fNtuple);
71  }
72  }
73 }
std::shared_ptr< G4XmlFileManager > fFileManager
std::vector< tools::waxml::ntuple *> fNtupleVector
TTree * ntuple

◆ CreateTNtupleFromBooking()

void G4XmlNtupleManager::CreateTNtupleFromBooking ( NtupleDescriptionType ntupleDescription)
finalprivatevirtual

Definition at line 76 of file G4XmlNtupleManager.cc.

78 {
79  // create a file for this ntuple
80  if ( ! fFileManager->CreateNtupleFile(ntupleDescription) ) return;
81 
82  // create ntuple
83  ntupleDescription->fNtuple
85  *(ntupleDescription->fFile), G4cerr, ntupleDescription->fNtupleBooking);
86  fNtupleVector.push_back(ntupleDescription->fNtuple);
87 }
std::shared_ptr< G4XmlFileManager > fFileManager
std::vector< tools::waxml::ntuple *> fNtupleVector
TTree * ntuple
G4GLOB_DLL std::ostream G4cerr

◆ FinishTNtuple()

void G4XmlNtupleManager::FinishTNtuple ( NtupleDescriptionType ntupleDescription)
finalprivatevirtual

Definition at line 90 of file G4XmlNtupleManager.cc.

92 {
93  G4String path = "/";
94  path.append(fFileManager->GetNtupleDirectoryName());
95  ntupleDescription->fNtuple
96  ->write_header(path, ntupleDescription->fNtupleBooking.name(),
97  ntupleDescription->fNtupleBooking.title());
98  fFileManager->LockNtupleDirectoryName();
99 }
std::shared_ptr< G4XmlFileManager > fFileManager
G4String & append(const G4String &)
Here is the call graph for this function:

◆ GetNtupleDescriptionVector()

const std::vector< G4TNtupleDescription< tools::waxml::ntuple > * > & G4XmlNtupleManager::GetNtupleDescriptionVector ( ) const
inlineprivate

Definition at line 90 of file G4XmlNtupleManager.hh.

91 { return fNtupleDescriptionVector; }
std::vector< G4TNtupleDescription< tools::waxml::ntuple > *> fNtupleDescriptionVector
Here is the caller graph for this function:

◆ SetFileManager()

void G4XmlNtupleManager::SetFileManager ( std::shared_ptr< G4XmlFileManager fileManager)
inlineprivate

Definition at line 86 of file G4XmlNtupleManager.hh.

87 { fFileManager = fileManager; }
std::shared_ptr< G4XmlFileManager > fFileManager
Here is the caller graph for this function:

Friends And Related Function Documentation

◆ G4XmlAnalysisManager

friend class G4XmlAnalysisManager
friend

Definition at line 47 of file G4XmlNtupleManager.hh.

Member Data Documentation

◆ fFileManager

std::shared_ptr<G4XmlFileManager> G4XmlNtupleManager::fFileManager
private

Definition at line 80 of file G4XmlNtupleManager.hh.


The documentation for this class was generated from the following files: