ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
G4BaseFileManager.hh
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file G4BaseFileManager.hh
1
//
2
// ********************************************************************
3
// * License and Disclaimer *
4
// * *
5
// * The Geant4 software is copyright of the Copyright Holders of *
6
// * the Geant4 Collaboration. It is provided under the terms and *
7
// * conditions of the Geant4 Software License, included in the file *
8
// * LICENSE and available at http://cern.ch/geant4/license . These *
9
// * include a list of copyright holders. *
10
// * *
11
// * Neither the authors of this software system, nor their employing *
12
// * institutes,nor the agencies providing financial support for this *
13
// * work make any representation or warranty, express or implied, *
14
// * regarding this software system or assume any liability for its *
15
// * use. Please see the license in the file LICENSE and URL above *
16
// * for the full disclaimer and the limitation of liability. *
17
// * *
18
// * This code implementation is the result of the scientific and *
19
// * technical work of the GEANT4 collaboration. *
20
// * By using, copying, modifying or distributing the software (or *
21
// * any work based on the software) you agree to acknowledge its *
22
// * use in resulting scientific publications, and indicate your *
23
// * acceptance of all terms of the Geant4 Software license. *
24
// ********************************************************************
25
//
26
27
// Base class for analysis file managers.
28
//
29
// Author: Ivana Hrivnacova, 18/06/2013 (ivana@ipno.in2p3.fr)
30
31
#ifndef G4BaseFileManager_h
32
#define G4BaseFileManager_h 1
33
34
#include "
G4AnalysisManagerState.hh
"
35
#include "
globals.hh
"
36
37
class
G4BaseFileManager
38
{
39
public
:
40
explicit
G4BaseFileManager
(
const
G4AnalysisManagerState
& state);
41
virtual
~G4BaseFileManager
();
42
43
virtual
G4bool
SetFileName
(
const
G4String
& fileName);
44
// Set the base file name (without extension)
45
// If the current file name is already in use
46
// setting is not performed and false is returned
47
48
G4String
GetFileName
()
const
;
49
// Return the base file name (without extension)
50
51
G4String
GetFullFileName
(
const
G4String
& baseFileName =
""
,
52
G4bool
isPerThread =
true
)
const
;
53
// Compose and return the full file name:
54
// - add _tN suffix to the file base name if isPerThread
55
// - add file extension if not present
56
57
G4String
GetHnFileName
(
const
G4String
& hnType,
58
const
G4String
& hnName)
const
;
59
// Compose and return the histogram or profile specific file name:
60
// - add _hn_hnName suffix to the file base name
61
// - add file extension if not present
62
63
G4String
GetNtupleFileName
(
const
G4String
& ntupleName)
const
;
64
// Compose and return the ntuple specific file name:
65
// - add _nt_ntupleName suffix to the file base name
66
// - add _tN suffix if called on thread worker
67
// - add file extension if not present
68
69
G4String
GetNtupleFileName
(
G4int
ntupleFileNumber)
const
;
70
// Compose and return the ntuple specific file name:
71
// - add _mN suffix to the file base name
72
// - add file extension if not present
73
74
G4String
GetPlotFileName
()
const
;
75
// Return the file name for batch plotting output
76
77
G4String
GetFileType
()
const
;
78
// Return the manager file type (starts with a lowercase letter)
79
80
protected
:
81
// utility function
82
G4String
TakeOffExtension
(
G4String
&
name
)
const
;
83
84
// data members
85
const
G4AnalysisManagerState
&
fState
;
86
G4String
fFileName
;
87
};
88
89
inline
G4bool
G4BaseFileManager::SetFileName
(
const
G4String
& fileName) {
90
fFileName
= fileName;
91
return
true
;
92
}
93
94
inline
G4String
G4BaseFileManager::GetFileName
()
const
{
95
return
fFileName
;
96
}
97
98
#endif
99
geant4
tree
geant4-10.6-release
source
analysis
management
include
G4BaseFileManager.hh
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:25:11
using
1.8.2 with
ECCE GitHub integration