19#include "BDSExtent.hh"
20#include "BDSSamplerCylinder.hh"
21#include "BDSSDManager.hh"
22#include "BDSSDSamplerCylinder.hh"
23#include "BDSUtilities.hh"
25#include "G4CutTubs.hh"
26#include "G4LogicalVolume.hh"
28#include "G4ThreeVector.hh"
32#include "CLHEP/Units/SystemOfUnits.h"
35BDSSamplerCylinder::BDSSamplerCylinder(
const G4String& nameIn,
43 G4double thickness = 1e-6 * radiusIn;
44 containerSolid =
new G4Tubs(nameIn +
"_solid",
55BDSSamplerCylinder::BDSSamplerCylinder(
const G4String& nameIn,
58 const G4ThreeVector& inputFaceNormal,
59 const G4ThreeVector& outputFaceNormal,
65 G4double thickness = 1e-6 * radiusIn;
68 containerSolid =
new G4Tubs(nameIn +
"_solid",
77 containerSolid =
new G4CutTubs(nameIn +
"_solid",
92 auto sdMan = BDSSDManager::Instance();
93 BDSSDSamplerCylinder* sd = filterSetID > -1 ? sdMan->SamplerCylinderWithFilter(filterSetID) : sdMan->SamplerCylinder();
94 containerLogicalVolume->SetSensitiveDetector(sd);
Holder for +- extents in 3 dimensions.
void SetExtent(const BDSExtent &extIn)
Set extent.
The sensitive detector class that provides sensitivity to BDSSamplerCylinder instances.
virtual void SetSensitivity()
Attach sensitive detector to containerLogicalVolume.
Base class and registry of sampler instances.
virtual void CommonConstruction()
G4bool IsFinite(G4double value, G4double tolerance=std::numeric_limits< double >::epsilon())