19#ifndef BDSGASCAPILARY_H
20#define BDSGASCAPILARY_H
22#include "BDSAcceleratorComponent.hh"
48 G4bool circularOuterIn =
false);
65 virtual void BuildUncutSolid();
66 virtual void BuildHolesSolid();
67 virtual void BuildCutSolid();
71 virtual void SetupLV(G4LogicalVolume* lv, G4Colour* colour);
Abstract class that represents a component of an accelerator.
const G4String name
Const protected member variable that may not be changed by derived classes.
BDSBeamPipeInfo * beamPipeInfo
Optional beam pipe recipe that is written out to the survey if it exists.
Holder class for all information required to describe a beam pipe model.
Base class for gas capillary.
G4double horizontalWidth
Horizontal width.
G4Material * capillaryOuterMaterial
Materials:
G4LogicalVolume * capillaryOuterLogicalVolume
Logical Volumes:
virtual G4String ElectrodeMaterial() const
Accessor.
G4VSolid * electrodeHoleSolid
Solids:
G4Material * electrodeMaterial
Materials:
BDSGasCapillary()=delete
Private default constructor to force the use of the supplied one.
G4Material * capillaryGasMaterial
Materials:
G4VSolid * capillaryGasSolid
Solids:
virtual void CheckParameters()
G4LogicalVolume * electrodeLogicalVolume
Logical Volumes:
G4bool circularOuter
Aperture type of the outer wall.
virtual void BuildContainerLogicalVolume()
G4VSolid * capillaryOuterSolid
Solids:
virtual G4String CapillaryOuterMaterial() const
Accessor.
G4VSolid * electrodeSolid
Solids:
BDSGasCapillary(BDSGasCapillary &)=delete
Assignment and copy constructor not implemented nor used.
G4VSolid * electrodeUncutSolid
Solids:
G4double capillaryGasDiameter
Aperture diameter of the gas.
BDSGasCapillary & operator=(const BDSGasCapillary &)=delete
Assignment and copy constructor not implemented nor used.
G4VSolid * capillaryOuterUncutSolid
Solids:
virtual G4String CapillaryGasMaterial() const
Accessor.
G4VSolid * capillaryHoleSolid
Solids:
G4double electrodeThickness
Thickness of the two electrodes.
G4LogicalVolume * capillaryGasLogicalVolume
Logical Volumes: