Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions
G4CsvFileManager Class Reference

#include <G4CsvFileManager.hh>

Inheritance diagram for G4CsvFileManager:
G4VFileManager

Public Member Functions

 G4CsvFileManager (const G4AnalysisManagerState &state)
 
 ~G4CsvFileManager ()
 
virtual G4bool OpenFile (const G4String &fileName)
 
virtual G4bool WriteFile ()
 
virtual G4bool CloseFile ()
 
G4bool CreateNtupleFile (G4CsvNtupleDescription *ntupleDescription)
 
G4bool CloseNtupleFile (G4CsvNtupleDescription *ntupleDescription)
 
- Public Member Functions inherited from G4VFileManager
 G4VFileManager (const G4AnalysisManagerState &state)
 
virtual ~G4VFileManager ()
 
G4bool SetFileName (const G4String &fileName)
 
G4bool SetHistoDirectoryName (const G4String &dirName)
 
G4bool SetNtupleDirectoryName (const G4String &dirName)
 
G4String GetFileName () const
 
G4String GetFullFileName () const
 
G4String GetNtupleFileName (const G4String &ntupleName) const
 
G4String GetHistoDirectoryName () const
 
G4String GetNtupleDirectoryName () const
 
G4String GetFileType () const
 

Additional Inherited Members

- Protected Attributes inherited from G4VFileManager
const G4AnalysisManagerStatefState
 
G4String fFileName
 
G4String fHistoDirectoryName
 
G4String fNtupleDirectoryName
 
G4bool fLockFileName
 
G4bool fLockHistoDirectoryName
 
G4bool fLockNtupleDirectoryName
 

Detailed Description

Definition at line 42 of file G4CsvFileManager.hh.

Constructor & Destructor Documentation

G4CsvFileManager::G4CsvFileManager ( const G4AnalysisManagerState state)

Definition at line 34 of file G4CsvFileManager.cc.

35  : G4VFileManager(state)
36 {
37 }
G4VFileManager(const G4AnalysisManagerState &state)
G4CsvFileManager::~G4CsvFileManager ( )

Definition at line 40 of file G4CsvFileManager.cc.

41 {
42 }

Member Function Documentation

G4bool G4CsvFileManager::CloseFile ( )
virtual

Implements G4VFileManager.

Definition at line 68 of file G4CsvFileManager.cc.

References G4VFileManager::fLockFileName.

Referenced by G4CsvAnalysisManager::CloseFileImpl().

69 {
70  fLockFileName = false;
71  return true;
72 }
G4bool G4CsvFileManager::CloseNtupleFile ( G4CsvNtupleDescription ntupleDescription)

Definition at line 108 of file G4CsvFileManager.cc.

References G4CsvNtupleDescription::fFile, G4CsvNtupleDescription::fNtupleBooking, G4VFileManager::fState, G4VFileManager::GetNtupleFileName(), G4AnalysisManagerState::GetVerboseL1(), G4AnalysisManagerState::GetVerboseL4(), and G4AnalysisVerbose::Message().

110 {
111  G4String ntupleName = ntupleDescription->fNtupleBooking->m_name;
112 
113 #ifdef G4VERBOSE
114  if ( fState.GetVerboseL4() )
116  ->Message("close", "file", GetNtupleFileName(ntupleName));
117 #endif
118 
119  // close file
120  ntupleDescription->fFile->close();
121 
122 #ifdef G4VERBOSE
123  if ( fState.GetVerboseL1() )
125  ->Message("close", "file", GetNtupleFileName(ntupleName));
126 #endif
127 
128  return true;
129 }
void Message(const G4String &action, const G4String &object, const G4String &objectName, G4bool success=true) const
G4String GetNtupleFileName(const G4String &ntupleName) const
const G4AnalysisManagerState & fState
const G4AnalysisVerbose * GetVerboseL4() const
tools::ntuple_booking * fNtupleBooking
const G4AnalysisVerbose * GetVerboseL1() const
G4bool G4CsvFileManager::CreateNtupleFile ( G4CsvNtupleDescription ntupleDescription)

Definition at line 75 of file G4CsvFileManager.cc.

References G4CsvNtupleDescription::fFile, G4CsvNtupleDescription::fNtupleBooking, G4VFileManager::fState, G4Exception(), G4VFileManager::GetNtupleFileName(), G4AnalysisManagerState::GetVerboseL1(), G4AnalysisManagerState::GetVerboseL4(), JustWarning, and G4AnalysisVerbose::Message().

Referenced by G4CsvNtupleManager::CreateNtuple(), and G4CsvNtupleManager::CreateNtuplesFromBooking().

77 {
78  G4String ntupleName = ntupleDescription->fNtupleBooking->m_name;
79 
80 #ifdef G4VERBOSE
81  if ( fState.GetVerboseL4() )
83  ->Message("create", "file", GetNtupleFileName(ntupleName));
84 #endif
85 
86  std::ofstream* ntupleFile
87  = new std::ofstream(GetNtupleFileName(ntupleName));
88  if ( ntupleFile->fail() ) {
89  G4ExceptionDescription description;
90  description << " " << "Cannot open file "
91  << GetNtupleFileName(ntupleName);
92  G4Exception("G4CsvFileManager::CreateNtupleFile()",
93  "Analysis_W001", JustWarning, description);
94  return false;
95  }
96 
97 #ifdef G4VERBOSE
98  if ( fState.GetVerboseL1() )
100  ->Message("create", "file", GetNtupleFileName(ntupleName));
101 #endif
102 
103  ntupleDescription->fFile = ntupleFile;
104  return true;
105 }
void Message(const G4String &action, const G4String &object, const G4String &objectName, G4bool success=true) const
std::ostringstream G4ExceptionDescription
Definition: globals.hh:76
G4String GetNtupleFileName(const G4String &ntupleName) const
const G4AnalysisManagerState & fState
const G4AnalysisVerbose * GetVerboseL4() const
tools::ntuple_booking * fNtupleBooking
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
Definition: G4Exception.cc:41
const G4AnalysisVerbose * GetVerboseL1() const
G4bool G4CsvFileManager::OpenFile ( const G4String fileName)
virtual

Implements G4VFileManager.

Definition at line 49 of file G4CsvFileManager.cc.

References G4VFileManager::fFileName, G4VFileManager::fLockFileName, and G4VFileManager::fLockNtupleDirectoryName.

Referenced by G4CsvAnalysisManager::OpenFileImpl().

50 {
51  // Keep file name
52  fFileName = fileName;
53 
54  fLockFileName = true;
56 
57  return true;
58 }
G4bool fLockNtupleDirectoryName
G4String fFileName
G4bool G4CsvFileManager::WriteFile ( )
virtual

Implements G4VFileManager.

Definition at line 61 of file G4CsvFileManager.cc.

62 {
63  // nothing to be done for Csv file
64  return true;
65 }

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