BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
Loading...
Searching...
No Matches
__w
bdsim
bdsim
include
BDSMagnetGeometryType.hh
1
/*
2
Beam Delivery Simulation (BDSIM) Copyright (C) Royal Holloway,
3
University of London 2001 - 2024.
4
5
This file is part of BDSIM.
6
7
BDSIM is free software: you can redistribute it and/or modify
8
it under the terms of the GNU General Public License as published
9
by the Free Software Foundation version 3 of the License.
10
11
BDSIM is distributed in the hope that it will be useful, but
12
WITHOUT ANY WARRANTY; without even the implied warranty of
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
GNU General Public License for more details.
15
16
You should have received a copy of the GNU General Public License
17
along with BDSIM. If not, see <http://www.gnu.org/licenses/>.
18
*/
19
#ifndef BDSMAGNETGEOMETRYTYPE_H
20
#define BDSMAGNETGEOMETRYTYPE_H
21
22
#include "BDSTypeSafeEnum.hh"
23
#include "globals.hh"
// geant4 globals / types
24
32
struct
magnetgeometrytypes_def
33
{
34
enum
type {none, cylindrical, polescircular, polessquare, polesfacet,
35
polesfacetcrop, lhcleft, lhcright, external};
36
};
37
38
typedef
BDSTypeSafeEnum<magnetgeometrytypes_def, G4int>
BDSMagnetGeometryType
;
39
40
namespace
BDS
41
{
43
BDSMagnetGeometryType
DetermineMagnetGeometryType
(G4String geometryType);
44
}
45
46
#endif
BDSTypeSafeEnum
Improve type-safety of native enum data type in C++.
Definition
BDSTypeSafeEnum.hh:47
BDS
Return either G4Tubs or G4CutTubs depending on flat face.
Definition
BDSBunchHaloFlatSigma.cc:40
BDS::DetermineMagnetGeometryType
BDSMagnetGeometryType DetermineMagnetGeometryType(G4String geometryType)
function to determine the enum type of the magnet geometry (case-insensitive)
Definition
BDSMagnetGeometryType.cc:45
magnetgeometrytypes_def
Geometry type definition for magnets - used for comparison in factory methods.
Definition
BDSMagnetGeometryType.hh:33
Generated on Sat Oct 18 2025 18:31:04 for BDSIM by
1.9.8