Skip to content
Snippets Groups Projects

use G4 10.7 version of LogicalBorderSurface on a G4 10.6 baseline

Merged Andrea Valassi requested to merge valassi_v10r6patches into master
4 files
+ 87
78
Compare changes
  • Side-by-side
  • Inline
Files
4
@@ -31,12 +31,11 @@
// of two physical volumes.
// Author: John Apostolakis (John.Apostolakis@cern.ch), 17-06-1997
//
// --------------------------------------------------------------------
#ifndef G4LogicalBorderSurface_h
#define G4LogicalBorderSurface_h 1
#ifndef G4LogicalBorderSurface_hh
#define G4LogicalBorderSurface_hh 1
#include <vector>
#include <map>
#include "G4LogicalSurface.hh"
#include "G4VPhysicalVolume.hh"
@@ -44,12 +43,14 @@
class G4VPhysicalVolume;
class G4LogicalBorderSurface;
using G4LogicalBorderSurfaceTable = std::vector<G4LogicalBorderSurface*>;
using G4LogicalBorderSurfaceTable
= std::map<std::pair<const G4VPhysicalVolume*,
const G4VPhysicalVolume*>, G4LogicalBorderSurface*>;
class G4LogicalBorderSurface : public G4LogicalSurface
{
public: // with description
public:
G4LogicalBorderSurface( const G4String& name,
G4VPhysicalVolume* vol1,
@@ -64,7 +65,7 @@ class G4LogicalBorderSurface : public G4LogicalSurface
G4bool operator==( const G4LogicalBorderSurface& right ) const;
G4bool operator!=( const G4LogicalBorderSurface& right ) const;
// Operators.
// Operators
static G4LogicalBorderSurface* GetSurface( const G4VPhysicalVolume* vol1,
const G4VPhysicalVolume* vol2 );
@@ -72,7 +73,8 @@ class G4LogicalBorderSurface : public G4LogicalSurface
G4VPhysicalVolume* vol2 );
inline const G4VPhysicalVolume* GetVolume1() const;
inline const G4VPhysicalVolume* GetVolume2() const;
// Generic accessors.
inline std::size_t GetIndex() const;
// Generic accessors
inline void SetVolume1( G4VPhysicalVolume* vol1 );
inline void SetVolume2( G4VPhysicalVolume* vol2 );
@@ -80,17 +82,19 @@ class G4LogicalBorderSurface : public G4LogicalSurface
static void CleanSurfaceTable();
static const G4LogicalBorderSurfaceTable* GetSurfaceTable();
static size_t GetNumberOfBorderSurfaces();
static std::size_t GetNumberOfBorderSurfaces();
static void DumpInfo();
// To handle the table of surfaces.
// To handle the table of surfaces
private:
G4VPhysicalVolume* Volume1; // Physical Volume pointer on side 1
G4VPhysicalVolume* Volume2; // Physical Volume pointer on side 2
std::size_t Index; // Creation order index
static G4LogicalBorderSurfaceTable *theBorderSurfaceTable;
// The static Table of BorderSurfaces.
// The static Table of BorderSurfaces
};
// ********************************************************************
@@ -99,5 +103,4 @@ class G4LogicalBorderSurface : public G4LogicalSurface
#include "G4LogicalBorderSurface.icc"
#endif /* G4LogicalBorderSurface_h */
#endif
Loading