BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
Loading...
Searching...
No Matches
__w
bdsim
bdsim
src
BDSOutputFactory.cc
1
/*
2
Beam Delivery Simulation (BDSIM) Copyright (C) BDSIM Collaboration, 2001 - 2026.
3
4
This file is part of BDSIM.
5
6
BDSIM is free software: you can redistribute it and/or modify
7
it under the terms of the GNU General Public License as published
8
by the Free Software Foundation version 3 of the License.
9
10
BDSIM is distributed in the hope that it will be useful, but
11
WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
GNU General Public License for more details.
14
15
You should have received a copy of the GNU General Public License
16
along with BDSIM. If not, see <http://www.gnu.org/licenses/>.
17
*/
18
#include "BDSOutputFactory.hh"
19
#include "BDSOutputType.hh"
20
#include "BDSOutput.hh"
21
#include "BDSOutputNone.hh"
22
#include "BDSOutputROOT.hh"
23
24
BDSOutput
*
BDSOutputFactory::CreateOutput
(
BDSOutputType
format,
25
const
G4String& fileName,
26
G4int fileNumberOffset,
27
G4int compressionLevel)
28
{
29
BDSOutput
* result =
nullptr
;
30
switch
(format.
underlying
())
31
{
32
case
BDSOutputType::none:
33
{result =
new
BDSOutputNone
();
break
;}
34
case
BDSOutputType::rootevent:
35
{result =
new
BDSOutputROOT
(fileName, fileNumberOffset, compressionLevel);
break
;}
36
default
:
37
{result =
new
BDSOutputNone
();
break
;}
38
}
39
return
result;
40
}
BDSOutputFactory::CreateOutput
static BDSOutput * CreateOutput(BDSOutputType format, const G4String &fileName, G4int fileNumberOffset=-1, G4int compressionLevel=-1)
factory method
Definition
BDSOutputFactory.cc:24
BDSOutputNone
No output class.
Definition
BDSOutputNone.hh:32
BDSOutputROOT
ROOT Event output class.
Definition
BDSOutputROOT.hh:37
BDSOutput
Output base class that defines interface for all output types.
Definition
BDSOutput.hh:72
BDSTypeSafeEnum< outputformats_def, int >
BDSTypeSafeEnum::underlying
type underlying() const
return underlying value (can be used in switch statement)
Definition
BDSTypeSafeEnum.hh:61
Generated on Thu Nov 12 2026 21:37:00 for BDSIM by
1.9.8