19#ifndef BDSCOLLIMATORBEAMMASK_H
20#define BDSCOLLIMATORBEAMMASK_H
24#include "BDSAcceleratorComponent.hh"
44 G4double xApertureIn = 0,
45 G4double yApertureIn = 0,
46 G4double xApertureSlitIn = 0,
47 G4double yApertureSlitIn = 0,
48 G4double xOffsetIn = 0,
49 G4double yOffsetIn = 0,
50 G4double xOffsetSlitIn = 0,
51 G4double yOffsetSlitIn = 0,
52 G4double tiltSlitIn = 0,
53 G4Colour* colourIn =
nullptr,
54 G4bool circularOuterIn =
false);
73 virtual void BuildInner();
Abstract class that represents a component of an accelerator.
const G4String name
Const protected member variable that may not be changed by derived classes.
Holder class for all information required to describe a beam pipe model.
A class for a beam mask collimator.
G4double yApertureSlit
Aperture of side slit in y dimension.
G4double yOffsetSlit
Offset of the side slit wrt the main slit in y.
G4double horizontalWidth
Horizontal width.
G4double yAperture
Aperture of main slit in y dimension.
virtual G4String Material() const
Accessor.
BDSCollimatorBeamMask(BDSCollimatorBeamMask &)=delete
Assignment and copy constructor not implemented nor used.
virtual void CheckParameters()
virtual G4double YAperture() const
Accessor.
virtual G4double XApertureSlit() const
Accessor.
G4Colour * colour
Colour of beam mask.
G4Material * vacuumMaterial
Vacuum material.
virtual void SetMinimumKineticEnergy(G4double minimumKineticEnergyIn)
G4Material * collimatorMaterial
Material.
virtual G4double YApertureSlit() const
Accessor.
G4VSolid * vacuumSolid
Geometrical objects:
G4bool circularOuter
Shape of the outer solid.
virtual G4double XAperture() const
Accessor.
G4double yOffset
Offset of the mask in the pipe in y.
G4UserLimits * CollimatorUserLimits()
Return either default user limits or custom ones based on optional minimumKineticEnergy.
BDSCollimatorBeamMask & operator=(const BDSCollimatorBeamMask &)=delete
Assignment and copy constructor not implemented nor used.
G4double xApertureSlit
Aperture of side slit in x dimension.
G4double xAperture
Aperture of main slit in x dimension.
G4double tiltSlit
Angle of the side slit.
virtual void BuildContainerLogicalVolume()
G4double xOffsetSlit
Offset of the side slit wrt the main slit in x.
G4VSolid * innerSolid
Geometrical objects:
BDSCollimatorBeamMask()
Private default constructor to force the use of the supplied one.
G4VSolid * collimatorSolid
Geometrical objects:
G4double xOffset
Offset of the mask in the pipe in x.
G4double minKineticEnergy
Optional minimum kinetic energy for collimator materials.