Import Geant4 4.0.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-08 16:18:25 +02:00
parent 36c080dca6
commit 921d3b1cda
3990 changed files with 185376 additions and 82884 deletions
@@ -20,9 +20,14 @@
// * statement, and all its terms. *
// ********************************************************************
//
// Persistent base class for solids created by boolean operations
// between other solids
//
// $Id: G4PBooleanSolid.ddl,v 1.6 2001/07/11 10:02:21 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
// Class Description:
// Persistent base class for solids created by boolean operations
// between other solids
// History:
// 10.11.99 Y.Morita, Initial Creation
@@ -35,15 +40,17 @@
class G4PBooleanSolid
: public G4PVSolid
{
public:
public: // With description
G4PBooleanSolid( const G4String& pName,
HepRef(G4PVSolid) persSolidA,
HepRef(G4PVSolid) persSolidB );
virtual ~G4PBooleanSolid();
// Constructor and Destructor
virtual G4VSolid* MakeTransientBooleanSolid(
G4VSolid* aSolidA,
G4VSolid* aSolidB ) const = 0;
// Creates a transient boolean solid object.
public: // With Description
// If Solid is made up from a Boolean operation of two solids,
@@ -20,8 +20,13 @@
// * statement, and all its terms. *
// ********************************************************************
//
// Persistent class describing solid placements for boolean operations
//
// $Id: G4PDisplacedSolid.ddl,v 1.5 2001/07/11 10:02:21 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
// Class Description:
// Persistent class describing solid placements for boolean operations
// History:
// 10.11.99 Y.Morita, Initial creation
@@ -37,19 +42,22 @@ class G4VSolid;
class G4PDisplacedSolid
: public G4PVSolid
{
public:
public: // With description
G4PDisplacedSolid ( HepRef(G4PVSolid) persCostituentSolid,
HepRef(G4PAffineTransform) pDirectTransform );
virtual ~G4PDisplacedSolid();
// Constructor and destructor.
G4VSolid* MakeTransientObject() const;
G4VSolid* MakeTransientDisplacedSolid(G4VSolid* aSolid) const;
// Creates a transient G4VSolid object.
virtual G4GeometryType GetEntityType() const
{ return G4String("G4DisplacedSolid"); }
// Returns the G4GeometryType of the solid.
HepRef(G4PVSolid) GetConstituentMovedSolid();
// Returns the pointer of persistent GetConstituentMovedSolid object.
protected:
d_Ref<G4PVSolid> fPtrSolid;
@@ -20,8 +20,13 @@
// * statement, and all its terms. *
// ********************************************************************
//
// Persistent class for description of intersection of two CSG solids
//
// $Id: G4PIntersectionSolid.ddl,v 1.5 2001/07/11 10:02:21 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
// Class Description:
// Persistent class for description of intersection of two CSG solids
// History:
// 10.11.99 Y.Morita, Initial creation
@@ -35,20 +40,22 @@ class G4VSolid;
class G4PIntersectionSolid: public G4PBooleanSolid
{
public:
public: // With description
G4PIntersectionSolid( const G4String& pName,
HepRef(G4PVSolid) persSolidA,
HepRef(G4PVSolid) persSolidB );
virtual ~G4PIntersectionSolid() ;
// Constructor and destructor
G4VSolid* MakeTransientObject() const;
G4VSolid* MakeTransientBooleanSolid(
G4VSolid* aSolidA,
G4VSolid* aSolidB ) const;
// Creates a transient G4IntersectionSolid object.
virtual G4GeometryType GetEntityType() const
{ return G4String("G4IntersectionSolid"); }
// Returns the G4GeometryType of this solid.
protected:
@@ -20,11 +20,15 @@
// * statement, and all its terms. *
// ********************************************************************
//
// Persistent class for description of subtraction of two CSG solids: A - B
//
// $Id: G4PSubtractionSolid.ddl,v 1.5 2001/07/11 10:02:22 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
// Class Description:
// Persistent class for description of subtraction of two CSG solids: A - B
// History:
// 10.11.99 Y.Morita, Initial creation
//
#ifndef G4PSUBTRACTIONSOLID_DDL
#define G4PSUBTRACTIONSOLID_DDL
@@ -37,20 +41,22 @@ class G4VSolid;
class G4PSubtractionSolid
: public G4PBooleanSolid
{
public:
public: // With description
G4PSubtractionSolid( const G4String& pName,
HepRef(G4PVSolid) persSolidA,
HepRef(G4PVSolid) persSolidB );
virtual ~G4PSubtractionSolid() ;
// Constructor and Destructor
G4VSolid* MakeTransientObject() const;
G4VSolid* MakeTransientBooleanSolid(
G4VSolid* aSolidA,
G4VSolid* aSolidB ) const;
// Creates a transient G4SubtractionSolid object.
virtual G4GeometryType GetEntityType() const
{ return G4String("G4SubtractionSolid"); }
// Returns the G4GeometryType of this solid.
protected:
@@ -20,11 +20,15 @@
// * statement, and all its terms. *
// ********************************************************************
//
// Persistent class for description of intersection of two CSG solids
//
// $Id: G4PUnionSolid.ddl,v 1.5 2001/07/11 10:02:22 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
// Class Description:
// Persistent class for description of intersection of two CSG solids
// History:
// 10.11.99 Y.Morita, Initial creation
//
#ifndef G4PUNIONSOLID_DDL
#define G4PUNIONSOLID_DDL
@@ -37,20 +41,22 @@ class G4VSolid;
class G4PUnionSolid
: public G4PBooleanSolid
{
public:
public: // With description
G4PUnionSolid( const G4String& pName,
HepRef(G4PVSolid) persSolidA,
HepRef(G4PVSolid) persSolidB );
virtual ~G4PUnionSolid() ;
// Constructor and Destructor
G4VSolid* MakeTransientObject() const;
G4VSolid* MakeTransientBooleanSolid(
G4VSolid* aSolidA,
G4VSolid* aSolidB ) const;
// Creates a transient G4UnionSolid object.
virtual G4GeometryType GetEntityType() const
{ return G4String("G4UnionSolid"); }
// Returns the G4GeometryType of this solid.
protected:
@@ -21,11 +21,12 @@
// ********************************************************************
//
//
// $Id: G4PBox.ddl,v 1.3.4.1 2001/06/28 19:11:31 gunter Exp $
// GEANT4 tag $Name: $
//
// class G4PBox
//
// $Id: G4PBox.ddl,v 1.5 2001/07/11 10:02:22 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
// Class Description:
// Persistent version of G4Box solid.
// History:
// 19.06.98 A.Kimura Converted from G4Box.hh
@@ -38,15 +39,19 @@
class G4VSolid;
class G4Box;
class G4PBox : public G4PCSGSolid {
public:
class G4PBox
: public G4PCSGSolid
{
public: // With description
G4PBox(const G4Box* theBox);
virtual ~G4PBox();
// Constructor and Destructor
G4VSolid* MakeTransientObject() const;
// Creates a transient boolean solid object.
// Naming method (pseudo-RTTI : run-time type identification
virtual G4GeometryType GetEntityType() const { return G4String("G4Box"); }
// Returns the G4GeometryType of this solid.
private:
G4double fDx,fDy,fDz;
@@ -21,12 +21,12 @@
// ********************************************************************
//
//
// $Id: G4PCSGSolid.ddl,v 1.3.4.1 2001/06/28 19:11:31 gunter Exp $
// GEANT4 tag $Name: $
//
//
// class G4CSGSolid
//
// $Id: G4PCSGSolid.ddl,v 1.5 2001/07/11 10:02:23 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
// Class Description:
// Persistent version of G4CSGSolid
// History:
// 19.06.98 A.Kimura Converted G4CSGSolid.hh
@@ -36,11 +36,13 @@
#include "G4PersistentSchema.hh"
#include "G4PVSolid.hh"
class G4PCSGSolid : public G4PVSolid {
public:
class G4PCSGSolid
: public G4PVSolid
{
public: // With description
G4PCSGSolid(const G4String& pName);
virtual ~G4PCSGSolid();
// Constructor and Destructor
};
#endif
@@ -21,11 +21,12 @@
// ********************************************************************
//
//
// $Id: G4PCons.ddl,v 1.3.4.1 2001/06/28 19:11:31 gunter Exp $
// GEANT4 tag $Name: $
//
// class G4Cons
//
// $Id: G4PCons.ddl,v 1.5 2001/07/11 10:02:23 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
// Class Description:
// Persistent version of G4Cons solid.
// History:
// 19.06.98 A.Kimura Converted G4Cons.hh
@@ -38,15 +39,19 @@
class G4Cons;
class G4VSolid;
class G4PCons : public G4PCSGSolid {
public:
class G4PCons
: public G4PCSGSolid
{
public: // With description
G4PCons(const G4Cons* theCons);
virtual ~G4PCons() ;
// Constructor and Destructor
G4VSolid* MakeTransientObject() const;
// Creates a transient boolean solid object.
// Naming method (pseudo-RTTI : run-time type identification
virtual G4GeometryType GetEntityType() const {return G4String("G4Cons");}
// Returns the G4GeometryType of this solid.
private:
@@ -57,3 +62,4 @@ private:
};
#endif
@@ -21,15 +21,15 @@
// ********************************************************************
//
//
// $Id: G4PPara.ddl,v 1.5.2.1 2001/06/28 19:11:31 gunter Exp $
// GEANT4 tag $Name: $
//
// class G4PPara
//
// $Id: G4PPara.ddl,v 1.7 2001/07/11 10:02:23 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
// Class Description:
// Persistent version of G4PPara solid.
// History:
// 19.06.98 A.Kimura Converted G4Para.hh
#ifndef G4PPara_DDL
#define G4PPara_DDL
@@ -41,27 +41,27 @@ class G4VSolid;
#include "G4ThreeVector.hh"
class G4PPara : public G4PCSGSolid {
public:
class G4PPara
: public G4PCSGSolid
{
public: // With description
G4PPara(const G4Para* thePara);
virtual ~G4PPara() ;
// Access functions
// Constructor and Destructor
G4VSolid* MakeTransientObject() const ;
// Creates a transient boolean solid object.
// Get functions
public:
G4ThreeVector GetSymAxis() const {
G4double cosTheta
G4double cosTheta
= 1.0/sqrt(1+fTthetaCphi*fTthetaCphi+fTthetaSphi*fTthetaSphi) ;
return G4ThreeVector(fTthetaCphi*cosTheta,fTthetaSphi*cosTheta,cosTheta) ;
return G4ThreeVector(fTthetaCphi*cosTheta,fTthetaSphi*cosTheta,cosTheta) ;
}
// Naming method (pseudo-RTTI : run-time type identification
public: // With description
virtual G4GeometryType GetEntityType() const {return G4String("G4Para");}
// Returns the G4GeometryType of this solid.
private:
G4double fDx,fDy,fDz;
@@ -69,3 +69,4 @@ private:
};
#endif
@@ -21,11 +21,12 @@
// ********************************************************************
//
//
// $Id: G4PSphere.ddl,v 1.5.2.1 2001/06/28 19:11:31 gunter Exp $
// GEANT4 tag $Name: $
//
// class G4PSphere
//
// $Id: G4PSphere.ddl,v 1.7 2001/07/11 10:02:23 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
// Class Description:
// Persistent version of G4PSphere solid.
// History:
// 19.06.98 A.Kimura Converted G4Sphere.hh
@@ -40,17 +41,20 @@ class G4Sphere;
#include "G4ThreeVector.hh"
class G4PSphere : public G4PCSGSolid {
public:
class G4PSphere
: public G4PCSGSolid
{
public: // With description
G4PSphere(const G4Sphere* theSphere);
virtual ~G4PSphere() ;
// Constructor and Destructor
G4VSolid* MakeTransientObject() const;
// Creates a transient boolean solid object.
// Naming method (pseudo-RTTI : run-time type identification
virtual G4GeometryType GetEntityType() const {return G4String("G4Sphere");}
// Returns the G4GeometryType of this solid.
private:
G4double fRmin,fRmax,
@@ -21,12 +21,12 @@
// ********************************************************************
//
//
// $Id: G4PTorus.ddl,v 1.3.4.1 2001/06/28 19:11:31 gunter Exp $
// GEANT4 tag $Name: $
//
//
// class G4PTorus
//
// $Id: G4PTorus.ddl,v 1.5 2001/07/11 10:02:23 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
// Class Description:
// Persistent version of G4PTorus solid.
// History:
// 19.06.98 A.Kimura Converted G4Torus.hh
@@ -39,18 +39,24 @@
class G4VSolid;
class G4Torus;
class G4PTorus : public G4PCSGSolid {
public:
class G4PTorus
: public G4PCSGSolid
{
public: // With description
G4PTorus(const G4Torus* theTorus);
virtual ~G4PTorus();
// Constructor and Destructor
G4VSolid* MakeTransientObject() const;
// Creates a transient boolean solid object.
public:
void SetAllParameters(G4double pRmin, G4double pRmax, G4double pRtor,
G4double pSPhi, G4double pDPhi);
// Naming method (pseudo-RTTI : run-time type identification
public: // With description
virtual G4GeometryType GetEntityType() const {return G4String("G4Torus");}
// Returns the G4GeometryType of this solid.
protected:
@@ -21,11 +21,12 @@
// ********************************************************************
//
//
// $Id: G4PTrap.ddl,v 1.5.2.1 2001/06/28 19:11:31 gunter Exp $
// GEANT4 tag $Name: $
//
// class G4PTrap
//
// $Id: G4PTrap.ddl,v 1.7 2001/07/11 10:02:23 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
// Class Description:
// Persistent version of G4PTrap solid.
// History:
// 19.06.98 A.Kimura Converted G4Trap.hh
@@ -46,18 +47,18 @@ struct PTrapSidePlane
// => Ax+By+Cz+D=0
};
class G4PTrap : public G4PCSGSolid {
public:
// The most general constructor for G4Trap
class G4PTrap
: public G4PCSGSolid
{
public: // With description
G4PTrap(const G4Trap* theTrap);
virtual ~G4PTrap() ;
// Constructor and Destructor
// Access functions
G4VSolid* MakeTransientObject() const;
// Creates a transient boolean solid object.
public:
void SetAllParameters ( G4double pDz,
G4double pTheta,
G4double pPhi,
@@ -70,8 +71,9 @@ public:
G4double pDx4,
G4double pAlp2);
// Naming method (pseudo-RTTI : run-time type identification
public: // With description
virtual G4GeometryType GetEntityType() const { return G4String("G4Trap"); }
// Returns the G4GeometryType of this solid.
protected:
@@ -21,11 +21,12 @@
// ********************************************************************
//
//
// $Id: G4PTrd.ddl,v 1.3.4.1 2001/06/28 19:11:31 gunter Exp $
// GEANT4 tag $Name: $
//
// class G4PTrd
//
// $Id: G4PTrd.ddl,v 1.5 2001/07/11 10:02:23 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
// Class Description:
// Persistent version of G4PTrd solid.
// History:
// 19.06.98 A.Kimura Converted G4Trd.hh
@@ -38,19 +39,21 @@
class G4Trd;
class G4VSolid;
class G4PTrd : public G4PCSGSolid {
public:
class G4PTrd
: public G4PCSGSolid
{
public: // With description
G4PTrd(const G4Trd* theTrd);
virtual ~G4PTrd();
// Constructor and Destructor
G4VSolid* MakeTransientObject() const;
// Creates a transient boolean solid object.
// Naming method (pseudo-RTTI : run-time type identification
virtual G4GeometryType GetEntityType() const {return G4String("G4Trd");}
// Returns the G4GeometryType of this solid.
public:
void CheckAndSetAllParameters (G4double pdx1, G4double pdx2,
G4double pdy1, G4double pdy2,
G4double pdz);
@@ -21,12 +21,12 @@
// ********************************************************************
//
//
// $Id: G4PTubs.ddl,v 1.3.4.1 2001/06/28 19:11:31 gunter Exp $
// GEANT4 tag $Name: $
//
//
// class G4PTubs
//
// $Id: G4PTubs.ddl,v 1.5 2001/07/11 10:02:24 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
// Class Description:
// Persistent version of G4PTubs solid.
// History:
// 19.06.98 A.Kimura Converted G4Tubs.hh
@@ -39,15 +39,19 @@
class G4VSolid;
class G4Tubs;
class G4PTubs : public G4PCSGSolid {
public:
class G4PTubs
: public G4PCSGSolid
{
public: // With description
G4PTubs(const G4Tubs* theTubs);
virtual ~G4PTubs();
// Constructor and Destructor
G4VSolid* MakeTransientObject() const;
// Creates a transient boolean solid object.
// Naming method (pseudo-RTTI : run-time type identification)
virtual G4GeometryType GetEntityType() const { return G4String("G4Tubs"); }
// Returns the G4GeometryType of this solid.
protected:
@@ -56,3 +60,4 @@ protected:
};
#endif
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4PBox.cc,v 1.2.8.1 2001/06/28 19:11:31 gunter Exp $
// GEANT4 tag $Name: $
// $Id: G4PBox.cc,v 1.3 2001/07/11 10:02:24 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
//
//
//
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4PCSGSolid.cc,v 1.2.8.1 2001/06/28 19:11:32 gunter Exp $
// GEANT4 tag $Name: $
// $Id: G4PCSGSolid.cc,v 1.3 2001/07/11 10:02:24 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
//
//
// History:
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4PCons.cc,v 1.2.8.1 2001/06/28 19:11:32 gunter Exp $
// GEANT4 tag $Name: $
// $Id: G4PCons.cc,v 1.3 2001/07/11 10:02:24 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
//
// class G4PCons
//
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4PPara.cc,v 1.2.8.1 2001/06/28 19:11:32 gunter Exp $
// GEANT4 tag $Name: $
// $Id: G4PPara.cc,v 1.3 2001/07/11 10:02:24 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
//
// class G4PPara
//
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4PSphere.cc,v 1.3.8.1 2001/06/28 19:11:32 gunter Exp $
// GEANT4 tag $Name: $
// $Id: G4PSphere.cc,v 1.4 2001/07/11 10:02:24 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
//
//
// class G4PSphere
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4PTorus.cc,v 1.3.4.1 2001/06/28 19:11:32 gunter Exp $
// GEANT4 tag $Name: $
// $Id: G4PTorus.cc,v 1.4 2001/07/11 10:02:24 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
//
//
// class G4PTorus
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4PTrap.cc,v 1.2.8.1 2001/06/28 19:11:32 gunter Exp $
// GEANT4 tag $Name: $
// $Id: G4PTrap.cc,v 1.3 2001/07/11 10:02:24 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
//
// class G4PTrap
//
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4PTrd.cc,v 1.3.4.1 2001/06/28 19:11:32 gunter Exp $
// GEANT4 tag $Name: $
// $Id: G4PTrd.cc,v 1.4 2001/07/11 10:02:24 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
//
//
// Implementation for G4Trd class
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4PTubs.cc,v 1.2.8.1 2001/06/28 19:11:32 gunter Exp $
// GEANT4 tag $Name: $
// $Id: G4PTubs.cc,v 1.3 2001/07/11 10:02:24 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
//
//
// class G4PTubs
@@ -21,11 +21,12 @@
// ********************************************************************
//
//
// $Id: G4PHype.ddl,v 1.1.4.1 2001/06/28 19:11:32 gunter Exp $
// GEANT4 tag $Name: $
//
// class G4PHype
//
// $Id: G4PHype.ddl,v 1.3 2001/07/11 10:02:24 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
// Class Description:
// Persistent version of G4Hype specific solid.
// History:
// 19.06.98 A.Kimura Converted G4Hype.hh
@@ -38,15 +39,19 @@
class G4VSolid;
class G4Hype;
class G4PHype : public G4PCSGSolid {
public:
class G4PHype
: public G4PCSGSolid
{
public: // With description
G4PHype(const G4Hype* theHype);
virtual ~G4PHype();
// Constructor and Destructor
G4VSolid* MakeTransientObject() const;
// Creates a transient G4Hype object.
virtual G4GeometryType GetEntityType() const {return G4String("G4Hype");}
// Returns the G4GeometryType of this solid.
protected:
// values of hype radius at a given Z
@@ -76,37 +81,3 @@ protected:
#endif
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4PHype.cc,v 1.1.4.1 2001/06/28 19:11:33 gunter Exp $
// GEANT4 tag $Name: $
// $Id: G4PHype.cc,v 1.2 2001/07/11 10:02:25 gunter Exp $
// GEANT4 tag $Name: geant4-04-00 $
//
// class G4PHype
//