Import Geant4 11.3.0 source tree
This commit is contained in:
@@ -6,6 +6,9 @@ It must **not** be used as a substitute for writing good git commit messages!
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
## 2024-08-21 Gabriele Cosmo (had-im_r-V11-02-01, 00)
|
||||
- Fixed reported Coverity defects for use of std::move().
|
||||
|
||||
## 2022-11-26 Gabriele Cosmo (had-im_r-V11-00-01)
|
||||
- Fixed compilation warnings for implicit type conversions on macOS/XCode 14.1.
|
||||
|
||||
|
||||
@@ -24,22 +24,16 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// -------------------------------------------------------------------
|
||||
// GEANT4 Class file
|
||||
// G4CrossSectionSourcePtr
|
||||
//
|
||||
// Class description:
|
||||
//
|
||||
// File name: G4CrossSectionSourcePtr
|
||||
//
|
||||
// Author: Maria Grazia Pia (MariaGrazia.Pia@genova.infn.it)
|
||||
// A wrapper class to store pointers to G4VCrossSectionSource in vectors.
|
||||
//
|
||||
// Creation date: 15 April 1999
|
||||
//
|
||||
// Modifications:
|
||||
//
|
||||
// Author: Maria Grazia Pia, INFN Genova - April 1999
|
||||
// -------------------------------------------------------------------
|
||||
|
||||
#ifndef G4CROSSSECTIONSOURCEPTR_HH
|
||||
#define G4CROSSSECTIONSOURCEPTR_HH
|
||||
#define G4CROSSSECTIONSOURCEPTR_HH 1
|
||||
|
||||
#include "globals.hh"
|
||||
|
||||
@@ -47,51 +41,39 @@ class G4VCrossSectionSource;
|
||||
|
||||
class G4CrossSectionSourcePtr
|
||||
{
|
||||
public:
|
||||
public:
|
||||
|
||||
// This is a wrapper class to store pointers to G4VCrossSectionSource in vectors
|
||||
// Constructor
|
||||
G4CrossSectionSourcePtr(G4VCrossSectionSource* x = 0);
|
||||
G4CrossSectionSourcePtr(G4VCrossSectionSource* x = nullptr);
|
||||
|
||||
//Destructor
|
||||
~G4CrossSectionSourcePtr() { }
|
||||
// Destructor
|
||||
~G4CrossSectionSourcePtr() = default;
|
||||
|
||||
// Copy constructor
|
||||
G4CrossSectionSourcePtr(const G4CrossSectionSourcePtr& xw) : x_(xw.x_) { }
|
||||
G4CrossSectionSourcePtr(const G4CrossSectionSourcePtr& right);
|
||||
|
||||
// Move constructor
|
||||
G4CrossSectionSourcePtr(G4CrossSectionSourcePtr&& right);
|
||||
|
||||
// Operators
|
||||
|
||||
const G4VCrossSectionSource* operator() () const;
|
||||
G4VCrossSectionSource* operator() ();
|
||||
|
||||
G4CrossSectionSourcePtr& operator= (const G4CrossSectionSourcePtr& xw);
|
||||
// Assignment operator
|
||||
G4CrossSectionSourcePtr& operator= (const G4CrossSectionSourcePtr& right);
|
||||
|
||||
// Move assignment operator
|
||||
G4CrossSectionSourcePtr& operator=(G4CrossSectionSourcePtr&& right) noexcept;
|
||||
|
||||
G4bool operator== (const G4CrossSectionSourcePtr& right) const;
|
||||
|
||||
G4bool operator< (const G4CrossSectionSourcePtr& ) { return false; }
|
||||
inline G4bool operator< (const G4CrossSectionSourcePtr& ) { return false; }
|
||||
|
||||
private:
|
||||
private:
|
||||
|
||||
G4VCrossSectionSource* x_;
|
||||
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -193,7 +193,7 @@ BufferCrossSection(const G4ParticleDefinition * aP, const G4ParticleDefinition *
|
||||
G4double sqrts = (a4Momentum+b4Momentum).mag();
|
||||
aNewBuff.push_back(sqrts, crossSect);
|
||||
}
|
||||
theBuffer.push_back(aNewBuff);
|
||||
theBuffer.push_back(std::move(aNewBuff));
|
||||
// theBuffer.back().Print();
|
||||
}
|
||||
|
||||
|
||||
@@ -42,8 +42,8 @@
|
||||
G4CollisionNNElastic::G4CollisionNNElastic()
|
||||
{
|
||||
// Subtype of interacting particles
|
||||
G4String subType1 = G4Proton::ProtonDefinition()->GetParticleSubType();
|
||||
G4String subType2 = G4Neutron::NeutronDefinition()->GetParticleSubType();
|
||||
const G4String& subType1 = G4Proton::ProtonDefinition()->GetParticleSubType();
|
||||
const G4String& subType2 = G4Neutron::NeutronDefinition()->GetParticleSubType();
|
||||
|
||||
colliders1.push_back(subType1);
|
||||
colliders2.push_back(subType2);
|
||||
|
||||
@@ -42,8 +42,8 @@
|
||||
G4CollisionnpElastic::G4CollisionnpElastic()
|
||||
{
|
||||
// Subtype of interacting particles
|
||||
G4String subType1 = G4Proton::ProtonDefinition()->GetParticleSubType();
|
||||
G4String subType2 = G4Neutron::NeutronDefinition()->GetParticleSubType();
|
||||
const G4String& subType1 = G4Proton::ProtonDefinition()->GetParticleSubType();
|
||||
const G4String& subType2 = G4Neutron::NeutronDefinition()->GetParticleSubType();
|
||||
|
||||
colliders1.push_back(subType1);
|
||||
colliders2.push_back(subType2);
|
||||
|
||||
@@ -23,52 +23,72 @@
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
// G4CrossSectionSourcePtr
|
||||
//
|
||||
// -------------------------------------------------------------------
|
||||
// GEANT4 Class file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
//
|
||||
// File name: G4CrossSectionSourcePtr
|
||||
//
|
||||
// Author:
|
||||
//
|
||||
// Creation date: 15 April 1999
|
||||
//
|
||||
// Modifications:
|
||||
//
|
||||
// Author: Maria Grazia Pia, INFN Genova - April 1999
|
||||
// -------------------------------------------------------------------
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4VCrossSectionSource.hh"
|
||||
#include "G4CrossSectionSourcePtr.hh"
|
||||
|
||||
G4CrossSectionSourcePtr::G4CrossSectionSourcePtr(G4VCrossSectionSource* x): x_(x)
|
||||
{ }
|
||||
|
||||
G4CrossSectionSourcePtr& G4CrossSectionSourcePtr::operator= (const G4CrossSectionSourcePtr& xw)
|
||||
G4CrossSectionSourcePtr::
|
||||
G4CrossSectionSourcePtr(G4VCrossSectionSource* x)
|
||||
: x_(x)
|
||||
{
|
||||
if (this != &xw) {
|
||||
x_ = xw.x_;
|
||||
}
|
||||
|
||||
G4CrossSectionSourcePtr::
|
||||
G4CrossSectionSourcePtr(const G4CrossSectionSourcePtr& right)
|
||||
: x_(right.x_)
|
||||
{
|
||||
}
|
||||
|
||||
G4CrossSectionSourcePtr::
|
||||
G4CrossSectionSourcePtr(G4CrossSectionSourcePtr&& right)
|
||||
: x_( right.x_ )
|
||||
{
|
||||
right.x_ = nullptr;
|
||||
}
|
||||
|
||||
G4CrossSectionSourcePtr& G4CrossSectionSourcePtr::
|
||||
operator= (const G4CrossSectionSourcePtr& xw)
|
||||
{
|
||||
if (this != &xw)
|
||||
{
|
||||
x_ = xw.x_;
|
||||
}
|
||||
return *this;
|
||||
}
|
||||
|
||||
G4bool G4CrossSectionSourcePtr::operator==(const G4CrossSectionSourcePtr& right) const
|
||||
G4CrossSectionSourcePtr& G4CrossSectionSourcePtr::
|
||||
operator=(G4CrossSectionSourcePtr&& right) noexcept
|
||||
{
|
||||
if (this != &right)
|
||||
{
|
||||
// De not release our own resources, as not owning them!
|
||||
|
||||
// Simply transfer pointer from 'right' to 'this'
|
||||
x_ = right.x_;
|
||||
|
||||
// Reset 'right' to a valid state
|
||||
right.x_ = nullptr;
|
||||
}
|
||||
return *this;
|
||||
}
|
||||
|
||||
G4bool G4CrossSectionSourcePtr::
|
||||
operator==(const G4CrossSectionSourcePtr& right) const
|
||||
{
|
||||
return *(this->operator()()) == *right();
|
||||
}
|
||||
|
||||
const G4VCrossSectionSource* G4CrossSectionSourcePtr::operator() () const
|
||||
{ return x_; }
|
||||
{
|
||||
return x_;
|
||||
}
|
||||
|
||||
G4VCrossSectionSource* G4CrossSectionSourcePtr::operator() ()
|
||||
{ return x_; }
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
{
|
||||
return x_;
|
||||
}
|
||||
|
||||
@@ -71,10 +71,10 @@ G4ResonanceNames::G4ResonanceNames()
|
||||
|
||||
// Delta
|
||||
|
||||
G4String d1232Minus("delta-");
|
||||
G4String d1232Zero("delta0");
|
||||
G4String d1232Plus("delta+");
|
||||
G4String d1232PlusPlus("delta++");
|
||||
const G4String& d1232Minus("delta-");
|
||||
const G4String& d1232Zero("delta0");
|
||||
const G4String& d1232Plus("delta+");
|
||||
const G4String& d1232PlusPlus("delta++");
|
||||
nameDelta.push_back(d1232Minus);
|
||||
nameDelta.push_back(d1232Zero);
|
||||
nameDelta.push_back(d1232Plus);
|
||||
|
||||
@@ -126,13 +126,13 @@ G4XPDGElastic::G4XPDGElastic()
|
||||
|
||||
xMap[nn] = ppData;
|
||||
xMap[pp] = ppData;
|
||||
xMap[pn] = ppData;
|
||||
xMap[piPlusp] = pPiPlusData;
|
||||
xMap[piMinusp] = pPiMinusData;
|
||||
xMap[KPlusp] = pKPlusData;
|
||||
xMap[KMinusp] = pKMinusData;
|
||||
xMap[ppbar] = ppbarData;
|
||||
xMap[npbar] = npbarData;
|
||||
xMap[pn] = std::move(ppData);
|
||||
xMap[piPlusp] = std::move(pPiPlusData);
|
||||
xMap[piMinusp] = std::move(pPiMinusData);
|
||||
xMap[KPlusp] = std::move(pKPlusData);
|
||||
xMap[KMinusp] = std::move(pKMinusData);
|
||||
xMap[ppbar] = std::move(ppbarData);
|
||||
xMap[npbar] = std::move(npbarData);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -125,17 +125,17 @@ G4XPDGTotal::G4XPDGTotal()
|
||||
ggData.push_back(gammagammaPDGFit[i]);
|
||||
}
|
||||
|
||||
xMap[pp] = ppData;
|
||||
xMap[pn] = pnData;
|
||||
xMap[pp] = std::move(ppData);
|
||||
xMap[pn] = std::move(pnData);
|
||||
xMap[piPlusp] = pipData;
|
||||
xMap[piMinusp] = pipData;
|
||||
xMap[piMinusp] = std::move(pipData);
|
||||
xMap[KPlusp] = KpData;
|
||||
xMap[KPlusn] = KnData;
|
||||
xMap[KMinusp] = KpData;
|
||||
xMap[KMinusn] = KnData;
|
||||
xMap[gp] = gpData;
|
||||
xMap[gg] = ggData;
|
||||
xMap[nn] = nnData;
|
||||
xMap[KMinusp] = std::move(KpData);
|
||||
xMap[KMinusn] = std::move(KnData);
|
||||
xMap[gp] = std::move(gpData);
|
||||
xMap[gg] = std::move(ggData);
|
||||
xMap[nn] = std::move(nnData);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user