BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
Loading...
Searching...
No Matches
bdsim
include
BDSTransform3D.hh
1
/*
2
Beam Delivery Simulation (BDSIM) Copyright (C) Royal Holloway,
3
University of London 2001 - 2023.
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 BDSTRANSFORM3D_H
20
#define BDSTRANSFORM3D_H
21
#include "BDSAcceleratorComponent.hh"
22
23
#include "G4RotationMatrix.hh"
24
#include "G4String.hh"
25
#include "G4Types.hh"
26
27
41
class
BDSTransform3D
:
public
BDSAcceleratorComponent
42
{
43
public
:
44
BDSTransform3D
() =
delete
;
45
BDSTransform3D
& operator=(
const
BDSTransform3D
&) =
delete
;
46
BDSTransform3D
(
BDSTransform3D
&) =
delete
;
47
48
BDSTransform3D
(
const
G4String& aName,
49
G4double x,
50
G4double y,
51
G4double z,
52
G4double phi,
53
G4double theta,
54
G4double psi);
55
56
BDSTransform3D
(
const
G4String& nameIn,
57
G4double x,
58
G4double y,
59
G4double z,
60
G4double axisXIn,
61
G4double axisYIn,
62
G4double axisZIn,
63
G4double angleIn);
64
65
virtual
~BDSTransform3D
();
66
67
G4RotationMatrix rotationMatrix;
68
G4double dx;
69
G4double dy;
70
G4double dz;
71
G4double dPhi;
72
G4double dTheta;
73
G4double dPsi;
74
G4double axisX;
75
G4double axisY;
76
G4double axisZ;
77
G4double angle;
78
79
private
:
81
virtual
void
BuildContainerLogicalVolume
(){;};
82
};
83
84
#endif
BDSAcceleratorComponent
Abstract class that represents a component of an accelerator.
Definition:
BDSAcceleratorComponent.hh:78
BDSTransform3D
Transform in beam line that takes up no space.
Definition:
BDSTransform3D.hh:42
BDSTransform3D::BuildContainerLogicalVolume
virtual void BuildContainerLogicalVolume()
Contractual function overload from virtual base class BDSAcceleratorComponent.
Definition:
BDSTransform3D.hh:81
Generated on Mon Aug 14 2023 13:49:30 for BDSIM by
1.9.6