Import Geant4 5.0.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-08 16:57:27 +02:00
parent 330b82b769
commit 37fff30d2e
5733 changed files with 263867 additions and 74574 deletions
@@ -22,7 +22,7 @@
//
//
// $Id: Em2DetectorConstruction.hh,v 1.4 2001/10/25 15:12:06 maire Exp $
// GEANT4 tag $Name: geant4-04-01 $
// GEANT4 tag $Name: geant4-05-00 $
//
//
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: Em2DetectorMessenger.hh,v 1.4 2001/10/25 15:12:06 maire Exp $
// GEANT4 tag $Name: geant4-04-01 $
// $Id: Em2DetectorMessenger.hh,v 1.5 2002/12/11 17:12:22 maire Exp $
// GEANT4 tag $Name: geant4-05-00 $
//
//
@@ -55,7 +55,7 @@ class Em2DetectorMessenger: public G4UImessenger
private:
Em2DetectorConstruction* Em2Detector;
G4UIdirectory* Em2detDir;
G4UIdirectory* testemDir;
G4UIcmdWithAString* MaterCmd;
G4UIcmdWith3Vector* LBinCmd;
G4UIcmdWith3Vector* RBinCmd;
@@ -22,7 +22,7 @@
//
//
// $Id: Em2EventAction.hh,v 1.4 2001/10/25 15:12:06 maire Exp $
// GEANT4 tag $Name: geant4-04-01 $
// GEANT4 tag $Name: geant4-05-00 $
//
//
@@ -22,7 +22,7 @@
//
//
// $Id: Em2EventActionMessenger.hh,v 1.4 2001/10/25 15:12:06 maire Exp $
// GEANT4 tag $Name: geant4-04-01 $
// GEANT4 tag $Name: geant4-05-00 $
//
//
@@ -0,0 +1,64 @@
//
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * 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: Em2PhysListEmModel.hh,v 1.1 2002/10/31 14:07:47 maire Exp $
// GEANT4 tag $Name: geant4-05-00 $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#ifndef Em2PhysListEmModel_h
#define Em2PhysListEmModel_h 1
#include "G4VPhysicsConstructor.hh"
#include "globals.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
class Em2PhysListEmModel : public G4VPhysicsConstructor
{
public:
Em2PhysListEmModel(const G4String& name = "model");
virtual ~Em2PhysListEmModel();
public:
// This method is dummy for physics.
virtual void ConstructParticle() {};
// This method will be invoked in the Construct() method.
// each physics process will be instantiated and
// registered to the process manager of each particle type
virtual void ConstructProcess();
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#endif
@@ -0,0 +1,64 @@
//
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * 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: Em2PhysListEmStandard.hh,v 1.1 2002/10/31 14:07:47 maire Exp $
// GEANT4 tag $Name: geant4-05-00 $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#ifndef Em2PhysListEmStandard_h
#define Em2PhysListEmStandard_h 1
#include "G4VPhysicsConstructor.hh"
#include "globals.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
class Em2PhysListEmStandard : public G4VPhysicsConstructor
{
public:
Em2PhysListEmStandard(const G4String& name = "standard");
virtual ~Em2PhysListEmStandard();
public:
// This method is dummy for physics
virtual void ConstructParticle() {};
// This method will be invoked in the Construct() method.
// each physics process will be instantiated and
// registered to the process manager of each particle type
virtual void ConstructProcess();
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#endif
@@ -0,0 +1,66 @@
//
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * 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: Em2PhysListGeneral.hh,v 1.1 2002/10/31 14:07:47 maire Exp $
// GEANT4 tag $Name: geant4-05-00 $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#ifndef Em2PhysListGeneral_h
#define Em2PhysListGeneral_h 1
#include "G4VPhysicsConstructor.hh"
#include "G4Decay.hh"
#include "globals.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
class Em2PhysListGeneral : public G4VPhysicsConstructor
{
public:
Em2PhysListGeneral(const G4String& name = "general");
virtual ~Em2PhysListGeneral();
public:
// This method is dummy for physics
virtual void ConstructParticle() {};
// This method will be invoked in the Construct() method.
// each physics process will be instantiated and
// registered to the process manager of each particle type
virtual void ConstructProcess();
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#endif
@@ -0,0 +1,65 @@
//
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * 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: Em2PhysListParticles.hh,v 1.1 2002/10/31 14:07:47 maire Exp $
// GEANT4 tag $Name: geant4-05-00 $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#ifndef Em2PhysListParticles_h
#define Em2PhysListParticles_h 1
#include "G4VPhysicsConstructor.hh"
#include "globals.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
class Em2PhysListParticles : public G4VPhysicsConstructor
{
public:
Em2PhysListParticles(const G4String& name = "particles");
virtual ~Em2PhysListParticles();
public:
// This method will be invoked in the Construct() method.
// each particle type will be instantiated
virtual void ConstructParticle();
// This method is dummy.
virtual void ConstructProcess() {};
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#endif
@@ -21,55 +21,46 @@
// ********************************************************************
//
//
// $Id: Em2PhysicsList.hh,v 1.5 2001/10/25 15:12:06 maire Exp $
// GEANT4 tag $Name: geant4-04-01 $
// $Id: Em2PhysicsList.hh,v 1.7 2002/10/31 13:58:32 maire Exp $
// GEANT4 tag $Name: geant4-05-00 $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//
// 14.10.02 (V.Ivanchenko) provide modular list on base of old Em2PhysicsList
//
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#ifndef Em2PhysicsList_h
#define Em2PhysicsList_h 1
#include "G4VUserPhysicsList.hh"
#include "G4VModularPhysicsList.hh"
#include "globals.hh"
class Em2PhysicsListMessenger;
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
class Em2PhysicsList: public G4VUserPhysicsList
class Em2PhysicsList: public G4VModularPhysicsList
{
public:
Em2PhysicsList();
~Em2PhysicsList();
protected:
// Construct particles
void ConstructParticle();
void ConstructBosons();
void ConstructLeptons();
void ConstructMesons();
void ConstructBarions();
public:
void AddPhysicsList(const G4String& name);
void SetCuts();
void SetCutForGamma(G4double);
void SetCutForElectron(G4double);
void SetCutForProton(G4double);
void SetCutForPositron(G4double);
protected:
// Construct processes and register them
void ConstructProcess();
void ConstructGeneral();
void ConstructEM();
private:
G4double cutForGamma;
G4double cutForElectron;
G4double cutForProton;
G4double cutForPositron;
G4double currentDefaultCut;
G4bool emPhysicsListIsRegistered;
Em2PhysicsListMessenger* pMessenger;
};
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: Em2PhysicsListMessenger.hh,v 1.3 2001/10/25 15:12:06 maire Exp $
// GEANT4 tag $Name: geant4-04-01 $
// $Id: Em2PhysicsListMessenger.hh,v 1.4 2002/10/14 15:56:11 vnivanch Exp $
// GEANT4 tag $Name: geant4-05-00 $
//
//
@@ -37,6 +37,7 @@
class Em2PhysicsList;
class G4UIcmdWithADoubleAndUnit;
class G4UIcmdWithAString;
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -56,6 +57,9 @@ class Em2PhysicsListMessenger: public G4UImessenger
G4UIcmdWithADoubleAndUnit* gammaCutCmd;
G4UIcmdWithADoubleAndUnit* electCutCmd;
G4UIcmdWithADoubleAndUnit* protoCutCmd;
G4UIcmdWithADoubleAndUnit* allCutCmd;
G4UIcmdWithAString* pListCmd;
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -22,7 +22,7 @@
//
//
// $Id: Em2PrimaryGeneratorAction.hh,v 1.4 2001/10/25 15:12:06 maire Exp $
// GEANT4 tag $Name: geant4-04-01 $
// GEANT4 tag $Name: geant4-05-00 $
//
//
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: Em2RunAction.hh,v 1.11 2002/05/31 16:06:54 maire Exp $
// GEANT4 tag $Name: geant4-04-01 $
// $Id: Em2RunAction.hh,v 1.12 2002/12/11 17:12:22 maire Exp $
// GEANT4 tag $Name: geant4-05-00 $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -54,8 +54,10 @@ class Em2PrimaryGeneratorAction;
class G4Run;
#ifndef G4NOHIST
namespace AIDA {
class ITree;
class IHistogram1D;
}
#endif
class Em2RunAction : public G4UserRunAction
@@ -111,10 +113,9 @@ class Em2RunAction : public G4UserRunAction
G4double sum2NeutrTrLength;
#ifndef G4NOHIST
ITree* tree; // the tree should only be deleted at the end
IHistogram1D* histo[12]; // (after writing the histos to file)
#endif
AIDA::ITree* tree; // the tree should only be deleted at the end
AIDA::IHistogram1D* histo[12]; // (after writing the histos to file)
#endif
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -22,7 +22,7 @@
//
//
// $Id: Em2SteppingAction.hh,v 1.4 2001/10/25 15:12:06 maire Exp $
// GEANT4 tag $Name: geant4-04-01 $
// GEANT4 tag $Name: geant4-05-00 $
//
//
@@ -22,7 +22,7 @@
//
//
// $Id: Em2SteppingVerbose.hh,v 1.7 2001/10/25 15:12:06 maire Exp $
// GEANT4 tag $Name: geant4-04-01 $
// GEANT4 tag $Name: geant4-05-00 $
//
// This class manages the verbose outputs in G4SteppingManager.
// It inherits from G4SteppingVerbose.
@@ -22,7 +22,7 @@
//
//
// $Id: Em2TrackingAction.hh,v 1.4 2001/10/25 15:12:06 maire Exp $
// GEANT4 tag $Name: geant4-04-01 $
// GEANT4 tag $Name: geant4-05-00 $
//
//
@@ -22,7 +22,7 @@
//
//
// $Id: Em2VisManager.hh,v 1.4 2001/10/25 15:12:06 maire Exp $
// GEANT4 tag $Name: geant4-04-01 $
// GEANT4 tag $Name: geant4-05-00 $
//
//