G4LogicalBorderSurface is a Logical Surface class for surfaces defined by the boundary of two physical volumes.
More...
#include <G4LogicalBorderSurface.hh>
G4LogicalBorderSurface is a Logical Surface class for surfaces defined by the boundary of two physical volumes.
Definition at line 54 of file G4LogicalBorderSurface.hh.
◆ G4LogicalBorderSurface() [1/2]
Constructor and Destructor.
Definition at line 41 of file G4LogicalBorderSurface.cc.
47 Volume1(vol1), Volume2(vol2),
48 Index(theBorderSurfaceTable != nullptr ? theBorderSurfaceTable->size() : 0)
49{
50 if (theBorderSurfaceTable == nullptr)
51 {
53 }
54
55
56
57 theBorderSurfaceTable->insert(std::make_pair(std::make_pair(vol1,vol2),this));
58}
std::map< std::pair< const G4VPhysicalVolume *, const G4VPhysicalVolume * >, G4LogicalBorderSurface * > G4LogicalBorderSurfaceTable
G4LogicalSurface(const G4LogicalSurface &)=delete
Referenced by DumpInfo(), operator!=(), operator=(), and operator==().
◆ ~G4LogicalBorderSurface()
| G4LogicalBorderSurface::~G4LogicalBorderSurface |
( |
| ) |
|
|
overridedefault |
◆ G4LogicalBorderSurface() [2/2]
Copy constructor and assignment operator are not allowed.
◆ CleanSurfaceTable()
| void G4LogicalBorderSurface::CleanSurfaceTable |
( |
| ) |
|
|
static |
Handling of the table of surfaces.
Definition at line 130 of file G4LogicalBorderSurface.cc.
131{
132 if (theBorderSurfaceTable == nullptr) { return; }
133
134
136 {
137 G4cout <<
"WARNING - Attempt to clear the border surface store"
138 <<
" while geometry closed !" <<
G4endl;
139 return;
140 }
141
142 for (const auto& pos : *theBorderSurfaceTable)
143 {
145 }
146 theBorderSurfaceTable->clear();
147}
G4GLOB_DLL std::ostream G4cout
static G4GeometryManager * GetInstance()
Referenced by G4RunManager::ReinitializeGeometry().
◆ DumpInfo()
| void G4LogicalBorderSurface::DumpInfo |
( |
| ) |
|
|
static |
Definition at line 110 of file G4LogicalBorderSurface.cc.
111{
112 G4cout <<
"***** Surface Table : Nb of Surfaces = "
114
115 if (theBorderSurfaceTable != nullptr)
116 {
117 for(const auto & pos : *theBorderSurfaceTable)
118 {
121 << " Border of volumes "
124 }
125 }
127}
static std::size_t GetNumberOfBorderSurfaces()
const G4VPhysicalVolume * GetVolume2() const
G4LogicalBorderSurface(const G4String &name, G4VPhysicalVolume *vol1, G4VPhysicalVolume *vol2, G4SurfaceProperty *surfaceProperty)
const G4VPhysicalVolume * GetVolume1() const
const G4String & GetName() const
const G4String & GetName() const
◆ GetIndex()
| std::size_t G4LogicalBorderSurface::GetIndex |
( |
| ) |
const |
|
inline |
◆ GetNumberOfBorderSurfaces()
| std::size_t G4LogicalBorderSurface::GetNumberOfBorderSurfaces |
( |
| ) |
|
|
static |
◆ GetSurface()
◆ GetSurfaceTable()
◆ GetVolume1()
◆ GetVolume2()
◆ operator!=()
◆ operator=()
◆ operator==()
◆ SetPhysicalVolumes()
◆ SetVolume1()
◆ SetVolume2()
The documentation for this class was generated from the following files: