19#include "BDSExtent.hh"
20#include "BDSGlobalConstants.hh"
21#include "BDSSamplerPlane.hh"
22#include "BDSSDManager.hh"
23#include "BDSTerminator.hh"
24#include "BDSSDTerminator.hh"
25#include "BDSTerminatorUserLimits.hh"
28#include "G4LogicalVolume.hh"
32BDSTerminator::BDSTerminator(G4double horizontalWidthIn):
34 horizontalWidth(horizontalWidthIn)
37BDSTerminator::~BDSTerminator()
47 containerSolid =
new G4Box(
name +
"_container_solid",
51 containerLogicalVolume =
new G4LogicalVolume(containerSolid,
53 name +
"_container_lv");
56 containerLogicalVolume->SetSensitiveDetector(BDSSDManager::Instance()->Terminator());
63 std::numeric_limits<double>::max(),
64 std::numeric_limits<double>::max(),
67 containerLogicalVolume->SetUserLimits(termUL);
Abstract class that represents a component of an accelerator.
const G4String name
Const protected member variable that may not be changed by derived classes.
static G4Material * emptyMaterial
Useful variable often used in construction.
G4double chordLength
Protected member variable that can be modified by derived classes.
static G4VisAttributes * containerVisAttr
Useful variable often used in construction.
Holder for +- extents in 3 dimensions.
void RegisterUserLimits(G4UserLimits *userLimit)
void SetExtent(const BDSExtent &extIn)
Set extent.
Rectangular sampler with fixed thickness but variable x,y.
Dynamic user limits for a volume that changed based on the parameter turnstaken in BDSGlobalConstants...
virtual void BuildContainerLogicalVolume()
G4double horizontalWidth
The terminator's full horizontal width.