Import Geant4 0.0.0 source tree
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4PBox.ddl,v 2.0 1998/07/02 16:12:56 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
// class G4PBox
|
||||
//
|
||||
// History:
|
||||
// 19.06.98 A.Kimura Converted from G4Box.hh
|
||||
|
||||
#ifndef G4PBOX_DDL
|
||||
#define G4PBOX_DDL
|
||||
|
||||
#include "G4PCSGSolid.hh"
|
||||
|
||||
class G4VSolid;
|
||||
class G4Box;
|
||||
|
||||
class G4PBox : public G4PCSGSolid {
|
||||
public:
|
||||
G4PBox(const G4Box* theBox);
|
||||
virtual ~G4PBox();
|
||||
|
||||
G4VSolid* MakeTransientObject() const;
|
||||
|
||||
// Naming method (pseudo-RTTI : run-time type identification
|
||||
virtual G4GeometryType GetEntityType() const { return G4String("G4Box"); }
|
||||
|
||||
private:
|
||||
G4double fDx,fDy,fDz;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4PCSGSolid.ddl,v 2.0 1998/07/02 16:13:00 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// class G4CSGSolid
|
||||
//
|
||||
// History:
|
||||
// 19.06.98 A.Kimura Converted G4CSGSolid.hh
|
||||
|
||||
#ifndef G4PCSGSOLID_DDL
|
||||
#define G4PCSGSOLID_DDL
|
||||
|
||||
#include "G4PVSolid.hh"
|
||||
|
||||
class G4PCSGSolid : public G4PVSolid {
|
||||
public:
|
||||
G4PCSGSolid(const G4String& pName);
|
||||
|
||||
virtual ~G4PCSGSolid();
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,42 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4PCons.ddl,v 2.0 1998/07/02 16:12:58 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
// class G4Cons
|
||||
//
|
||||
// History:
|
||||
// 19.06.98 A.Kimura Converted G4Cons.hh
|
||||
|
||||
#ifndef G4PCons_DDL
|
||||
#define G4PCons_DDL
|
||||
|
||||
#include "G4PCSGSolid.hh"
|
||||
|
||||
class G4Cons;
|
||||
class G4VSolid;
|
||||
|
||||
class G4PCons : public G4PCSGSolid {
|
||||
public:
|
||||
G4PCons(const G4Cons* theCons);
|
||||
virtual ~G4PCons() ;
|
||||
|
||||
G4VSolid* MakeTransientObject() const;
|
||||
|
||||
// Naming method (pseudo-RTTI : run-time type identification
|
||||
virtual G4GeometryType GetEntityType() const {return G4String("G4Cons");}
|
||||
|
||||
private:
|
||||
|
||||
G4double fRmin1, fRmin2,
|
||||
fRmax1, fRmax2,
|
||||
fDz,
|
||||
fSPhi, fDPhi;
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,95 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4PHype.ddl,v 2.1 1998/07/12 03:01:24 urbi Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
// class G4PHype
|
||||
//
|
||||
// History:
|
||||
// 19.06.98 A.Kimura Converted G4Hype.hh
|
||||
|
||||
#ifndef G4PHYPE_DDL
|
||||
#define G4PHYPE_DDL
|
||||
|
||||
#include "G4PCSGSolid.hh"
|
||||
|
||||
class G4VSolid;
|
||||
class G4Hype;
|
||||
|
||||
class G4PHype : public G4PCSGSolid {
|
||||
public:
|
||||
|
||||
G4PHype(const G4Hype* theHype);
|
||||
virtual ~G4PHype();
|
||||
|
||||
G4VSolid* MakeTransientObject() const;
|
||||
|
||||
virtual G4GeometryType GetEntityType() const {return G4String("G4Hype");}
|
||||
|
||||
protected:
|
||||
// values of hype radius at a given Z
|
||||
G4double HypeInnerRadius2(double zVal) const {
|
||||
return (tanInnerStereo2*zVal*zVal+innerRadius2);
|
||||
}
|
||||
G4double HypeOuterRadius2(double zVal) const {
|
||||
return (tanOuterStereo2*zVal*zVal+outerRadius2);
|
||||
}
|
||||
|
||||
G4double innerRadius; // variable names are quite self explanative
|
||||
G4double outerRadius;
|
||||
G4double halfLenZ;
|
||||
G4double innerStereo;
|
||||
G4double outerStereo;
|
||||
|
||||
// precalculated parameters, squared quantities
|
||||
G4double tanInnerStereo2; // squared tan of Inner Stereo angle
|
||||
G4double tanOuterStereo2; // squared tan of Outer Stereo angle
|
||||
G4double innerRadius2; // squared Inner Radius
|
||||
G4double outerRadius2; // squared Outer Radius
|
||||
G4double endInnerRadius2; // squared endcap Inner Radius
|
||||
G4double endOuterRadius2; // squared endcap Outer Radius
|
||||
G4double endInnerRadius; // endcap Inner Radius
|
||||
G4double endOuterRadius; // endcap Outer Radius
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,56 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4PPara.ddl,v 2.0 1998/07/02 16:13:04 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
// class G4PPara
|
||||
//
|
||||
// History:
|
||||
// 19.06.98 A.Kimura Converted G4Para.hh
|
||||
|
||||
|
||||
#ifndef G4PPara_DDL
|
||||
#define G4PPara_DDL
|
||||
|
||||
#include "G4PCSGSolid.hh"
|
||||
|
||||
class G4Para;
|
||||
class G4VSolid;
|
||||
|
||||
#include "G4ThreeVector.hh"
|
||||
#include <rw/tvordvec.h>
|
||||
typedef RWTValOrderedVector<G4ThreeVector> G4ThreeVectorList;
|
||||
|
||||
class G4PPara : public G4PCSGSolid {
|
||||
public:
|
||||
|
||||
G4PPara(const G4Para* thePara);
|
||||
virtual ~G4PPara() ;
|
||||
|
||||
// Access functions
|
||||
G4VSolid* MakeTransientObject() const ;
|
||||
|
||||
// Get functions
|
||||
|
||||
G4ThreeVector GetSymAxis() const {
|
||||
G4double cosTheta
|
||||
= 1.0/sqrt(1+fTthetaCphi*fTthetaCphi+fTthetaSphi*fTthetaSphi) ;
|
||||
|
||||
return G4ThreeVector(fTthetaCphi*cosTheta,fTthetaSphi*cosTheta,cosTheta) ;
|
||||
}
|
||||
|
||||
// Naming method (pseudo-RTTI : run-time type identification
|
||||
|
||||
virtual G4GeometryType GetEntityType() const {return G4String("G4Para");}
|
||||
|
||||
private:
|
||||
G4double fDx,fDy,fDz;
|
||||
G4double fTalpha,fTthetaCphi,fTthetaSphi;
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,47 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4PSphere.ddl,v 2.0 1998/07/02 16:13:06 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
// class G4PSphere
|
||||
//
|
||||
// History:
|
||||
// 19.06.98 A.Kimura Converted G4Sphere.hh
|
||||
|
||||
#ifndef G4PSphere_DDL
|
||||
#define G4PSphere_DDL
|
||||
|
||||
#include "G4PCSGSolid.hh"
|
||||
|
||||
class G4VSolid;
|
||||
class G4Sphere;
|
||||
|
||||
#include "G4ThreeVector.hh"
|
||||
#include <rw/tvordvec.h>
|
||||
typedef RWTValOrderedVector<G4ThreeVector> G4ThreeVectorList;
|
||||
|
||||
class G4PSphere : public G4PCSGSolid {
|
||||
public:
|
||||
G4PSphere(const G4Sphere* theSphere);
|
||||
|
||||
virtual ~G4PSphere() ;
|
||||
|
||||
G4VSolid* MakeTransientObject() const;
|
||||
|
||||
// Naming method (pseudo-RTTI : run-time type identification
|
||||
virtual G4GeometryType GetEntityType() const {return G4String("G4Sphere");}
|
||||
|
||||
private:
|
||||
|
||||
G4double fRmin,fRmax,
|
||||
fSPhi,fDPhi,
|
||||
fSTheta,fDTheta;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4PTorus.ddl,v 2.0 1998/07/02 16:13:09 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// class G4PTorus
|
||||
//
|
||||
// History:
|
||||
// 19.06.98 A.Kimura Converted G4Torus.hh
|
||||
|
||||
#ifndef G4PTorus_DDL
|
||||
#define G4PTorus_DDL
|
||||
|
||||
#include "G4PCSGSolid.hh"
|
||||
|
||||
class G4VSolid;
|
||||
class G4Torus;
|
||||
|
||||
class G4PTorus : public G4PCSGSolid {
|
||||
public:
|
||||
G4PTorus(const G4Torus* theTorus);
|
||||
virtual ~G4PTorus();
|
||||
|
||||
G4VSolid* MakeTransientObject() const;
|
||||
|
||||
void SetAllParameters(G4double pRmin, G4double pRmax, G4double pRtor,
|
||||
G4double pSPhi, G4double pDPhi);
|
||||
|
||||
// Naming method (pseudo-RTTI : run-time type identification
|
||||
virtual G4GeometryType GetEntityType() const {return G4String("G4Torus");}
|
||||
|
||||
protected:
|
||||
|
||||
G4double fRmin,fRmax,fRtor,fSPhi,fDPhi;
|
||||
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,81 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4PTrap.ddl,v 2.0 1998/07/02 16:13:07 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
// class G4PTrap
|
||||
//
|
||||
// History:
|
||||
// 19.06.98 A.Kimura Converted G4Trap.hh
|
||||
|
||||
#ifndef G4PTrap_DDL
|
||||
#define G4PTrap_DDL
|
||||
|
||||
#include "G4PCSGSolid.hh"
|
||||
|
||||
class G4VSolid;
|
||||
class G4Trap;
|
||||
|
||||
#include "G4ThreeVector.hh"
|
||||
#include <rw/tvordvec.h>
|
||||
typedef RWTValOrderedVector<G4ThreeVector> G4ThreeVectorList;
|
||||
|
||||
struct PTrapSidePlane
|
||||
{
|
||||
G4double a,b,c,d; // Normal unit vector (a,b,c) and offset (d)
|
||||
// => Ax+By+Cz+D=0
|
||||
};
|
||||
|
||||
class G4PTrap : public G4PCSGSolid {
|
||||
|
||||
public:
|
||||
|
||||
// The most general constructor for G4Trap
|
||||
|
||||
G4PTrap(const G4Trap* theTrap);
|
||||
virtual ~G4PTrap() ;
|
||||
|
||||
// Access functions
|
||||
G4VSolid* MakeTransientObject() const;
|
||||
|
||||
void SetAllParameters ( G4double pDz,
|
||||
G4double pTheta,
|
||||
G4double pPhi,
|
||||
G4double pDy1,
|
||||
G4double pDx1,
|
||||
G4double pDx2,
|
||||
G4double pAlp1,
|
||||
G4double pDy2,
|
||||
G4double pDx3,
|
||||
G4double pDx4,
|
||||
G4double pAlp2);
|
||||
|
||||
// Naming method (pseudo-RTTI : run-time type identification
|
||||
virtual G4GeometryType GetEntityType() const { return G4String("G4Trap"); }
|
||||
|
||||
protected:
|
||||
|
||||
G4bool MakePlanes();
|
||||
G4bool MakePlane( const G4ThreeVector& p1,
|
||||
const G4ThreeVector& p2,
|
||||
const G4ThreeVector& p3,
|
||||
const G4ThreeVector& p4,
|
||||
PTrapSidePlane& plane ) ;
|
||||
|
||||
private:
|
||||
|
||||
G4double fDz,fTthetaCphi,fTthetaSphi;
|
||||
G4double fDy1,fDx1,fDx2,fTalpha1;
|
||||
G4double fDy2,fDx3,fDx4,fTalpha2;
|
||||
PTrapSidePlane fPlanes[4];
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
// **************************** End of G4Trap.hh *****************************************
|
||||
@@ -0,0 +1,49 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4PTrd.ddl,v 2.0 1998/07/02 16:13:10 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
// class G4PTrd
|
||||
//
|
||||
// History:
|
||||
// 19.06.98 A.Kimura Converted G4Trd.hh
|
||||
|
||||
#ifndef G4PTRD_DDL
|
||||
#define G4PTRD_DDL
|
||||
|
||||
#include "G4PCSGSolid.hh"
|
||||
|
||||
class G4Trd;
|
||||
class G4VSolid;
|
||||
|
||||
class G4PTrd : public G4PCSGSolid {
|
||||
|
||||
public:
|
||||
|
||||
G4PTrd(const G4Trd* theTrd);
|
||||
|
||||
virtual ~G4PTrd();
|
||||
|
||||
G4VSolid* MakeTransientObject() const;
|
||||
|
||||
// Naming method (pseudo-RTTI : run-time type identification
|
||||
virtual G4GeometryType GetEntityType() const {return G4String("G4Trd");}
|
||||
|
||||
void CheckAndSetAllParameters (G4double pdx1, G4double pdx2,
|
||||
G4double pdy1, G4double pdy2,
|
||||
G4double pdz);
|
||||
|
||||
protected:
|
||||
|
||||
G4double fDx1,fDx2,fDy1,fDy2,fDz;
|
||||
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4PTubs.ddl,v 2.0 1998/07/02 16:13:11 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// class G4PTubs
|
||||
//
|
||||
// History:
|
||||
// 19.06.98 A.Kimura Converted G4Tubs.hh
|
||||
|
||||
#ifndef G4PTUBS_DDL
|
||||
#define G4PTUBS_DDL
|
||||
|
||||
#include "G4PCSGSolid.hh"
|
||||
|
||||
class G4VSolid;
|
||||
class G4Tubs;
|
||||
|
||||
class G4PTubs : public G4PCSGSolid {
|
||||
public:
|
||||
G4PTubs(const G4Tubs* theTubs);
|
||||
virtual ~G4PTubs();
|
||||
|
||||
G4VSolid* MakeTransientObject() const;
|
||||
|
||||
// Naming method (pseudo-RTTI : run-time type identification)
|
||||
virtual G4GeometryType GetEntityType() const { return G4String("G4Tubs"); }
|
||||
|
||||
protected:
|
||||
|
||||
G4double fRMin,fRMax,fDz,fSPhi,fDPhi;
|
||||
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user