Import Geant4 11.4.0 source tree
This commit is contained in:
@@ -6,6 +6,13 @@ It must **not** be used as a substitute for writing good git commit messages!
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
## 2025-10-28 Gabriele Cosmo (geomvol-V11-03-04)
|
||||
- Moved default destructor definitions to headers.
|
||||
- Minor code formatting in headers.
|
||||
|
||||
## 2025-08-20 Gabriele Cosmo (geomvol-V11-03-03)
|
||||
- Applied clang-tidy fixes: modernize-loop-convert.
|
||||
|
||||
## 2025-06-10 Seth R Johnson (geomvol-V11-03-02)
|
||||
- Only delete surfaces if the geometry is not closed
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
// Author: Gabriele Cosmo (CERN), 9 October 2018
|
||||
// --------------------------------------------------------------------
|
||||
#ifndef G4ASSEMBLYSTORE_HH
|
||||
#define G4ASSEMBLYSTORE_HH 1
|
||||
#define G4ASSEMBLYSTORE_HH
|
||||
|
||||
#include <vector>
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
// Author: Radovan Chytracek (CERN), November 2000
|
||||
// ----------------------------------------------------------------------
|
||||
#ifndef G4_ASSEMBLYTRIPLET_HH
|
||||
#define G4_ASSEMBLYTRIPLET_HH 1
|
||||
#define G4_ASSEMBLYTRIPLET_HH
|
||||
|
||||
#include "G4ThreeVector.hh"
|
||||
#include "G4RotationMatrix.hh"
|
||||
|
||||
@@ -38,8 +38,8 @@
|
||||
|
||||
// Authors: R.Chytracek, J.Apostolakis, G.Cosmo (CERN), November 2000
|
||||
// ----------------------------------------------------------------------
|
||||
#ifndef G4_ASSEMBLYVOLUME_HH
|
||||
#define G4_ASSEMBLYVOLUME_HH 1
|
||||
#ifndef G4ASSEMBLYVOLUME_HH
|
||||
#define G4ASSEMBLYVOLUME_HH
|
||||
|
||||
#include <vector>
|
||||
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
// Reviewed implementation: G.Cosmo (CERN), December 2009
|
||||
// ------------------------------------------------------------
|
||||
#ifndef G4EnhancedVecAllocator_hh
|
||||
#define G4EnhancedVecAllocator_hh 1
|
||||
#define G4EnhancedVecAllocator_hh
|
||||
|
||||
#include "G4Types.hh"
|
||||
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
// Authors: John Apostolakis (CERN), Andrea Dotti (SLAC), July 2013
|
||||
// --------------------------------------------------------------------
|
||||
#ifndef G4GEOMETRYWORKSPACE_HH
|
||||
#define G4GEOMETRYWORKSPACE_HH 1
|
||||
#define G4GEOMETRYWORKSPACE_HH
|
||||
|
||||
#include "G4TWorkspacePool.hh"
|
||||
|
||||
|
||||
@@ -30,10 +30,10 @@
|
||||
// A Logical Surface class for surfaces defined by the boundary
|
||||
// of two physical volumes.
|
||||
|
||||
// Author: John Apostolakis (CERN), 17 June 1997
|
||||
// Author: John Apostolakis (CERN), 17.06.1997
|
||||
// --------------------------------------------------------------------
|
||||
#ifndef G4LogicalBorderSurface_hh
|
||||
#define G4LogicalBorderSurface_hh 1
|
||||
#define G4LogicalBorderSurface_hh
|
||||
|
||||
#include <map>
|
||||
|
||||
@@ -63,7 +63,7 @@ class G4LogicalBorderSurface : public G4LogicalSurface
|
||||
G4VPhysicalVolume* vol1,
|
||||
G4VPhysicalVolume* vol2,
|
||||
G4SurfaceProperty* surfaceProperty );
|
||||
~G4LogicalBorderSurface() override;
|
||||
~G4LogicalBorderSurface() override = default;
|
||||
|
||||
/**
|
||||
* Copy constructor and assignment operator are not allowed.
|
||||
@@ -100,10 +100,14 @@ class G4LogicalBorderSurface : public G4LogicalSurface
|
||||
|
||||
private:
|
||||
|
||||
G4VPhysicalVolume* Volume1; // Physical Volume pointer on side 1
|
||||
G4VPhysicalVolume* Volume2; // Physical Volume pointer on side 2
|
||||
/** Physical Volume pointer on side 1. */
|
||||
G4VPhysicalVolume* Volume1;
|
||||
|
||||
std::size_t Index; // Creation order index
|
||||
/** Physical Volume pointer on side 2. */
|
||||
G4VPhysicalVolume* Volume2;
|
||||
|
||||
/** Creation order index. */
|
||||
std::size_t Index;
|
||||
|
||||
/** The static Table of BorderSurfaces. */
|
||||
static G4LogicalBorderSurfaceTable* theBorderSurfaceTable;
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
// G4LogicalBorderSurface inline implementation
|
||||
//
|
||||
// Author: John Apostolakis (CERN), 17 June 1997
|
||||
// Author: John Apostolakis (CERN), 17.06.1997
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
inline
|
||||
|
||||
@@ -30,10 +30,10 @@
|
||||
// A Logical Surface class for the surface surrounding a single logical
|
||||
// volume.
|
||||
|
||||
// Author: John Apostolakis (CERN), 16 June 1997
|
||||
// Author: John Apostolakis (CERN), 16.06.1997
|
||||
// --------------------------------------------------------------------
|
||||
#ifndef G4LogicalSkinSurface_hh
|
||||
#define G4LogicalSkinSurface_hh 1
|
||||
#define G4LogicalSkinSurface_hh
|
||||
|
||||
#include <map>
|
||||
|
||||
@@ -60,7 +60,7 @@ class G4LogicalSkinSurface : public G4LogicalSurface
|
||||
G4LogicalSkinSurface( const G4String& name,
|
||||
G4LogicalVolume* vol,
|
||||
G4SurfaceProperty* surfaceProperty );
|
||||
~G4LogicalSkinSurface() override;
|
||||
~G4LogicalSkinSurface() override = default;
|
||||
|
||||
/**
|
||||
* Copy constructor and assignment operator are not allowed.
|
||||
@@ -79,7 +79,7 @@ class G4LogicalSkinSurface : public G4LogicalSurface
|
||||
*/
|
||||
static G4LogicalSkinSurface* GetSurface(const G4LogicalVolume* vol);
|
||||
inline const G4LogicalVolume* GetLogicalVolume() const;
|
||||
inline void SetLogicalVolume(G4LogicalVolume* vol);
|
||||
inline void SetLogicalVolume(G4LogicalVolume* vol);
|
||||
|
||||
/**
|
||||
* Handling of the table of surfaces.
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
// Class G4LogicalSkinSurface inline implementation
|
||||
//
|
||||
// Author: John Apostolakis (CERN), 16 June 1997
|
||||
// Author: John Apostolakis (CERN), 16.06.1997
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
inline
|
||||
|
||||
@@ -32,10 +32,10 @@
|
||||
// of a G4VParameterisation object. The positioning is assumed to
|
||||
// be dominant along a specified Cartesian axis.
|
||||
|
||||
// Author: Paul Kent (CERN), 29 July 1995 - first non-stub version
|
||||
// Author: Paul Kent (CERN), 29.07.1995 - First non-stub version
|
||||
// ----------------------------------------------------------------------
|
||||
#ifndef G4PVPARAMETERISED_HH
|
||||
#define G4PVPARAMETERISED_HH 1
|
||||
#define G4PVPARAMETERISED_HH
|
||||
|
||||
#include "G4PVReplica.hh"
|
||||
|
||||
@@ -99,9 +99,9 @@ class G4PVParameterised : public G4PVReplica
|
||||
G4PVParameterised(__void__&);
|
||||
|
||||
/**
|
||||
* Virtual empty Destructor.
|
||||
* Default Destructor.
|
||||
*/
|
||||
~G4PVParameterised() override;
|
||||
~G4PVParameterised() override = default;
|
||||
|
||||
/**
|
||||
* Returns true to identify if it is a parameterised physical volume.
|
||||
|
||||
@@ -30,10 +30,10 @@
|
||||
// Class representing a single volume positioned within and relative
|
||||
// to a mother volume.
|
||||
|
||||
// Author: Paul Kent (CERN), 24 July 1995 - first non-stub version
|
||||
// Author: Paul Kent (CERN), 24.07.1995 - First non-stub version
|
||||
// ----------------------------------------------------------------------
|
||||
#ifndef G4PVPLACEMENT_HH
|
||||
#define G4PVPLACEMENT_HH 1
|
||||
#define G4PVPLACEMENT_HH
|
||||
|
||||
#include "G4VPhysicalVolume.hh"
|
||||
#include "G4Transform3D.hh"
|
||||
@@ -167,7 +167,7 @@ class G4PVPlacement : public G4VPhysicalVolume
|
||||
* Reports a maximum of overlaps errors according to parameter in input.
|
||||
* @param[in] res The number of points to generate on volume's surface.
|
||||
* @param[in] tol The precision tolerance for the overlap check, below
|
||||
* which to ignore overlaps (deafult is maximim precision).
|
||||
* which to ignore overlaps (default is maximim precision).
|
||||
* @param[in] verbose Verbosity mode (default is true).
|
||||
* @param[in] maxErr Maximum of overlaps errors to report (default is 1).
|
||||
* @returns True if an overlap occurs.
|
||||
@@ -210,9 +210,14 @@ class G4PVPlacement : public G4VPhysicalVolume
|
||||
|
||||
private:
|
||||
|
||||
G4bool fmany = false; // flag for overlapping structure - not used
|
||||
G4bool fallocatedRotM = false; // flag for allocation of Rotation Matrix
|
||||
G4int fcopyNo = 0; // for identification
|
||||
/** Flag for overlapping structure - not used. */
|
||||
G4bool fmany = false;
|
||||
|
||||
/** Flag for allocation of the rotation matrix. */
|
||||
G4bool fallocatedRotM = false;
|
||||
|
||||
/** Optional copy number, for identification. */
|
||||
G4int fcopyNo = 0;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -32,11 +32,11 @@
|
||||
// linear formula, and the elements completely fill the containing mother
|
||||
// volume.
|
||||
|
||||
// Original author: Paul Kent (CERN), 29 July 1995 - First non-stub version
|
||||
// - G.Cosmo, A.Dotti (CERN), 13 January 2013 - Modified for MT thread-safety
|
||||
// Original author: Paul Kent (CERN), 29.07.1995 - First non-stub version
|
||||
// - G.Cosmo, A.Dotti (CERN), 13.01.2013 - Modified for MT thread-safety
|
||||
// ----------------------------------------------------------------------
|
||||
#ifndef G4PVREPLICA_HH
|
||||
#define G4PVREPLICA_HH 1
|
||||
#define G4PVREPLICA_HH
|
||||
|
||||
#include "G4VPhysicalVolume.hh"
|
||||
#include "G4GeomSplitter.hh"
|
||||
@@ -145,7 +145,7 @@ class G4PVReplica : public G4VPhysicalVolume
|
||||
/**
|
||||
* Default Destructor.
|
||||
*/
|
||||
~G4PVReplica() override;
|
||||
~G4PVReplica() override = default;
|
||||
|
||||
/**
|
||||
* Returns the volume type characterisation.
|
||||
|
||||
@@ -36,10 +36,10 @@
|
||||
// considered as a generalised logical volume that is addressed
|
||||
// by user specifying the constituent logical volume.
|
||||
|
||||
// Author: Ivana Hrivnacova (IN2P3/IJCLab Orsay), 16 October 2001
|
||||
// Author: Ivana Hrivnacova (IN2P3/IJCLab Orsay), 16.10.2001
|
||||
// --------------------------------------------------------------------
|
||||
#ifndef G4_REFLECTION_FACTORY_HH
|
||||
#define G4_REFLECTION_FACTORY_HH 1
|
||||
#define G4_REFLECTION_FACTORY_HH
|
||||
|
||||
#include "G4Types.hh"
|
||||
#include "G4Transform3D.hh"
|
||||
@@ -314,14 +314,14 @@ class G4ReflectionFactory
|
||||
private:
|
||||
|
||||
static G4ThreadLocal G4ReflectionFactory* fInstance;
|
||||
static const G4String fDefaultNameExtension;
|
||||
static const G4Scale3D fScale;
|
||||
G4double fScalePrecision;
|
||||
static const G4String fDefaultNameExtension;
|
||||
static const G4Scale3D fScale;
|
||||
G4double fScalePrecision;
|
||||
|
||||
G4int fVerboseLevel = 0;
|
||||
G4String fNameExtension;
|
||||
G4ReflectedVolumesMap fConstituentLVMap;
|
||||
G4ReflectedVolumesMap fReflectedLVMap;
|
||||
G4int fVerboseLevel = 0;
|
||||
G4String fNameExtension;
|
||||
G4ReflectedVolumesMap fConstituentLVMap;
|
||||
G4ReflectedVolumesMap fReflectedLVMap;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -34,10 +34,10 @@
|
||||
// * volume type is similar to G4PVPlacement -- not replicated
|
||||
// * external navigator may provide 'many'/Boolean operation
|
||||
|
||||
// Author: John Apostolakis (CERN), October 2019
|
||||
// Author: John Apostolakis (CERN), 24.10.2019
|
||||
// ----------------------------------------------------------------------
|
||||
#ifndef G4VEXTERNALPHYSICSVOLUME_HH
|
||||
#define G4VEXTERNALPHYSICSVOLUME_HH 1
|
||||
#define G4VEXTERNALPHYSICSVOLUME_HH
|
||||
|
||||
#include "G4VPhysicalVolume.hh"
|
||||
#include "G4Transform3D.hh"
|
||||
@@ -81,7 +81,7 @@ class G4VExternalPhysicalVolume : public G4VPhysicalVolume
|
||||
/**
|
||||
* Default Destructor.
|
||||
*/
|
||||
~G4VExternalPhysicalVolume() override;
|
||||
~G4VExternalPhysicalVolume() override = default;
|
||||
|
||||
/**
|
||||
* Verifies if the placed volume is overlapping with existing daughters
|
||||
@@ -122,8 +122,8 @@ class G4VExternalPhysicalVolume : public G4VPhysicalVolume
|
||||
/**
|
||||
* Used only for specialised repeated volumes. Always false with Id 0.
|
||||
*/
|
||||
G4bool IsRegularStructure() const final;
|
||||
G4int GetRegularStructureId() const final;
|
||||
G4bool IsRegularStructure() const final;
|
||||
G4int GetRegularStructureId() const final;
|
||||
|
||||
private:
|
||||
|
||||
|
||||
@@ -57,11 +57,6 @@ G4LogicalBorderSurface(const G4String& name,
|
||||
theBorderSurfaceTable->insert(std::make_pair(std::make_pair(vol1,vol2),this));
|
||||
}
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
// Default destructor
|
||||
//
|
||||
G4LogicalBorderSurface::~G4LogicalBorderSurface() = default;
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
G4bool
|
||||
G4LogicalBorderSurface::operator==(const G4LogicalBorderSurface &right) const
|
||||
|
||||
@@ -52,11 +52,6 @@ G4LogicalSkinSurface::G4LogicalSkinSurface(const G4String& name,
|
||||
theSkinSurfaceTable->insert(std::make_pair(logicalVolume, this));
|
||||
}
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
// Default destructor
|
||||
//
|
||||
G4LogicalSkinSurface::~G4LogicalSkinSurface() = default;
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
G4bool
|
||||
G4LogicalSkinSurface::operator==(const G4LogicalSkinSurface& right) const
|
||||
|
||||
@@ -110,11 +110,6 @@ G4PVParameterised::G4PVParameterised( __void__& a )
|
||||
{
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------
|
||||
// Destructor
|
||||
//
|
||||
G4PVParameterised::~G4PVParameterised() = default;
|
||||
|
||||
// ----------------------------------------------------------------------
|
||||
// GetParameterisation
|
||||
//
|
||||
|
||||
@@ -252,9 +252,6 @@ G4PVReplica::G4PVReplica( __void__& a )
|
||||
instanceID = subInstanceManager.CreateSubInstance();
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------
|
||||
G4PVReplica::~G4PVReplica() = default;
|
||||
|
||||
// ----------------------------------------------------------------------
|
||||
G4bool G4PVReplica::IsMany() const
|
||||
{
|
||||
|
||||
@@ -753,9 +753,9 @@ void G4ReflectionFactory::PrintConstituentLVMap() const
|
||||
// temporary - for debugging purpose
|
||||
// ---
|
||||
|
||||
for (auto it=fConstituentLVMap.cbegin(); it!=fConstituentLVMap.cend(); ++it)
|
||||
for (const auto & it : fConstituentLVMap)
|
||||
{
|
||||
G4cout << "lv: " << (*it).first << " lv_refl: " << (*it).second << G4endl;
|
||||
G4cout << "lv: " << it.first << " lv_refl: " << it.second << G4endl;
|
||||
}
|
||||
G4cout << G4endl;
|
||||
}
|
||||
|
||||
@@ -68,11 +68,6 @@ G4VExternalPhysicalVolume::G4VExternalPhysicalVolume( __void__& a )
|
||||
{
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------
|
||||
// Destructor
|
||||
//
|
||||
G4VExternalPhysicalVolume::~G4VExternalPhysicalVolume() = default;
|
||||
|
||||
// ----------------------------------------------------------------------
|
||||
// IsMany
|
||||
//
|
||||
|
||||
Reference in New Issue
Block a user