Import Geant4 0.0.0 source tree
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
// 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: G4PPVParameterised.ddl,v 2.1 1998/11/10 18:29:54 morita Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
// class G4PPVParameterised
|
||||
//
|
||||
// Persistent-capable class of G4PVParameterised
|
||||
//
|
||||
// History:
|
||||
// 05.11.99 Y.Morita First non-stub version
|
||||
|
||||
#ifndef G4PPVPARAMETERISED_DDL
|
||||
#define G4PPVPARAMETERISED_DDL 1
|
||||
|
||||
#include "G4PPVReplica.hh"
|
||||
|
||||
class G4PPVParameterised
|
||||
: public G4PPVReplica
|
||||
{
|
||||
public:
|
||||
G4PPVParameterised(G4VPhysicalVolume *PhysVol,
|
||||
HepRef(G4PLogicalVolume) persLogVol);
|
||||
|
||||
~G4PPVParameterised();
|
||||
|
||||
G4VPhysicalVolume* MakeTransientObject(
|
||||
G4LogicalVolume* aLogical,
|
||||
G4VPhysicalVolume* aMother );
|
||||
|
||||
virtual G4int GetCopyNo() const;
|
||||
|
||||
protected:
|
||||
virtual void SetCopyNo(G4int CopyNo);
|
||||
|
||||
private:
|
||||
// ooRef(G4VPVParameterisation) fparam;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
// 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: G4PPVPlacement.ddl,v 2.3 1998/11/10 18:29:53 morita Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// P-versieon of G4PVPlacement Takashi.Sasaki@kek.jp
|
||||
#ifndef G4PPVPLACEMENT_DDL
|
||||
#define G4PPVPLACEMENT_DDL 1
|
||||
|
||||
class G4VPhysicalVolume;
|
||||
class G4LogicalVolume;
|
||||
class G4PLogicalVolume;
|
||||
|
||||
#include "G4PVPhysicalVolume.hh"
|
||||
|
||||
class G4PPVPlacement : public G4PVPhysicalVolume
|
||||
{
|
||||
public:
|
||||
G4PPVPlacement( G4VPhysicalVolume *PhysVol,
|
||||
HepRef(G4PLogicalVolume) persLogVol);
|
||||
|
||||
~G4PPVPlacement();
|
||||
|
||||
G4VPhysicalVolume* MakeTransientObject(
|
||||
G4LogicalVolume* aLogical,
|
||||
G4VPhysicalVolume* aMother );
|
||||
|
||||
virtual G4bool IsMany() const;
|
||||
virtual G4int GetCopyNo() const;
|
||||
|
||||
protected:
|
||||
virtual void SetCopyNo(G4int CopyNo);
|
||||
|
||||
private:
|
||||
G4bool fmany; // flag for booleans
|
||||
// G4bool fallocatedRotM; // flag for allocation of Rotation Matrix
|
||||
G4int fcopyNo; // for identification
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,57 @@
|
||||
// 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: G4PPVReplica.ddl,v 2.1 1998/11/10 18:29:54 morita Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// class G4PPVReplica
|
||||
//
|
||||
// Persistent-capable class of G4PVReplica
|
||||
//
|
||||
// History:
|
||||
// 05.11.99 Y.Morita First non-stub version
|
||||
|
||||
#ifndef G4PPVREPLICA_DDL
|
||||
#define G4PPVREPLICA_DDL
|
||||
|
||||
#include "G4VPhysicalVolume.hh"
|
||||
#include "G4RotationMatrix.hh"
|
||||
|
||||
#include "G4PVPhysicalVolume.hh"
|
||||
|
||||
class G4PPVReplica
|
||||
: public G4PVPhysicalVolume
|
||||
{
|
||||
public:
|
||||
G4PPVReplica( G4VPhysicalVolume *PhysVol,
|
||||
HepRef(G4PLogicalVolume) persLogVol);
|
||||
|
||||
~G4PPVReplica();
|
||||
|
||||
G4VPhysicalVolume* MakeTransientObject(
|
||||
G4LogicalVolume* aLogical,
|
||||
G4VPhysicalVolume* aMother );
|
||||
|
||||
virtual G4bool IsMany() const;
|
||||
virtual G4int GetCopyNo() const;
|
||||
|
||||
protected:
|
||||
virtual void SetCopyNo(G4int CopyNo);
|
||||
|
||||
protected:
|
||||
EAxis faxis;
|
||||
G4int fnReplicas;
|
||||
G4double fwidth,foffset;
|
||||
|
||||
G4int fcopyNo;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,89 @@
|
||||
// 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: G4PVPhysicalVolume.ddl,v 2.5 1998/11/10 18:29:53 morita Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// class G4PVPhysicalVolume
|
||||
|
||||
#ifndef G4PVPHYSICALVOLUME_DDL
|
||||
#define G4PVPHYSICALVOLUME_DDL 1
|
||||
|
||||
#include "globals.hh"
|
||||
#include "geomdefs.hh"
|
||||
#include "G4PersistentTypes.hh"
|
||||
|
||||
#include "G4RotationMatrix.hh"
|
||||
#include "G4ThreeVector.hh"
|
||||
|
||||
#include "HepODBMS/odbms/HepODBMS.h"
|
||||
#include "HepODBMS/odbms/HepVArray.h"
|
||||
|
||||
class G4VPhysicalVolume;
|
||||
class G4LogicalVolume;
|
||||
|
||||
//class G4VPVParameterisation;
|
||||
|
||||
// forward declaration and #pragma ooclassref is necessary in solving
|
||||
// the circular dependency between G4PLogicalVolume and G4PVPhysicalVolume
|
||||
class G4PLogicalVolume;
|
||||
#pragma ooclassref G4PLogicalVolume "G4PLogicalVolume_ref.hh"
|
||||
|
||||
#ifndef OO_VARRAY_D_DOUBLE
|
||||
declare(HepVArray,d_Double)
|
||||
#endif
|
||||
|
||||
class G4PVPhysicalVolume: public HepPersObj
|
||||
{
|
||||
public:
|
||||
G4PVPhysicalVolume();
|
||||
|
||||
G4PVPhysicalVolume( const G4VPhysicalVolume *PhysVol,
|
||||
const HepRef(G4PLogicalVolume) persLogVol);
|
||||
|
||||
// Destructor
|
||||
~G4PVPhysicalVolume();
|
||||
//
|
||||
void SetMother(const HepRef(G4PVPhysicalVolume) persMother);
|
||||
|
||||
G4VPhysicalVolume* MakeTransientObject(
|
||||
G4LogicalVolume* aLogical,
|
||||
G4VPhysicalVolume* aMother );
|
||||
|
||||
// Access functions
|
||||
G4PString GetName();
|
||||
void SetName(const G4PString aName);
|
||||
G4RotationMatrix* GetRotation();
|
||||
G4ThreeVector& GetTranslation();
|
||||
void SetRotation(const G4RotationMatrix* aRot);
|
||||
void SetTranslation(G4ThreeVector atrans);
|
||||
|
||||
HepRef(G4PLogicalVolume) GetLogicalVolume();
|
||||
|
||||
// Define equality by equal addresses only.
|
||||
G4bool operator == (const G4PVPhysicalVolume& p) const;
|
||||
|
||||
// Functions required of subclasses
|
||||
virtual G4bool IsMany() const = 0;
|
||||
virtual G4int GetCopyNo() const = 0;
|
||||
virtual void SetCopyNo(G4int CopyNo) = 0;
|
||||
|
||||
protected:
|
||||
HepVArray(d_Double) frot;
|
||||
HepVArray(d_Double) ftrans;
|
||||
|
||||
G4ThreeVector ftransvector;
|
||||
|
||||
ooRef(G4PLogicalVolume) flogical;
|
||||
G4PString fname; // name of the volume
|
||||
ooRef(G4PVPhysicalVolume) fmother; // The current moher volume
|
||||
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
// 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: G4PVSolid.ddl,v 2.0 1998/07/02 16:12:49 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// class G4PVSolid
|
||||
//
|
||||
// History:
|
||||
// 19.06.98 A.Kimura Converted from G4VSolid.hh
|
||||
// 20.06.98 A.Kimura Clean up
|
||||
|
||||
#ifndef G4PVSOLID_DDL
|
||||
#define G4PVSOLID_DDL
|
||||
|
||||
#include "globals.hh"
|
||||
#include "geomdefs.hh"
|
||||
#include "G4PersistentTypes.hh"
|
||||
|
||||
#include "G4VSolid.hh"
|
||||
|
||||
#include "HepODBMS/odbms/HepODBMS.h"
|
||||
|
||||
class G4PVSolid;
|
||||
|
||||
class G4PVSolid : public HepPersObj {
|
||||
public:
|
||||
G4PVSolid(const G4String& name);
|
||||
virtual ~G4PVSolid();
|
||||
|
||||
virtual G4VSolid* MakeTransientObject() const = 0;
|
||||
|
||||
G4bool operator==( const G4PVSolid& s) const
|
||||
{
|
||||
return (this==&s) ? true : false;
|
||||
}
|
||||
|
||||
G4String GetName() const;
|
||||
void SetName(const G4String& name);
|
||||
|
||||
virtual G4GeometryType GetEntityType() const = 0;
|
||||
|
||||
private:
|
||||
|
||||
G4PString fshapeName; // Name
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user