BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
Loading...
Searching...
No Matches
__w
bdsim
bdsim
include
BDSLaserwireBuilder.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 BDSLASERWIREBUILDER_H
20
#define BDSLASERWIREBUILDER_H
21
#include "BDSAcceleratorComponent.hh"
22
23
#include "globals.hh"
// geant4 types / globals
24
#include "G4ThreeVector.hh"
25
#include "G4Tubs.hh"
26
27
class
BDSLaser
;
28
35
class
BDSLaserwireBuilder
:
public
BDSAcceleratorComponent
36
{
37
public
:
38
BDSLaserwireBuilder
(G4String nameIn,
39
G4double lengthIn,
40
G4double horizontalWidthIn,
41
G4double laserOffsetThetaIn,
42
G4double laserOffsetPhiIn,
43
G4ThreeVector laserOffsetIn,
44
BDSLaser
* laserIn);
45
virtual
~BDSLaserwireBuilder
();
46
47
48
protected
:
49
50
virtual
void
BuildContainerLogicalVolume
();
51
52
virtual
void
Build
();
53
54
55
G4double horizontalWidth;
56
G4double laserOffsetTheta;
57
G4double laserOffsetPhi;
58
59
G4ThreeVector laserOffset;
60
BDSLaser
* laser;
61
G4double laserRadius;
62
63
};
64
65
#endif
BDSAcceleratorComponent
Abstract class that represents a component of an accelerator.
Definition
BDSAcceleratorComponent.hh:78
BDSLaser
Class to provide laser intensity at any point.
Definition
BDSLaser.hh:36
BDSLaserwireBuilder
Definition
BDSLaserwireBuilder.hh:36
BDSLaserwireBuilder::Build
virtual void Build()
Definition
BDSLaserwireBuilder.cc:55
BDSLaserwireBuilder::BuildContainerLogicalVolume
virtual void BuildContainerLogicalVolume()
Definition
BDSLaserwireBuilder.cc:40
Generated on Sat Oct 18 2025 18:31:04 for BDSIM by
1.9.8