Import Geant4 8.0.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-09 14:36:02 +02:00
parent d93e1e39a9
commit 8a51e0bc40
5471 changed files with 99628 additions and 55248 deletions
@@ -1,83 +0,0 @@
//
// ********************************************************************
// * 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: G4IonC12.hh,v 1.1 2004/05/14 12:29:32 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
//
//
// ------------------------------------------------------------
// GEANT 4 class header file
//
// History: first implementation, based on object model of
// 4-th April 1996, G.Cosmo
// ****************************************************************
// Added particle definitions, H.Kurashige, 19 April 1996
// Revised, G.Cosmo, 6 June 1996
// Added not static GetEnergyCuts() and GetLengthCuts(), G.Cosmo, 11 July 1996
// ----------------------------------------------------------------
// Class Description:
// The new ion C12+ is defined as G4VIon.
// Each class inheriting from G4VIon
// corresponds to a particle type; one and only one
// instance for each class is guaranteed.
// Class Description - end
#ifndef G4IonC12_h
#define G4IonC12_h 1
#include "globals.hh"
#include "G4ios.hh"
#include "G4VIon.hh"
// ######################################################################
// ### IonC12 ###
// ######################################################################
class G4IonC12 : public G4VIon
{
private:
static G4IonC12 theIonC12;
public: // Without description
G4IonC12(
const G4String& aName, G4double mass,
G4double width, G4double charge,
G4int iSpin, G4int iParity,
G4int iConjugation, G4int iIsospin,
G4int iIsospin3, G4int gParity,
const G4String& pType, G4int lepton,
G4int baryon, G4int encoding,
G4bool stable, G4double lifetime,
G4DecayTable *decaytable
);
virtual ~G4IonC12();
static G4IonC12* IonC12Definition();
static G4IonC12* IonC12();
};
#endif
@@ -1,83 +0,0 @@
//
// ********************************************************************
// * 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: G4IonFe52.hh,v 1.1 2004/05/14 12:29:32 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
//
//
// ------------------------------------------------------------
// GEANT 4 class header file
//
// History: first implementation, based on object model of
// 4-th April 1996, G.Cosmo
// ****************************************************************
// Added particle definitions, H.Kurashige, 19 April 1996
// Revised, G.Cosmo, 6 June 1996
// Added not static GetEnergyCuts() and GetLengthCuts(), G.Cosmo, 11 July 1996
// ----------------------------------------------------------------
// Class Description:
// The new ion Fe52+ is defined as G4VIon.
// Each class inheriting from G4VIon
// corresponds to a particle type; one and only one
// instance for each class is guaranteed.
// Class Description - end
#ifndef G4IonFe52_h
#define G4IonFe52_h 1
#include "globals.hh"
#include "G4ios.hh"
#include "G4VIon.hh"
// ######################################################################
// ### IonFe52 ###
// ######################################################################
class G4IonFe52 : public G4VIon
{
private:
static G4IonFe52 theIonFe52;
public: // Without description
G4IonFe52(
const G4String& aName, G4double mass,
G4double width, G4double charge,
G4int iSpin, G4int iParity,
G4int iConjugation, G4int iIsospin,
G4int iIsospin3, G4int gParity,
const G4String& pType, G4int lepton,
G4int baryon, G4int encoding,
G4bool stable, G4double lifetime,
G4DecayTable *decaytable
);
virtual ~G4IonFe52();
static G4IonFe52* IonFe52Definition();
static G4IonFe52* IonFe52();
};
#endif
@@ -1,59 +0,0 @@
//
// ********************************************************************
// * 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. *
// ********************************************************************
//
#ifndef G4IonO16_h
#define G4IonO16_h 1
#include "globals.hh"
#include "G4ios.hh"
#include "G4VIon.hh"
// ######################################################################
// ### IonO16 ###
// ######################################################################
class G4IonO16 : public G4VIon
{
private:
static G4IonO16 theIonO16;
public:
G4IonO16(
const G4String& aName, G4double mass,
G4double width, G4double charge,
G4int iSpin, G4int iParity,
G4int iConjugation, G4int iIsospin,
G4int iIsospin3, G4int gParity,
const G4String& pType, G4int lepton,
G4int baryon, G4int encoding,
G4bool stable, G4double lifetime,
G4DecayTable *decaytable
);
virtual ~G4IonO16();
static G4IonO16* IonO16Definition();
static G4IonO16* IonO16();
};
#endif
@@ -1,83 +0,0 @@
//
// ********************************************************************
// * 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: G4IonSi28.hh,v 1.1 2004/05/14 12:29:32 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
//
//
// ------------------------------------------------------------
// GEANT 4 class header file
//
// History: first implementation, based on object model of
// 4-th April 1996, G.Cosmo
// ****************************************************************
// Added particle definitions, H.Kurashige, 19 April 1996
// Revised, G.Cosmo, 6 June 1996
// Added not static GetEnergyCuts() and GetLengthCuts(), G.Cosmo, 11 July 1996
// ----------------------------------------------------------------
// Class Description:
// The new ion Si28+ is defined as G4VIon.
// Each class inheriting from G4VIon
// corresponds to a particle type; one and only one
// instance for each class is guaranteed.
// Class Description - end
#ifndef G4IonSi28_h
#define G4IonSi28_h 1
#include "globals.hh"
#include "G4ios.hh"
#include "G4VIon.hh"
// ######################################################################
// ### IonSi28 ###
// ######################################################################
class G4IonSi28 : public G4VIon
{
private:
static G4IonSi28 theIonSi28;
public: // Without description
G4IonSi28(
const G4String& aName, G4double mass,
G4double width, G4double charge,
G4int iSpin, G4int iParity,
G4int iConjugation, G4int iIsospin,
G4int iIsospin3, G4int gParity,
const G4String& pType, G4int lepton,
G4int baryon, G4int encoding,
G4bool stable, G4double lifetime,
G4DecayTable *decaytable
);
virtual ~G4IonSi28();
static G4IonSi28* IonSi28Definition();
static G4IonSi28* IonSi28();
};
#endif
@@ -26,7 +26,7 @@
// * *
// **********************************
//
// $Id: RemSimAnalysisManager.hh,v 1.7 2004/11/23 11:43:21 guatelli Exp $
// $Id: RemSimAnalysisManager.hh,v 1.8 2005/09/08 06:56:18 guatelli Exp $
//
// Author: Susanna Guatelli (guatelli@ge.infn.it)
//
@@ -39,7 +39,7 @@
#include <vector>
#include "G4ThreeVector.hh"
# include <AIDA/AIDA.h>
#include "RemSimAnalysisMessenger.hh"
//#include "RemSimAnalysisMessenger.hh"
namespace AIDA
{
@@ -52,7 +52,7 @@ namespace AIDA
class ITreeFactory;
};
class RemSimAnalysisMessenger;
//class RemSimAnalysisMessenger;
class RemSimAnalysisManager {
public:
@@ -113,7 +113,7 @@ private:
AIDA::IHistogram2D* shape;
AIDA::IHistogram2D* energyShape;
RemSimAnalysisMessenger* messenger;
// RemSimAnalysisMessenger* messenger;
G4String fileFormat;
};
#endif
@@ -1,74 +0,0 @@
//
// ********************************************************************
// * 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: RemSimAnalysisMessenger.hh
// GEANT4 tag $Name: radioprotection-V07-00-01
//
// Author: Susanna Guatelli (Susanna.Guatelli@ge.infn.it)
//
// History:
// -----------
// 23 Nov 2004 Susanna Guatelli Created
//
// -------------------------------------------------------------------
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
#ifdef G4ANALYSIS_USE
#ifndef RemSimAnalysisMessenger_h
#define RemSimAnalysisMessenger_h 1
#include "globals.hh"
#include "G4UImessenger.hh"
#include "G4UIcmdWithAString.hh"
#include "G4UIcmdWithoutParameter.hh"
#include "RemSimAnalysisManager.hh"
#include "G4UIdirectory.hh"
class RemSimAnalysisManager;
//class G4UIdirectory;
//class G4UIcmdWithAString;
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
class RemSimAnalysisMessenger: public G4UImessenger
{
public:
RemSimAnalysisMessenger(RemSimAnalysisManager*);
~RemSimAnalysisMessenger();
void SetNewValue(G4UIcommand*, G4String);
private:
RemSimAnalysisManager* remsimAnalysis;
G4UIdirectory* analysisDir;
G4UIcmdWithAString* outputFileType;
};
#endif
#endif
@@ -1,66 +0,0 @@
//
// ********************************************************************
// * 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. *
// ********************************************************************
//
//
// **********************************
// * *
// * RemSimBasicGenerator.hh *
// * *
// **********************************
//
// $Id: RemSimBasicGenerator.hh,v 1.9 2005/05/19 13:30:59 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
//
// Author:Susanna Guatelli, guatelli@ge.infn.it
#ifndef RemSimBasicGenerator_h
#define RemSimBasicGenerator_h 1
#include "RemSimVPrimaryGeneratorFactory.hh"
#include "globals.hh"
#include "G4DataVector.hh"
class G4ParticleGun;
class G4Event;
class RemSimRunAction;
class RemSimBasicGenerator : public RemSimVPrimaryGeneratorFactory
{
public:
RemSimBasicGenerator();
~RemSimBasicGenerator();
public:
void GeneratePrimaries(G4Event* anEvent);
G4double GetInitialEnergy();
void SetMoon(G4bool){;};
void Read(G4String);
private:
G4ParticleGun* particleGun;
G4String randomDirection;
G4String spectrum;
G4double energy;
// RemSimRunAction* run;
};
#endif
@@ -28,7 +28,7 @@
// ************************
//
// $Id: RemSimDecay.hh,v 1.2 2004/05/22 12:57:04 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// GEANT4 tag $Name: geant4-08-00 $
//
// Author:Susanna Guatelli, guatelli@ge.infn.it
//
@@ -27,8 +27,8 @@
// * *
// ***************************
//
// $Id: RemSimDecorator.hh,v 1.8 2005/05/27 14:21:42 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// $Id: RemSimDecorator.hh,v 1.9 2005/09/08 06:56:18 guatelli Exp $
// GEANT4 tag $Name: geant4-08-00 $
//
// Author:Susanna Guatelli, guatelli@ge.infn.it
//
@@ -26,8 +26,8 @@
// * *
// **************************************
//
// $Id: RemSimDetectorConstruction.hh,v 1.11 2005/05/19 14:28:09 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// $Id: RemSimDetectorConstruction.hh,v 1.12 2005/09/08 06:56:18 guatelli Exp $
// GEANT4 tag $Name: geant4-08-00 $
//
// Author:Susanna Guatelli, guatelli@ge.infn.it
//
@@ -28,7 +28,7 @@
// *****************************************
//
// $Id: RemSimDetectorMessenger.hh,v 1.8 2004/05/22 12:57:04 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// GEANT4 tag $Name: geant4-08-00 $
//
//
#ifndef RemSimDetectorMessenger_h
@@ -22,7 +22,7 @@
//
//
// $Id: RemSimElectronEEDL.hh,v 1.3 2004/05/22 12:57:04 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// GEANT4 tag $Name: geant4-08-00 $
//
// Author: Susanna Guatelli, guatelli@ge.infn.it
@@ -28,7 +28,7 @@
// **********************************
//
// $Id: RemSimEventAction.hh,v 1.4 2004/05/22 12:57:04 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// GEANT4 tag $Name: geant4-08-00 $
//
// Author : Susanna Guatelli, guatelli@ge.infn.it
//
@@ -26,8 +26,8 @@
// * *
// **************************************
//
// $Id: RemSimHadronicBertini.hh,v 1.1 2004/11/23 14:37:47 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// $Id: RemSimHadronicBertini.hh,v 1.3 2005/09/08 06:56:18 guatelli Exp $
// GEANT4 tag $Name: geant4-08-00 $
//
// Author : Susanna Guatelli, guatelli@ge.infn.it
//
@@ -37,7 +37,7 @@
#include "G4VPhysicsConstructor.hh"
#include "globals.hh"
#include "G4ExcitationHandler.hh"
#include "G4QGSParticipants.hh"
#include "G4QGSModel.hh"
@@ -99,7 +99,7 @@ class RemSimHadronicBertini: public G4VPhysicsConstructor
G4TheoFSGenerator* QGSP_model;
G4GeneratorPrecompoundInterface* theCascade;
G4ExcitationHandler* theHandler;
G4ExcitationHandler theHandler;
G4PreCompoundModel* thePreEquilib;
G4QGSMFragmentation* theFragmentation;
G4ExcitedStringDecay* theStringDecay;
@@ -26,8 +26,8 @@
// * *
// **************************************
//
// $Id: RemSimHadronicBinary.hh,v 1.1 2004/11/23 14:37:47 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// $Id: RemSimHadronicBinary.hh,v 1.3 2005/09/08 06:56:18 guatelli Exp $
// GEANT4 tag $Name: geant4-08-00 $
//
// Author : Susanna Guatelli, guatelli@ge.infn.it
//
@@ -37,7 +37,7 @@
#include "G4VPhysicsConstructor.hh"
#include "globals.hh"
#include "G4ExcitationHandler.hh"
#include "G4QGSParticipants.hh"
#include "G4QGSModel.hh"
@@ -98,7 +98,7 @@ class RemSimHadronicBinary: public G4VPhysicsConstructor
G4TheoFSGenerator* QGSP_model;
G4GeneratorPrecompoundInterface* theCascade;
G4ExcitationHandler* theHandler;
G4ExcitationHandler theHandler;
G4PreCompoundModel* thePreEquilib;
G4QGSMFragmentation* theFragmentation;
G4ExcitedStringDecay* theStringDecay;
@@ -1,87 +0,0 @@
//
// ********************************************************************
// * 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. *
// ********************************************************************
//
#ifndef RemSimHit_h
#define RemSimHit_h 1
#include "G4VHit.hh"
#include "G4THitsCollection.hh"
#include "G4Allocator.hh"
#include "G4ThreeVector.hh"
class RemSimHit : public G4VHit
{
public:
RemSimHit();
~RemSimHit();
RemSimHit(const RemSimHit &right);
const RemSimHit& operator=(const RemSimHit &right);
G4int operator==(const RemSimHit &right) const;
inline void *operator new(size_t);
inline void operator delete(void *aHit);
void Draw();
void Print();
private:
G4double edep;
G4int xID;
G4int yID;
G4int zID;
G4ThreeVector position;
public:
inline void SetEdep(G4double de)
{ edep = de; }
inline G4double GetEdep()
{ return edep; }
inline void SetIndexes(G4int i)
{zID = i;}
inline G4int GetIndexZ(){return zID;}
inline void SetPosition(G4ThreeVector xyz)
{ position = xyz; }
inline G4ThreeVector GetPosition(){ return position; }
};
typedef G4THitsCollection<RemSimHit> RemSimHitsCollection;
extern G4Allocator<RemSimHit> RemSimHitAllocator;
inline void* RemSimHit::operator new(size_t)
{
void *aHit;
aHit = (void *) RemSimHitAllocator.MallocSingle();
return aHit;
}
inline void RemSimHit::operator delete(void *aHit)
{
RemSimHitAllocator.FreeSingle((RemSimHit*) aHit);
}
#endif
@@ -1,68 +0,0 @@
//
// ********************************************************************
// * 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: RemSimInterplanetarySpaceConfiguration.hh,v 1.9 2005/05/19 13:30:59 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
//
// Author : Susanna Guatelli, guatelli@ge.infn.it
//
#ifndef RemSimInterplanetarySpaceConfiguration_h
#define RemSimInterplanetarySpaceConfiguration_h 1
#include "RemSimVPrimaryGeneratorFactory.hh"
#include "globals.hh"
#include "G4DataVector.hh"
class G4ParticleGun;
class G4Event;
class RemSimRunAction;
class RemSimInterplanetarySpaceConfiguration :
public RemSimVPrimaryGeneratorFactory
{
public:
RemSimInterplanetarySpaceConfiguration();
~RemSimInterplanetarySpaceConfiguration();
public:
void GeneratePrimaries(G4Event* anEvent);
void MoonConfiguration();
G4double GetInitialEnergy();
void SetMoon(G4bool);
void Read(G4String);
void ReadData(G4double, G4String);
G4double GetPrimaryParticleEnergyDistributionSum();
private:
G4ParticleGun* particleGun;
G4String spectrum;
G4double energy;
G4bool moon;
G4DataVector* energies;
G4DataVector* data;
};
#endif
@@ -20,8 +20,8 @@
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: RemSimIonICRU.hh,v 1.3 2004/12/15 15:41:04 gunter Exp $
// GEANT4 tag $Name: geant4-07-01 $
// $Id: RemSimIonICRU.hh,v 1.4 2005/09/08 06:56:18 guatelli Exp $
// GEANT4 tag $Name: geant4-08-00 $
//
// Author: Susanna Guatelli, guatelli@ge.infn.it
@@ -22,7 +22,7 @@
//
//
// $Id: RemSimMaterial.hh,v 1.5 2004/05/22 12:57:04 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// GEANT4 tag $Name: geant4-08-00 $
//
// **********************************
// * *
@@ -27,8 +27,8 @@
// * *
// **************************************
//
// $Id: RemSimMoonHabitat.hh,v 1.4 2005/05/27 14:21:42 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// $Id: RemSimMoonHabitat.hh,v 1.5 2005/09/08 06:56:18 guatelli Exp $
// GEANT4 tag $Name: geant4-08-00 $
//
// Author:Susanna Guatelli, guatelli@ge.infn.it
//
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: RemSimMuonStandard.hh,v 1.2 2004/05/22 12:57:04 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// GEANT4 tag $Name: geant4-08-00 $
//
// Author:Susanna Guatelli, guatelli@ge.infn.it
//
@@ -19,15 +19,23 @@
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
// $Id: RemsimParticles.hh; May 2005
// ----------------------------------------------------------------------------
// GEANT 4 - Remsim example
// ----------------------------------------------------------------------------
// Code developed by:
//
// $Id: RemSimParticles.hh,v 1.4 2004/05/22 12:57:04 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
//
// Author:Susanna Guatelli, guatelli@ge.infn.it
//
// G.A.P. Cirrone(a)*, F. Di Rosa(a), S. Guatelli(b), G. Russo(a)
//
// (a) Laboratori Nazionali del Sud
// of the National Institute for Nuclear Physics, Catania, Italy
// (b) National Institute for Nuclear Physics Section of Genova, genova, Italy
//
// * cirrone@lns.infn.it
// ----------------------------------------------------------------------------
#ifndef REMSIMPARTICLES_HH
#define REMSIMPARTICLES_HH 1
#ifndef HADRONTHERAPYPARTICLES_HH
#define HADRONTHERAPYPARTICLES_HH 1
#include "globals.hh"
#include "G4VPhysicsConstructor.hh"
@@ -22,7 +22,7 @@
//
//
// $Id: RemSimPhotonEPDL.hh,v 1.3 2004/05/22 12:57:04 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// GEANT4 tag $Name: geant4-08-00 $
//
// Author:Susanna Guatelli, guatelli@ge.infn.it
//
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: RemSimPhysicsList.hh,v 1.5 2004/05/22 12:57:05 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// GEANT4 tag $Name: geant4-08-00 $
//
// Author: Susanna Guatelli, guatelli@ge.infn.it
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: RemSimPhysicsListMessenger.hh,v 1.3 2004/05/22 12:57:05 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// GEANT4 tag $Name: geant4-08-00 $
//
// Author: Susanna Guatelli, guatelli@ge.infn.it
@@ -22,7 +22,7 @@
//
//
// $Id: RemSimPositronStandard.hh,v 1.3 2004/05/22 12:57:05 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// GEANT4 tag $Name: geant4-08-00 $
//
// Author: Susanna Guatelli, guatelli@ge.infn.it
@@ -21,7 +21,7 @@
// ********************************************************************
//
//
// $Id: RemSimPrimaryGeneratorAction.hh,v 1.10 2005/05/19 13:30:59 guatelli Exp $// GEANT4 tag $Name: geant4-07-01 $
// $Id: RemSimPrimaryGeneratorAction.hh,v 1.12 2005/12/02 10:08:34 guatelli Exp $// GEANT4 tag $Name: geant4-08-00 $
//
// Author: Susanna Guatelli, guatelli@ge.infn.it
//
@@ -31,10 +31,9 @@
#include "G4VUserPrimaryGeneratorAction.hh"
#include "globals.hh"
class G4ParticleGun;
class G4GeneralParticleSource;
class G4Event;
class RemSimVPrimaryGeneratorFactory;
class RemSimPrimaryGeneratorMessenger;
class RemSimPrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction
{
public:
@@ -44,13 +43,9 @@ public:
public:
G4double GetInitialEnergy();
void GeneratePrimaries(G4Event* anEvent);
void SelectPrimaries(G4String value);
void Read(G4String);
private:
G4String value;
RemSimVPrimaryGeneratorFactory* primaryFactory;
RemSimPrimaryGeneratorMessenger* messenger;
private:
G4GeneralParticleSource* particleGun;
};
#endif
@@ -1,66 +0,0 @@
//
// ********************************************************************
// * 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. *
// ********************************************************************
//
//
// ************************************************
// * *
// * RemSimPrimaryGeneratorMessenger.hh *
// * *
// ************************************************
//
// $Id: RemSimPrimaryGeneratorMessenger.hh,v 1.6 2005/05/19 13:30:59 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
//
//Code developed by: S.Guatelli, guatelli@ge.infn.it
//
#ifndef RemSimPrimaryGeneratorMessenger_h
#define RemSimPrimaryGeneratorMessenger_h 1
#include "globals.hh"
#include "G4UImessenger.hh"
class RemSimPrimaryGeneratorAction;
class RemSimRunAction;
class G4UIdirectory;
class G4UIcmdWithAString;
class G4UIcmdWithAnInteger;
class G4UIcmdWithADoubleAndUnit;
class G4UIcmdWithoutParameter;
class RemSimPrimaryGeneratorMessenger: public G4UImessenger
{
public:
RemSimPrimaryGeneratorMessenger(RemSimPrimaryGeneratorAction* );
~RemSimPrimaryGeneratorMessenger();
void SetNewValue(G4UIcommand*, G4String);
private:
RemSimPrimaryGeneratorAction* primary;//pointer to detector
G4UIdirectory* gunDir;
G4UIcmdWithAString* fluxCmd; //change vehicle
G4UIcmdWithAString* particleCmd; //change vehicle
G4UIcmdWithAString* dataCmd;
};
#endif
@@ -22,7 +22,7 @@
//
//
// $Id: RemSimROGeometry.hh,v 1.5 2004/05/22 12:57:05 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// GEANT4 tag $Name: geant4-08-00 $
//
// ************************************
// * *
@@ -29,8 +29,8 @@
// Code developed by: S.Guatelli, guatelli@ge.infn.it
//
//
// $Id: RemSimRoofDecorator.hh,v 1.4 2005/05/27 14:21:42 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// $Id: RemSimRoofDecorator.hh,v 1.5 2005/09/08 06:56:18 guatelli Exp $
// GEANT4 tag $Name: geant4-08-00 $
//
#ifndef RemSimRoofDecorator_h
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: RemSimRunAction.hh,v 1.8 2005/05/19 13:30:59 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// $Id: RemSimRunAction.hh,v 1.9 2005/09/08 06:56:18 guatelli Exp $
// GEANT4 tag $Name: geant4-08-00 $
//
// Code developed by: S.Guatelli, guatelli@ge.infn.it
//
@@ -20,8 +20,8 @@
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: RemSimSensitiveDetector.hh,v 1.2 2004/05/22 12:57:05 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// $Id: RemSimSensitiveDetector.hh,v 1.3 2005/09/08 06:56:18 guatelli Exp $
// GEANT4 tag $Name: geant4-08-00 $
//
// Code developed by: S.Guatelli, guatelli@ge.infn.it
//
@@ -29,7 +29,7 @@
#define RemSimSensitiveDetector_h 1
#include "G4VSensitiveDetector.hh"
#include "RemSimHit.hh"
class G4Step;
class G4HCofThisEvent;
class G4TouchableHistory;
@@ -46,7 +46,7 @@ class RemSimSensitiveDetector : public G4VSensitiveDetector
void EndOfEvent(G4HCofThisEvent*HCE);
private:
RemSimHitsCollection *trackerCollection;
};
#endif
@@ -20,8 +20,8 @@
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: RemSimShelterSPEDecorator.hh,v 1.3 2005/05/27 14:21:42 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// $Id: RemSimShelterSPEDecorator.hh,v 1.4 2005/09/08 06:56:18 guatelli Exp $
// GEANT4 tag $Name: geant4-08-00 $
//
// Code developed by: S.Guatelli, guatelli@ge.infn.it
//
@@ -20,8 +20,8 @@
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: RemSimShieldingDecorator.hh,v 1.5 2005/05/27 14:21:42 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// $Id: RemSimShieldingDecorator.hh,v 1.6 2005/09/08 06:56:18 guatelli Exp $
// GEANT4 tag $Name: geant4-08-00 $
//
// Code developed by: S.Guatelli, guatelli@ge.infn.it
//
@@ -22,7 +22,7 @@
//
//
// $Id: RemSimSteppingAction.hh,v 1.3 2004/05/17 10:34:57 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// GEANT4 tag $Name: geant4-08-00 $
//
// Author: Susanna Guatelli (guatelli@ge.infn.it)
//
@@ -22,7 +22,7 @@
//
//
// $Id: RemSimSteppingActionMessenger.hh,v 1.2 2004/05/22 12:57:05 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// GEANT4 tag $Name: geant4-08-00 $
//
// Author: Susanna Guatelli, guatelli@ge.infn.it
//
@@ -20,8 +20,8 @@
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: RemSimVGeometryComponent.hh,v 1.6 2005/05/27 14:21:42 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// $Id: RemSimVGeometryComponent.hh,v 1.7 2005/09/08 06:56:18 guatelli Exp $
// GEANT4 tag $Name: geant4-08-00 $
//
// Code developed by: S.Guatelli, guatelli@ge.infn.it
//
@@ -1,49 +0,0 @@
//
// ********************************************************************
// * 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: RemSimVPrimaryGeneratorFactory.hh,v 1.9 2005/05/19 13:30:59 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
//
// Code developed by: S.Guatelli, guatelli@ge.infn.it
//
#ifndef RemSimVPrimaryGeneratorFactory_h
#define RemSimVPrimaryGeneratorFactory_h 1
#include "G4VUserPrimaryGeneratorAction.hh"
#include "globals.hh"
class RemSimVPrimaryGeneratorFactory : public G4VUserPrimaryGeneratorAction
{
public:
RemSimVPrimaryGeneratorFactory();
virtual ~RemSimVPrimaryGeneratorFactory();
public:
virtual void GeneratePrimaries(G4Event* anEvent)=0;
virtual G4double GetInitialEnergy()=0;
virtual void SetMoon(G4bool)=0; // Set moon configuration
virtual void Read(G4String)=0;
};
#endif
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: RemSimVehicle1.hh,v 1.7 2004/05/22 12:57:05 guatelli Exp $
// GEANT4 tag $Name: geant4-07-01 $
// GEANT4 tag $Name: geant4-08-00 $
//
// Code developed by: S.Guatelli, guatelli@ge.infn.it
//