19#include "BDSBeamPipeInfo.hh"
20#include "BDSGlobalConstants.hh"
21#include "BDSLaserWire.hh"
22#include "BDSMaterials.hh"
23#include "BDSSDType.hh"
26#include "G4LogicalVolume.hh"
30 G4double wavelengthIn,
31 G4ThreeVector directionIn):
33 itsLaserDirection(directionIn),
34 itsLaserWavelength(wavelengthIn)
37BDSLaserWire::~BDSLaserWire()
43 containerSolid =
new G4Box(
name +
"_container_solid",
47 containerLogicalVolume=
new G4LogicalVolume(containerSolid,
49 name +
"_container_lv");
Abstract class that represents a component of an accelerator.
void SetAcceleratorVacuumLogicalVolume(G4LogicalVolume *accVacLVIn)
const G4String name
Const protected member variable that may not be changed by derived classes.
G4double chordLength
Protected member variable that can be modified by derived classes.
static G4bool sensitiveVacuum
Useful variable often used in construction.
G4double aper1
Public member for direct access.
void RegisterSensitiveVolume(G4LogicalVolume *sensitiveVolume, BDSSDType sensitivityType)
static BDSGlobalConstants * Instance()
Access method.
virtual void BuildContainerLogicalVolume()
Construct geometry and assign with special "LaserVac" material.
BDSLaserWire()=delete
Private default constructor to force the use of the supplied one.
static BDSMaterials * Instance()
Singleton pattern access.