Geant4 11.4.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4VTwistSurface::Boundary Class Reference

#include <G4VTwistSurface.hh>

Public Member Functions

 Boundary ()=default
 Internal class defining a surface boundary type.
virtual ~Boundary ()=default
void SetFields (const G4int &areacode, const G4ThreeVector &d, const G4ThreeVector &x0, const G4int &boundarytype)
G4bool IsEmpty () const
G4bool GetBoundaryParameters (const G4int &areacode, G4ThreeVector &d, G4ThreeVector &x0, G4int &boundarytype) const

Detailed Description

Definition at line 422 of file G4VTwistSurface.hh.

Constructor & Destructor Documentation

◆ Boundary()

G4VTwistSurface::Boundary::Boundary ( )
default

Internal class defining a surface boundary type.

◆ ~Boundary()

virtual G4VTwistSurface::Boundary::~Boundary ( )
virtualdefault

Member Function Documentation

◆ GetBoundaryParameters()

G4bool G4VTwistSurface::Boundary::GetBoundaryParameters ( const G4int & areacode,
G4ThreeVector & d,
G4ThreeVector & x0,
G4int & boundarytype ) const

Definition at line 1249 of file G4VTwistSurface.cc.

1253{
1254 // areacode must be one of them:
1255 // sAxis0 & sAxisMin, sAxis0 & sAxisMax,
1256 // sAxis1 & sAxisMin, sAxis1 & sAxisMax
1257 //
1258 if (((areacode & sAxis0) != 0) && ((areacode & sAxis1) != 0))
1259 {
1260 std::ostringstream message;
1261 message << "Located in the corner area." << G4endl
1262 << " This function returns a direction vector of "
1263 << "a boundary line." << G4endl
1264 << " areacode = " << areacode;
1265 G4Exception("G4VTwistSurface::Boundary::GetBoundaryParameters()",
1266 "GeomSolids0003", FatalException, message);
1267 }
1268 if ((areacode & sSizeMask) != (fBoundaryAcode & sSizeMask))
1269 {
1270 return false;
1271 }
1272 d = fBoundaryDirection;
1273 x0 = fBoundaryX0;
1274 boundarytype = fBoundaryType;
1275 return true;
1276}
@ FatalException
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
#define G4endl
Definition G4ios.hh:67
static const G4int sAxis0
static const G4int sAxis1
static const G4int sSizeMask

◆ IsEmpty()

G4bool G4VTwistSurface::Boundary::IsEmpty ( ) const

Definition at line 1240 of file G4VTwistSurface.cc.

1241{
1242 return fBoundaryAcode == -1;
1243}

◆ SetFields()

void G4VTwistSurface::Boundary::SetFields ( const G4int & areacode,
const G4ThreeVector & d,
const G4ThreeVector & x0,
const G4int & boundarytype )

Definition at line 1226 of file G4VTwistSurface.cc.

1230{
1231 fBoundaryAcode = areacode;
1232 fBoundaryDirection = d;
1233 fBoundaryX0 = x0;
1234 fBoundaryType = boundarytype;
1235}

The documentation for this class was generated from the following files: