50 G4Material* vacuumMaterialIn =
nullptr,
51 G4double beamPipeThicknessIn = 0,
52 G4Material* beamPipeMaterialIn =
nullptr,
53 const G4String& pointsFileIn =
"",
54 const G4String& pointsUnitIn =
"");
58 const G4ThreeVector& inputFaceNormalIn,
59 const G4ThreeVector& outputFaceNormalIn,
64 G4Material* vacuumMaterialIn =
nullptr,
65 G4double beamPipeThicknessIn = 0,
66 G4Material* beamPipeMaterialIn =
nullptr,
67 const G4String& pointsFileIn =
"",
68 const G4String& pointsUnitIn =
"");
78 G4Material* vacuumMaterial,
79 G4Material* beamPipeMaterial,
84 const G4ThreeVector& inputface,
85 const G4ThreeVector& outputface);
88 G4Material* vacuumMaterialIn,
89 G4Material* beamPipeMaterialIn);
91 G4Material* vacuumMaterialIn);
103 G4double beamPipeThickness,
106 G4VSolid* copperSkinSolid;
107 G4VSolid* screenSolid;
108 G4VSolid* coolingPipeSolid;
109 G4LogicalVolume* copperSkinLV;
110 G4LogicalVolume* screenLV;
111 G4LogicalVolume* coolingPipeLV;
112 G4PVPlacement* copperSkinPV;
113 G4PVPlacement* screenPV;
114 G4PVPlacement* coolingPipeTopPV;
115 G4PVPlacement* coolingPipeBottomPV;
119 G4double coolingPipeThickness;
120 G4double coolingPipeRadius;
121 G4double copperSkinThickness;
129 G4double cuOuterRadius, cuOuterBoxX, cuOuterBoxY;
133 G4double bsOuterRadius, bsOuterBoxX, bsOuterBoxY;
virtual BDSBeamPipe * CreateBeamPipe(const G4String &nameIn, G4double lengthIn, G4double aper1=0, G4double aper2=0, G4double aper3=0, G4double aper4=0, G4Material *vacuumMaterialIn=nullptr, G4double beamPipeThicknessIn=0, G4Material *beamPipeMaterialIn=nullptr, const G4String &pointsFileIn="", const G4String &pointsUnitIn="")
create a flat ended beampipe