Import Geant4 10.5.0 source tree

This commit is contained in:
Gabriele Cosmo
2018-12-07 15:15:39 +01:00
parent 6aa23be517
commit db49709b53
11370 changed files with 187480 additions and 160142 deletions
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4ClippablePolygon.hh 66356 2012-12-18 09:02:32Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4ClippablePolygon.icc 66356 2012-12-18 09:02:32Z gcosmo $
//
// --------------------------------------------------------------------
// GEANT 4 inline definitions file
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4Ellipsoid.hh 104316 2017-05-24 13:04:23Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4Ellipsoid.icc 83572 2014-09-01 15:23:27Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4EllipticalCone.hh 105324 2017-07-21 07:34:10Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4EllipticalCone.icc 105324 2017-07-21 07:34:10Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4EllipticalTube.hh 104316 2017-05-24 13:04:23Z gcosmo $
//
// --------------------------------------------------------------------
// GEANT 4 class header file
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4EllipticalTube.icc 83572 2014-09-01 15:23:27Z gcosmo $
//
// --------------------------------------------------------------------
// GEANT 4 inline definitions file
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4EnclosingCylinder.hh 66356 2012-12-18 09:02:32Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4ExtrudedSolid.hh 108078 2017-12-20 08:15:44Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4ExtrudedSolid.icc 107111 2017-11-02 14:33:38Z gcosmo $
//
// --------------------------------------------------------------------
// GEANT 4 inline definitions file
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4GenerciPolycone.hh 72077 2013-07-08 12:31:44Z tnikitin $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4GenericPolycone.icc 72078 2013-07-08 12:31:53Z tnikitin $
//
// --------------------------------------------------------------------
// GEANT 4 inline definitions file
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4GenericTrap.hh 104316 2017-05-24 13:04:23Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4GenericTrap.icc 66356 2012-12-18 09:02:32Z gcosmo $
//
// --------------------------------------------------------------------
// GEANT 4 inline definitions file
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4Hype.hh 108078 2017-12-20 08:15:44Z gcosmo $
// $Original: G4Hype.hh,v 1.0 1998/06/09 16:57:50 safai Exp $
//
//
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4Hype.icc 83572 2014-09-01 15:23:27Z gcosmo $
//
// --------------------------------------------------------------------
// GEANT 4 inline definitions file
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4IntersectingCone.hh 66356 2012-12-18 09:02:32Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4Paraboloid.hh 104316 2017-05-24 13:04:23Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4Paraboloid.icc 83572 2014-09-01 15:23:27Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4PolyPhiFace.hh 101041 2016-11-04 09:39:24Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4PolyPhiFace.icc 66356 2012-12-18 09:02:32Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4Polycone.hh 104316 2017-05-24 13:04:23Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4Polycone.icc 100819 2016-11-02 15:17:36Z gcosmo $
//
// --------------------------------------------------------------------
// GEANT 4 inline definitions file
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id:$
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4PolyconeSide.hh 99392 2016-09-20 13:33:55Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4Polyhedra.hh 104316 2017-05-24 13:04:23Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4Polyhedra.icc 100819 2016-11-02 15:17:36Z gcosmo $
//
// --------------------------------------------------------------------
// GEANT 4 inline definitions file
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id:$
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4PolyhedraSide.hh 99392 2016-09-20 13:33:55Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4QuadrangularFacet.hh 95801 2016-02-25 10:59:41Z gcosmo $
//
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
//
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4ReduciblePolygon.hh 72091 2013-07-09 09:55:52Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4SolidExtentList.hh 66356 2012-12-18 09:02:32Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -47,16 +47,17 @@
#ifndef G4SOLIDSWORKSPACE_HH
#define G4SOLIDSWORKSPACE_HH
#include "G4TWorkspacePool.hh"
#include "G4VSolid.hh"
#include "G4PolyconeSide.hh"
#include "G4PolyhedraSide.hh"
// #include "G4AutoLock.hh"
class G4SolidsWorkspace
{
public:
typedef G4TWorkspacePool<G4SolidsWorkspace> pool_type;
G4SolidsWorkspace(G4bool verbose=false);
~G4SolidsWorkspace();
@@ -69,11 +70,15 @@ class G4SolidsWorkspace
void SetVerbose(G4bool v) { fVerbose=v; }
G4bool GetVerbose() { return fVerbose; }
static pool_type* GetPool();
protected: // Implementation methods
void InitialiseSolids();
private:
// Helper pointers - can be per instance or shared
G4PlSideManager *fpPolyconeSideSIM;
G4PhSideManager *fpPolyhedraSideSIM;
@@ -1,78 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// Create, recycle and Workspaces
// Only one object of this type exists - it is a true Singleton (not per thread).
#ifndef G4SOLIDSWORKSPACEPOOL_HH
#define G4SOLIDSWORKSPACEPOOL_HH
#include "geomwdefs.hh"
class G4SolidsWorkspace;
class G4SolidsWorkspacePool
{
public:
static G4SolidsWorkspacePool* GetInstance();
G4SolidsWorkspace* CreateWorkspace();
// For use with simple MT mode - each thread gets a workspace
// and uses it until end
void CreateAndUseWorkspace(); // Create it (as above) and use it
G4SolidsWorkspace* FindOrCreateWorkspace();
// For use with 'dynamic' model of threading - workspaces can be recycled
// Reuse an existing workspace - or create a new one if needed.
// This will never fail, except if system is out of resources
inline G4SolidsWorkspace* GetWorkspace() { return fMyWorkspace(); }
// Give back the existing, active workspace for my thread / task
void Recycle( G4SolidsWorkspace * );
// Keep the unused Workspace - for recycling
void CleanUpAndDestroyAllWorkspaces();
// To be called once at the end of the job
protected:
// void RegisterWarehouse( G4GeometryWarehouse *) ;
// The (optional) warehouse keeps a list of free workspaces
private:
G4SolidsWorkspacePool();
~G4SolidsWorkspacePool();
private:
static G4SolidsWorkspacePool* thePool;
G4GEOM_DLL static G4SolidsWorkspace*& fMyWorkspace();
// The thread's workspace - if assigned.
};
#endif //G4GEOMETRYWORKSPACEPOOL_HH
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4SurfBits.hh 66356 2012-12-18 09:02:32Z gcosmo $
//
// --------------------------------------------------------------------
// GEANT 4 class header file
@@ -24,7 +24,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id:
//
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
//
@@ -24,7 +24,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4TessellatedSolid.hh 108151 2018-01-12 09:29:46Z gcosmo $
//
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
//
@@ -28,7 +28,6 @@
// ********************************************************************
//
//
// $Id: G4Tet.hh 106603 2017-10-16 09:17:44Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -133,7 +132,7 @@ class G4Tet : public G4VSolid
// Copy constructor and assignment operator.
const char* CVSHeaderVers()
{ return "$Id: G4Tet.hh 106603 2017-10-16 09:17:44Z gcosmo $"; }
{ return "$Id: G4Tet.hh 113723 2018-12-06 14:12:07Z gunter $"; }
const char* CVSFileVers()
{ return CVSVers; }
void PrintWarnings(G4bool flag)
@@ -24,7 +24,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4TriangularFacet.hh 95801 2016-02-25 10:59:41Z gcosmo $
//
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
//
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4TwistBoxSide.hh 66356 2012-12-18 09:02:32Z gcosmo $
//
// --------------------------------------------------------------------
// GEANT 4 class header file
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4TwistTrapAlphaSide.hh 66356 2012-12-18 09:02:32Z gcosmo $
//
// --------------------------------------------------------------------
// GEANT 4 class header file
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4TwistTrapFlatSide.hh 66356 2012-12-18 09:02:32Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4TwistTrapParallelSide.hh 67973 2013-03-13 10:16:25Z gcosmo $
//
// --------------------------------------------------------------------
// GEANT 4 class header file
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4TwistTubsFlatSide.hh 66356 2012-12-18 09:02:32Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4TwistTubsHypeSide.hh 66356 2012-12-18 09:02:32Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4TwistTubsSide.hh 66356 2012-12-18 09:02:32Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4TwistedBox.hh 66356 2012-12-18 09:02:32Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4TwistedTrap.hh 66356 2012-12-18 09:02:32Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4TwistedTrd.hh 66356 2012-12-18 09:02:32Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4TwistedTubs.hh 104316 2017-05-24 13:04:23Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id:$
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id:$
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id:$
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id:$
//
//
// --------------------------------------------------------------------
@@ -51,10 +50,10 @@
#include "G4Polyhedron.hh"
class G4UHype : public G4UAdapter<vecgeom::UnplacedHype>
class G4UHype : public G4UAdapter<vecgeom::GenericUnplacedHype>
{
using Shape_t = vecgeom::UnplacedHype;
using Base_t = G4UAdapter<vecgeom::UnplacedHype>;
using Shape_t = vecgeom::GenericUnplacedHype;
using Base_t = G4UAdapter<vecgeom::GenericUnplacedHype>;
public: // with description
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id:$
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id:$
//
//
// --------------------------------------------------------------------
@@ -54,10 +53,10 @@
#include "G4PolyconeHistorical.hh"
#include "G4Polyhedron.hh"
class G4UPolycone : public G4UAdapter<vecgeom::UnplacedPolycone>
class G4UPolycone : public G4UAdapter<vecgeom::GenericUnplacedPolycone>
{
using Shape_t = vecgeom::UnplacedPolycone;
using Base_t = G4UAdapter<vecgeom::UnplacedPolycone>;
using Shape_t = vecgeom::GenericUnplacedPolycone;
using Base_t = G4UAdapter<vecgeom::GenericUnplacedPolycone>;
public: // with description
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id:$
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id:$
//
//
// --------------------------------------------------------------------
@@ -15,20 +15,15 @@
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the intellectual property of the *
// * Vanderbilt University Free Electron Laser Center *
// * Vanderbilt University, Nashville, TN, USA *
// * Development supported by: *
// * United States MFEL program under grant FA9550-04-1-0045 *
// * and NASA under contract number NNG04CT05P. *
// * Written by Marcus H. Mendenhall and Robert A. Weller. *
// * *
// * Contributed to the Geant4 Core, January, 2005. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
//
// $Id:$
//
//
// --------------------------------------------------------------------
@@ -46,17 +41,20 @@
#ifndef G4UTET_HH
#define G4UTET_HH
#include "G4USolid.hh"
#include "G4UAdapter.hh"
#if ( defined(G4GEOM_USE_USOLIDS) || defined(G4GEOM_USE_PARTIAL_USOLIDS) )
#include "UTet.hh"
#include <volumes/UnplacedTet.h>
#include "G4Polyhedron.hh"
class G4UTet : public G4USolid
class G4UTet : public G4UAdapter<vecgeom::UnplacedTet>
{
using Shape_t = vecgeom::UnplacedTet;
using Base_t = G4UAdapter<vecgeom::UnplacedTet>;
public: // with description
G4UTet(const G4String& pName,
@@ -68,8 +66,6 @@ class G4UTet : public G4USolid
~G4UTet();
inline UTet* GetShape() const;
inline G4GeometryType GetEntityType() const;
public: // without description
@@ -100,11 +96,6 @@ class G4UTet : public G4USolid
// Inline methods
// --------------------------------------------------------------------
inline UTet* G4UTet::GetShape() const
{
return (UTet*) fShape;
}
inline G4GeometryType G4UTet::GetEntityType() const
{
return "G4Tet";
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4VCSGface.hh 66356 2012-12-18 09:02:32Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4VCSGfaceted.hh 83572 2014-09-01 15:23:27Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4VFacet.hh 95801 2016-02-25 10:59:41Z gcosmo $
//
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
//
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4VTwistSurface.hh 91755 2015-08-05 08:17:56Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4VTwistSurface.icc 66356 2012-12-18 09:02:32Z gcosmo $
//
//
// --------------------------------------------------------------------
@@ -24,7 +24,6 @@
// ********************************************************************
//
//
// $Id: G4VTwistedFaceted.hh 104316 2017-05-24 13:04:23Z gcosmo $
//
// --------------------------------------------------------------------
// GEANT 4 class header file
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id:$
//
// --------------------------------------------------------------------
// GEANT 4 class header file
@@ -23,8 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id:$
// GEANT4 tag $Name: not supported by cvs2svn $
//
// --------------------------------------------------------------------
// GEANT 4 class header file