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.
};