Import Geant4 3.0.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-08 15:55:53 +02:00
parent e7d7193284
commit cfcb558cfe
3050 changed files with 91703 additions and 48310 deletions
@@ -5,8 +5,21 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4PDCofThisEvent.ddl,v 1.3 1999/12/02 16:10:19 morita Exp $
// GEANT4 tag $Name: geant4-02-00 $
// $Id: G4PDCofThisEvent.ddl,v 1.4 2000/12/15 08:04:13 morita Exp $
// GEANT4 tag $Name: geant4-03-00 $
//
// Class Description:
// This is a persistent version of container class which stores
// the associations to the digi collection in one event.
// User should check the existence of the instance of this class
// in his/her sensitive detector class with GetCurrentPDCofThisEvent()
// method of a singleton class G4PersistentDigitMan. If it does
// not exist, use should create a new instance and register the smart
// pointer with SetCurrentPDCofThisEvent() method of G4PersistentDigitMan.
// As user creates a new collection of digit, its smart pointer should
// be registered to this class via AddDigitsCollection().
// To obtain a smart pointer of the i-th collection, use GetDC() method.
//
#ifndef G4PDCofThisEvent_h
@@ -21,18 +34,25 @@
class G4PDCofThisEvent
: public HepPersObj
{
public:
public: // with description
G4PDCofThisEvent();
// Constructor.
~G4PDCofThisEvent();
// Destructor.
void AddDigitsCollection(G4int DCID, HepRef(G4PVDigitsCollection) aDC);
// Store a smart pointer of the collection aDC as DCID-th entry.
private:
d_Varray< d_Ref<G4PVDigitsCollection> > DC;
public:
public: // with description
inline HepRef(G4PVDigitsCollection) GetDC(G4int i)
{ return DC[i]; }
// Returns a smart pointer of a digit collection at the index i.
// Null will be returned if the particular collection is not stored
// in the current event.
public:
inline G4int GetCapacity()
{ return DC.size(); }
inline G4int GetNumberOfCollections()
@@ -5,8 +5,14 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4PVDigit.ddl,v 1.2 1999/11/24 20:28:06 morita Exp $
// GEANT4 tag $Name: geant4-02-00 $
// $Id: G4PVDigit.ddl,v 1.3 2000/12/15 08:04:13 morita Exp $
// GEANT4 tag $Name: geant4-03-00 $
//
// Class Description:
// This is a persistent version of abstract base class of a detector
// digit. User should inherit from this class for his/her sensitive
// detector digit, to be added to the correponding digits collection.
//
#ifndef G4PVDigit_h
@@ -22,9 +28,13 @@ class G4PVDigit
: public HepPersObj, public G4VDigi
{
public:
public: // with description
G4PVDigit();
// Constructor.
virtual ~G4PVDigit();
// (Virtual) destructor.
public:
int operator==(const G4PVDigit &right) const;
virtual void Draw();
virtual void Print();
@@ -5,14 +5,25 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4PVDigitsCollection.ddl,v 1.4 1999/12/01 14:45:10 morita Exp $
// GEANT4 tag $Name: geant4-02-00 $
// $Id: G4PVDigitsCollection.ddl,v 1.6 2000/12/15 08:04:13 morita Exp $
// GEANT4 tag $Name: geant4-03-00 $
//
// Class Description:
// This is a persistent version of container class which stores
// the associations to the digits of one sensitive detector.
// User should inherit his/her own persistent digits collection
// from this class to store user derived digits.
// At the end of each event, user sensitive detector should
// create a new collection with a detector name and a collection
// name. Comparison operator and GetName(), GetSDName() are
// provided.
//
#ifndef G4PVDigitsCollection_h
#define G4PVDigitsCollection_h 1
#include "globals.hh"
#include "G4Pglobals.hh"
#include "G4PersistentTypes.hh"
#include "G4PersistentSchema.hh"
@@ -21,22 +32,26 @@
class G4PVDigitsCollection
: public HepPersObj
{
public:
public: // with description
G4PVDigitsCollection(G4String detName,G4String colNam);
// Constructor.
~G4PVDigitsCollection();
// Destructor.
int operator==(const G4PVDigitsCollection &right) const;
// Comparison with detName and colNam.
protected:
// Persistent Collection name
G4PString pcollectionName;
G4PString pDMname;
public:
public: // with description
inline G4String GetName()
{ return (G4String) pcollectionName; }
// returns the collection name.
inline G4String GetDMname()
{ return (G4String) pDMname; }
// returns the detector name.
};
@@ -5,10 +5,11 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4PersistentDigitMan.hh,v 1.6 1999/11/29 20:11:16 morita Exp $
// GEANT4 tag $Name: geant4-02-00 $
// $Id: G4PersistentDigitMan.hh,v 1.7 2000/12/15 08:04:13 morita Exp $
// GEANT4 tag $Name: geant4-03-00 $
//
// class G4PersistentDigitMan
// Class Description:
//
// A Class responsible for registring DigitsCollection
// during event tracking.
@@ -18,6 +19,7 @@
//
// This class itself is not persistent-capable.
//
// Member functions:
// =================
// static G4PersistentDigitMan* GetPersistentDigitMan();
@@ -48,10 +50,13 @@
class G4PersistentDigitMan
: public G4VPersistentSubMan, public G4VPersistentSubDbMan
{
public:
public: // with description
static G4PersistentDigitMan* GetPersistentDigitMan();
// returns a pointer to singleton instance of this class.
static G4PersistentDigitMan* get_PersistentDigitManIfExist();
// returns a pointer to singleton instance of this class.
public:
G4PersistentDigitMan();
~G4PersistentDigitMan();
@@ -59,11 +64,16 @@ class G4PersistentDigitMan
static G4PersistentDigitMan * f_PersistentDigitMan;
HepRef(G4PDCofThisEvent) f_CurrentPDCofThisEvent;
public:
public: // with description
inline void SetCurrentPDCofThisEvent( HepRef(G4PDCofThisEvent) aPDC)
{ f_CurrentPDCofThisEvent = aPDC; };
// sets a smart pointer of the collection of digits collections
// of this event. This method should be invoked by user
// sensitive detector only once per event.
inline HepRef(G4PDCofThisEvent) GetCurrentPDCofThisEvent()
{ return f_CurrentPDCofThisEvent; };
// returns a smart pointer of the collection of digits collections
// of this event.
};
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4PDCofThisEvent.cc,v 1.3 1999/12/02 16:10:20 morita Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
#include "G4PDCofThisEvent.hh"
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4PVDigit.cc,v 1.2 1999/11/24 20:28:07 morita Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
#include "G4PVDigit.hh"
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4PVDigitsCollection.cc,v 1.3 1999/11/29 20:11:17 morita Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
// G4PVDigitsCollection
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4PersistentDigitMan.cc,v 1.4 1999/11/28 21:54:14 morita Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
// class G4PersistentDigitMan
//
@@ -5,8 +5,21 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4PHCofThisEvent.ddl,v 1.8 1999/12/02 16:10:21 morita Exp $
// GEANT4 tag $Name: geant4-02-00 $
// $Id: G4PHCofThisEvent.ddl,v 1.9 2000/12/15 08:04:14 morita Exp $
// GEANT4 tag $Name: geant4-03-00 $
//
// Class Description:
// This is a persistent version of container class which stores
// the associations to the hit collection in one event.
// User should check the existence of the instance of this class
// in his/her sensitive detector class with GetCurrentPHCofThisEvent()
// method of a singleton class G4PersistentHitMan. If it does
// not exist, use should create a new instance and register the smart
// pointer with SetCurrentPHCofThisEvent() method of G4PersistentHitMan.
// As user creates a new collection of hit, its smart pointer should
// be registered to this class via AddHitsCollection().
// To obtain a smart pointer of the i-th collection, use GetHC() method.
//
#ifndef G4PHCofThisEvent_h
@@ -21,18 +34,25 @@
class G4PHCofThisEvent
: public HepPersObj
{
public:
public: // with description
G4PHCofThisEvent();
// Constructor.
~G4PHCofThisEvent();
// Destructor.
void AddHitsCollection(G4int HCID, HepRef(G4PVHitsCollection) aHC);
// Store a smart pointer of the collection aHC as HCID-th entry.
private:
d_Varray< d_Ref<G4PVHitsCollection> > HC;
public:
public: // with description
inline HepRef(G4PVHitsCollection) GetHC(G4int i)
{ return HC[i]; }
// Returns a smart pointer of a hit collection at the index i.
// Null will be returned if the particular collection is not stored
// in the current event.
public:
inline G4int GetCapacity()
{ return HC.size(); }
inline G4int GetNumberOfCollections()
@@ -5,8 +5,14 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4PVHit.ddl,v 1.6 1999/11/24 20:27:24 morita Exp $
// GEANT4 tag $Name: geant4-02-00 $
// $Id: G4PVHit.ddl,v 1.7 2000/12/15 08:04:14 morita Exp $
// GEANT4 tag $Name: geant4-03-00 $
//
// Class Description:
// This is a persistent version of abstract base class of a detector
// digit. User should inherit from this class for his/her sensitive
// detector digit, to be added to the correponding digits collection.
//
#ifndef G4PVHit_h
@@ -22,9 +28,13 @@ class G4PVHit
: public HepPersObj, public G4VHit
{
public:
public: // with description
G4PVHit();
// Constructor.
virtual ~G4PVHit();
// (Virtual) destructor.
public:
int operator==(const G4PVHit &right) const;
virtual void Draw();
virtual void Print();
@@ -5,14 +5,25 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4PVHitsCollection.ddl,v 1.12 1999/12/01 14:45:13 morita Exp $
// GEANT4 tag $Name: geant4-02-00 $
// $Id: G4PVHitsCollection.ddl,v 1.14 2000/12/15 08:04:14 morita Exp $
// GEANT4 tag $Name: geant4-03-00 $
//
// Class Description:
// This is a persistent version of container class which stores
// the associations to the hits of one sensitive detector.
// User should inherit his/her own persistent hits collection
// from this class to store user derived hits.
// At the end of each event, user sensitive detector should
// create a new collection with a detector name and a collection
// name. Comparison operator and GetName(), GetSDName() are
// provided.
//
#ifndef G4PVHitsCollection_h
#define G4PVHitsCollection_h 1
#include "globals.hh"
#include "G4Pglobals.hh"
#include "G4PersistentTypes.hh"
#include "G4PersistentSchema.hh"
@@ -21,10 +32,13 @@
class G4PVHitsCollection
: public HepPersObj
{
public:
public: // with description
G4PVHitsCollection(G4String detName,G4String colNam);
// Constructor.
~G4PVHitsCollection();
// Destructor.
int operator==(const G4PVHitsCollection &right) const;
// Comparison with detName and colName.
protected:
@@ -32,11 +46,13 @@ class G4PVHitsCollection
G4PString pcollectionName;
G4PString pSDname;
public:
public: // with description
inline G4String GetName()
{ return (G4String) pcollectionName; }
// returns the collection name.
inline G4String GetSDname()
{ return (G4String) pSDname; }
// returns the detector name.
};
@@ -5,10 +5,11 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4PersistentHitMan.hh,v 1.5 1999/11/28 21:54:15 morita Exp $
// GEANT4 tag $Name: geant4-02-00 $
// $Id: G4PersistentHitMan.hh,v 1.6 2000/12/15 08:04:14 morita Exp $
// GEANT4 tag $Name: geant4-03-00 $
//
// class G4PersistentHitMan
// Class Description:
//
// A Class responsible for registring HitsCollection
// during event tracking.
@@ -18,6 +19,7 @@
//
// This class itself is not persistent-capable.
//
// Member functions:
// =================
// static G4PersistentHitMan* GetPersistentHitMan();
@@ -48,10 +50,13 @@
class G4PersistentHitMan
: public G4VPersistentSubMan, public G4VPersistentSubDbMan
{
public:
public: // with description
static G4PersistentHitMan* GetPersistentHitMan();
// returns a pointer to singleton instance of this class.
static G4PersistentHitMan* get_PersistentHitManIfExist();
// returns a pointer to singleton instance of this class.
public:
G4PersistentHitMan();
~G4PersistentHitMan();
@@ -59,11 +64,16 @@ class G4PersistentHitMan
static G4PersistentHitMan * f_PersistentHitMan;
HepRef(G4PHCofThisEvent) f_CurrentPHCofThisEvent;
public:
public: // with description
inline void SetCurrentPHCofThisEvent( HepRef(G4PHCofThisEvent) aPHC)
{ f_CurrentPHCofThisEvent = aPHC; };
// sets a smart pointer of the collection of hits collections
// of this event. This method should be invoked by user
// sensitive detector only once per event.
inline HepRef(G4PHCofThisEvent) GetCurrentPHCofThisEvent()
{ return f_CurrentPHCofThisEvent; };
// returns a smart pointer of the collection of hits collections
// of this event.
};
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4PHCofThisEvent.cc,v 1.6 1999/12/02 16:10:22 morita Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
#include "G4PHCofThisEvent.hh"
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4PVHit.cc,v 1.4 1999/11/24 20:27:24 morita Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
#include "G4PVHit.hh"
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4PVHitsCollection.cc,v 1.8 1999/11/28 21:54:16 morita Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
// G4PVHitsCollection
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4PersistentHitMan.cc,v 1.4 1999/11/28 21:54:16 morita Exp $
// GEANT4 tag $Name: geant4-02-00 $
// GEANT4 tag $Name: geant4-03-00 $
//
// class G4PersistentHitMan
//