BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
BDSTunnelInfo.hh
1/*
2Beam Delivery Simulation (BDSIM) Copyright (C) Royal Holloway,
3University of London 2001 - 2022.
4
5This file is part of BDSIM.
6
7BDSIM is free software: you can redistribute it and/or modify
8it under the terms of the GNU General Public License as published
9by the Free Software Foundation version 3 of the License.
10
11BDSIM is distributed in the hope that it will be useful, but
12WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
17along with BDSIM. If not, see <http://www.gnu.org/licenses/>.
18*/
19#ifndef BDSTUNNELINFO
20#define BDSTUNNELINFO
21
22#include "BDSTunnelType.hh"
23#include "globals.hh" // geant4 types / globals
24
25class BDSExtent;
26class G4Material;
27
40{
41public:
43 BDSTunnelInfo() = delete;
44
47 G4double thicknessIn,
48 G4double soilThicknessIn,
49 G4Material* materialIn,
50 G4Material* soilMaterialIn,
51 G4bool buildFloorIn,
52 G4double floorOffsetIn,
53 G4double aper1In,
54 G4double aper2In,
55 G4bool sensitiveIn,
56 G4bool visible = true);
57
62 BDSTunnelInfo(G4String typeIn,
63 G4double thicknessIn,
64 G4double soilThicknessIn,
65 G4String materialIn,
66 G4String soilMaterialIn,
67 G4bool buildFloorIn,
68 G4double floorOffsetIn,
69 G4double aper1In,
70 G4double aper2In,
71 G4bool sensitiveIn,
72 G4bool visible = true);
73
74 BDSExtent IndicativeExtent() const;
75
76 BDSTunnelType type;
77 G4double thickness;
78 G4double soilThickness;
79 G4Material* material;
80 G4Material* soilMaterial;
81 G4bool buildFloor;
82 G4double floorOffset;
83
85 G4double aper1;
86
88 G4double aper2;
89
91 G4bool sensitive;
92
94 G4bool visible;
95};
96
97#endif
Holder for +- extents in 3 dimensions.
Definition: BDSExtent.hh:39
Holder struct of all information required to create a section of tunnel.
BDSTunnelInfo()=delete
Default constructor, not needed.
G4bool visible
Is the tunnel visible?
G4bool sensitive
Is the tunnel sensitive?
G4double aper2
Tunnel aperture / shape parameter 2.
G4double aper1
Tunnel aperture / shape parameter 1.