Import Geant4 10.6.0 source tree

This commit is contained in:
Gabriele Cosmo
2019-12-06 15:12:28 +01:00
parent b2a62ae692
commit 5baee230e9
2997 changed files with 141580 additions and 98673 deletions
@@ -23,9 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
//
//
//
// Class G4AssemblyVolume
//
// Class description:
@@ -39,12 +36,9 @@
// when placement is done. They are seen as independent physical volumes in
// space.
// Author: Radovan Chytracek, John Apostolakis, Gabriele Cosmo
// Date: November 2000
//
// History:
// March 2006, I.Hrivnacova - Extended to support assembly of assemblies
// of volumes and reflections
// Radovan Chytracek, John Apostolakis, Gabriele Cosmo: created - November 2000
// Ivana Hrivnacova: extended to support assembly of assemblies
// of volumes and reflections - March 2006
// ----------------------------------------------------------------------
#ifndef G4_ASSEMBLYVOLUME_H
#define G4_ASSEMBLYVOLUME_H
@@ -70,10 +64,10 @@ class G4AssemblyVolume
// At destruction all the generated physical volumes and associated
// rotation matrices of the imprints will be destroyed.
//
// The rotation matrix passed as argument can be 0 (identity) or an address
// even of an object on the upper stack frame. During assembly imprint, a
// new matrix is created anyway and it is kept track of it so it can be
// automatically deleted later at the end of the application.
// The rotation matrix passed as argument can be nullptr (identity) or an
// address even of an object on the upper stack frame. During assembly
// imprint, a new matrix is created anyway and it is kept track of it so
// it can be automatically deleted later at the end of the application.
// This policy is adopted since user has no control on the way the
// rotations are combined.
@@ -102,10 +96,10 @@ class G4AssemblyVolume
// Every next volume being added into the assembly will be placed
// w.r.t to the previous one.
//
// The rotation matrix passed as argument can be 0 (identity) or an address
// even of an object on the upper stack frame. During assembly imprint, a
// new matrix is created anyway and it is kept track of it so it can be
// automatically deleted later at the end of the application.
// The rotation matrix passed as argument can be nullptr (identity) or an
// address even of an object on the upper stack frame. During assembly
// imprint, a new matrix is created anyway and it is kept track of it so
// it can be automatically deleted later at the end of the application.
// This policy is adopted since user has no control on the way the
// rotations are combined.
@@ -145,18 +139,18 @@ class G4AssemblyVolume
// transformation in space as its argument.
inline std::vector<G4VPhysicalVolume*>::iterator GetVolumesIterator();
inline unsigned int TotalImprintedVolumes() const;
inline std::size_t TotalImprintedVolumes() const;
//
// Methods to access the physical volumes imprinted with the assembly.
inline G4Transform3D& GetImprintTransformation(unsigned int imprintID);
// Method to access transformation for each imprint
inline std::vector<G4AssemblyTriplet>::iterator GetTripletsIterator();
inline unsigned int TotalTriplets() const;
inline std::size_t TotalTriplets() const;
//
// Methods to access the triplets which are part of the assembly
unsigned int GetImprintsCount() const;
inline unsigned int GetImprintsCount() const;
//
// Return the number of made imprints.
@@ -164,21 +158,21 @@ class G4AssemblyVolume
//
// Return the number of existing instance of G4AssemblyVolume class.
unsigned int GetAssemblyID() const;
inline unsigned int GetAssemblyID() const;
//
// Return instance number of this concrete object.
protected:
void SetInstanceCount( unsigned int value );
void SetAssemblyID( unsigned int value );
inline void SetInstanceCount( unsigned int value );
inline void SetAssemblyID( unsigned int value );
void InstanceCountPlus();
void InstanceCountMinus();
void SetImprintsCount( unsigned int value );
void ImprintsCountPlus();
void ImprintsCountMinus();
inline void SetImprintsCount( unsigned int value );
inline void ImprintsCountPlus();
inline void ImprintsCountMinus();
//
// Internal counting mechanism, used to compute unique the names of
// physical volumes created by MakeImprint() methods.
@@ -220,7 +214,7 @@ class G4AssemblyVolume
//
// Class instance counter.
unsigned int fAssemblyID;
unsigned int fAssemblyID = 0;
//
// Assembly object ID derived from instance counter at construction time.