Import Geant4 10.7.0 source tree

This commit is contained in:
Gabriele Cosmo
2020-12-04 12:30:43 +01:00
parent 67ba86d073
commit dab42d2018
3770 changed files with 226369 additions and 286486 deletions
@@ -23,86 +23,72 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// G4ParticleChangeForRadDecay
//
// Class description:
//
//
// ------------------------------------------------------------
// GEANT 4 class header file
//
//
// ------------------------------------------------------------
// Implemented for the new scheme 25 Jan. 2000 H.Kurahige
//
// Class Description
// This class is a concrete class for ParticleChange for RadDecay
//
#ifndef G4ParticleChangeForRadDecay_h
#define G4ParticleChangeForRadDecay_h 1
// Concrete class for ParticleChange for Radioactive Decay.
// Author: Hisaya Kurashige, 25 January 2000
// --------------------------------------------------------------------
#ifndef G4ParticleChangeForRadDecay_hh
#define G4ParticleChangeForRadDecay_hh 1
#include "globals.hh"
#include "G4ios.hh"
class G4VTouchable;
#include "G4ParticleChangeForDecay.hh"
class G4ParticleChangeForRadDecay: public G4ParticleChangeForDecay
{
public:
// default constructor
G4ParticleChangeForRadDecay(){}
class G4VTouchable;
// destructor
virtual ~G4ParticleChangeForRadDecay(){}
class G4ParticleChangeForRadDecay : public G4ParticleChangeForDecay
{
public:
G4ParticleChangeForRadDecay() {}
// Default constructor
virtual ~G4ParticleChangeForRadDecay() {}
// Destructor
inline void AddSecondary(G4Track* aSecondary);
// Add a secondary particle to theListOfSecondaries
protected:
// hide copy constructor and assignment operaor as protected
G4ParticleChangeForRadDecay(const G4ParticleChangeForRadDecay &) : G4ParticleChangeForDecay() {}
G4ParticleChangeForRadDecay & operator=(const G4ParticleChangeForRadDecay &){return *this;}
public: // with description
void AddSecondary(G4Track* aSecondary);
// Add a secondary particle to theListOfSecondaries.
// ------------------------------------------------------
inline G4ParticleChangeForRadDecay(const G4ParticleChangeForRadDecay&);
inline G4ParticleChangeForRadDecay& operator=(const G4ParticleChangeForRadDecay&);
// Hidden copy constructor and assignment operator
};
inline void G4ParticleChangeForRadDecay::AddSecondary(G4Track *aTrack)
// ----------------------
// Inline methods
// ----------------------
inline G4ParticleChangeForRadDecay::
G4ParticleChangeForRadDecay(const G4ParticleChangeForRadDecay&)
: G4ParticleChangeForDecay() {}
inline
G4ParticleChangeForRadDecay&
G4ParticleChangeForRadDecay::operator=(const G4ParticleChangeForRadDecay&)
{
return *this;
}
inline
void G4ParticleChangeForRadDecay::AddSecondary(G4Track* aTrack)
{
// add a secondary after size check
if (theSizeOftheListOfSecondaries > theNumberOfSecondaries) {
if(theSizeOftheListOfSecondaries > theNumberOfSecondaries)
{
theListOfSecondaries->SetElement(theNumberOfSecondaries, aTrack);
theNumberOfSecondaries++;
} else {
#ifdef G4VERBOSE
if (verboseLevel>0) {
G4cout << "G4VParticleChange::AddSecondary() Warning ";
G4cout << "theListOfSecondaries is full !! " << G4endl;
G4cout << " The track is deleted " << G4endl;
}
#endif
G4Exception("G4ParticleChangeForRadDecay::AddSecondary",
"TRACK101", JustWarning,
"Secondary Bug is full. The track is deleted");
++theNumberOfSecondaries;
}
else
{
G4Exception("G4ParticleChangeForRadDecay::AddSecondary()", "TRACK101",
JustWarning, "Secondaries buffer is full. Track is deleted!");
}
}
#endif