21#include "BDSTypeSafeEnum.hh"
33 enum type {circular, elliptical, square, rectangular, ilc, rectaboveground};
46 void CheckTunnelInfo(BDSTunnelType tunnelTypeIn,
47 G4double& tunnelOffsetX,
48 G4double& tunnelOffsetY,
50 G4double& tunnelFloorOffset,
55 void InfoOKForCircular(G4double& tunnelOffsetX, G4double& tunnelOffsetY, G4bool tunnelFloor, G4double& tunnelFloorOffset,
56 G4double& tunnel1, G4double& tunnel2);
59 void InfoOKForElliptical(G4double& tunnelOffsetX, G4double& tunnelOffsetY, G4bool tunnelFloor, G4double& tunnelFloorOffset,
60 G4double& tunnel1, G4double& tunnel2);
63 void InfoOKForRectangular(G4double& tunnelOffsetX, G4double& tunnelOffsetY, G4bool tunnelFloor, G4double& tunnelFloorOffset,
64 G4double& tunnel1, G4double& tunnel2);
67 void InfoOKForSquare(G4double& tunnelOffsetX, G4double& tunnelOffsetY, G4bool tunnelFloor, G4double& tunnelFloorOffset,
68 G4double& tunnel1, G4double& tunnel2);
Improve type-safety of native enum data type in C++.
Return either G4Tubs or G4CutTubs depending on flat face.
BDSTunnelType DetermineTunnelType(G4String tunnelType)
Function to determine the enum type of the tunnel (case-insensitive)
Type definition for tunnels - used for comparison in factory methods.