Import Geant4 10.2.0 source tree
This commit is contained in:
@@ -24,7 +24,7 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4PVDivision.cc 66356 2012-12-18 09:02:32Z gcosmo $
|
||||
// $Id: G4PVDivision.cc 92631 2015-09-09 12:53:04Z gcosmo $
|
||||
//
|
||||
// class G4PVDivision Implementation file
|
||||
//
|
||||
@@ -240,7 +240,6 @@ G4PVDivision::CheckAndSetParameters( const EAxis pAxis,
|
||||
//--------------------------------------------------------------------------
|
||||
G4PVDivision::~G4PVDivision()
|
||||
{
|
||||
delete GetRotation();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4ParameterisationPolycone.cc 75219 2013-10-29 16:12:13Z gcosmo $
|
||||
// $Id: G4ParameterisationPolycone.cc 92635 2015-09-09 13:39:54Z gcosmo $
|
||||
//
|
||||
// class G4ParameterisationPolycone Implementation file
|
||||
//
|
||||
@@ -48,6 +48,14 @@ G4VParameterisationPolycone( EAxis axis, G4int nDiv, G4double width,
|
||||
DivisionType divType )
|
||||
: G4VDivisionParameterisation( axis, nDiv, width, offset, divType, msolid )
|
||||
{
|
||||
#ifdef G4MULTITHREADED
|
||||
std::ostringstream message;
|
||||
message << "Divisions for G4Polycone currently NOT supported in MT-mode."
|
||||
<< G4endl
|
||||
<< "Sorry! Solid: " << msolid->GetName();
|
||||
G4Exception("G4VParameterisationPolycone::G4VParameterisationPolycone()",
|
||||
"GeomDiv0001", FatalException, message);
|
||||
#endif
|
||||
G4Polycone* msol = (G4Polycone*)(msolid);
|
||||
if (msolid->GetEntityType() == "G4ReflectedSolid")
|
||||
{
|
||||
@@ -474,7 +482,7 @@ void G4ParameterisationPolyconeZ::CheckParametersValidity()
|
||||
isegend = counter;
|
||||
}
|
||||
++counter;
|
||||
}
|
||||
} // Loop checking, 06.08.2015, G.Cosmo
|
||||
}
|
||||
else {
|
||||
// The start/end position of the divided region
|
||||
@@ -496,7 +504,7 @@ void G4ParameterisationPolyconeZ::CheckParametersValidity()
|
||||
isegend = counter;
|
||||
}
|
||||
++counter;
|
||||
}
|
||||
} // Loop checking, 06.08.2015, G.Cosmo
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4ParameterisationPolyhedra.cc 66356 2012-12-18 09:02:32Z gcosmo $
|
||||
// $Id: G4ParameterisationPolyhedra.cc 92635 2015-09-09 13:39:54Z gcosmo $
|
||||
//
|
||||
// class G4ParameterisationPolyhedra Implementation file
|
||||
//
|
||||
@@ -51,10 +51,18 @@ G4VParameterisationPolyhedra( EAxis axis, G4int nDiv, G4double width,
|
||||
DivisionType divType )
|
||||
: G4VDivisionParameterisation( axis, nDiv, width, offset, divType, msolid )
|
||||
{
|
||||
std::ostringstream message;
|
||||
#ifdef G4MULTITHREADED
|
||||
message << "Divisions for G4Polyhedra currently NOT supported in MT-mode."
|
||||
<< G4endl
|
||||
<< "Sorry! Solid: " << msolid->GetName();
|
||||
G4Exception("G4VParameterisationPolyhedra::G4VParameterisationPolyhedra()",
|
||||
"GeomDiv0001", FatalException, message);
|
||||
#endif
|
||||
|
||||
G4Polyhedra* msol = (G4Polyhedra*)(msolid);
|
||||
if ((msolid->GetEntityType() != "G4ReflectedSolid") && (msol->IsGeneric()))
|
||||
{
|
||||
std::ostringstream message;
|
||||
message << "Generic construct for G4Polyhedra NOT supported." << G4endl
|
||||
<< "Sorry! Solid: " << msol->GetName();
|
||||
G4Exception("G4VParameterisationPolyhedra::G4VParameterisationPolyhedra()",
|
||||
@@ -555,7 +563,7 @@ void G4ParameterisationPolyhedraZ::CheckParametersValidity()
|
||||
isegend = counter;
|
||||
}
|
||||
++counter;
|
||||
}
|
||||
} // Loop checking, 06.08.2015, G.Cosmo
|
||||
}
|
||||
else {
|
||||
// The start/end position of the divided region
|
||||
@@ -577,7 +585,7 @@ void G4ParameterisationPolyhedraZ::CheckParametersValidity()
|
||||
isegend = counter;
|
||||
}
|
||||
++counter;
|
||||
}
|
||||
} // Loop checking, 06.08.2015, G.Cosmo
|
||||
}
|
||||
|
||||
if ( isegstart != isegend ) {
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4ReplicatedSlice.cc 66356 2012-12-18 09:02:32Z gcosmo $
|
||||
// $Id: G4ReplicatedSlice.cc 89815 2015-04-30 14:50:22Z gcosmo $
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -319,6 +319,7 @@ void G4ReplicatedSlice::SetParameterisation( G4LogicalVolume* motherLogical,
|
||||
{
|
||||
G4VSolid* mSolid = motherLogical->GetSolid();
|
||||
G4String mSolidType = mSolid->GetEntityType();
|
||||
fparam = 0;
|
||||
|
||||
// If the solid is a reflected one, update type to its
|
||||
// real constituent solid.
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4VDivisionParameterisation.cc 66872 2013-01-15 01:25:57Z japost $
|
||||
// $Id: G4VDivisionParameterisation.cc 92625 2015-09-09 12:34:07Z gcosmo $
|
||||
//
|
||||
// class G4VDivisionParameterisation Implementation file
|
||||
//
|
||||
@@ -39,8 +39,10 @@
|
||||
#include "G4RotationMatrix.hh"
|
||||
#include "G4ReflectedSolid.hh"
|
||||
#include "G4GeometryTolerance.hh"
|
||||
#include "G4AutoDelete.hh"
|
||||
|
||||
G4ThreadLocal G4int G4VDivisionParameterisation::verbose = 5;
|
||||
const G4int G4VDivisionParameterisation::verbose = 5;
|
||||
G4ThreadLocal G4RotationMatrix* G4VDivisionParameterisation::fRot = 0;
|
||||
|
||||
//--------------------------------------------------------------------------
|
||||
G4VDivisionParameterisation::
|
||||
@@ -66,7 +68,7 @@ G4VDivisionParameterisation( EAxis axis, G4int nDiv,
|
||||
//--------------------------------------------------------------------------
|
||||
G4VDivisionParameterisation::~G4VDivisionParameterisation()
|
||||
{
|
||||
if (fDeleteSolid) delete fmotherSolid;
|
||||
if (fDeleteSolid) delete fmotherSolid;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------
|
||||
@@ -87,13 +89,13 @@ void
|
||||
G4VDivisionParameterisation::
|
||||
ChangeRotMatrix( G4VPhysicalVolume *physVol, G4double rotZ ) const
|
||||
{
|
||||
G4RotationMatrix* rm = new G4RotationMatrix();
|
||||
rm->rotateZ( rotZ );
|
||||
//----- set rotation
|
||||
//----- delete first old rotation matrix
|
||||
G4RotationMatrix* rmold = physVol->GetRotation();
|
||||
delete rmold;
|
||||
physVol->SetRotation(rm);
|
||||
if (!fRot)
|
||||
{
|
||||
fRot = new G4RotationMatrix();
|
||||
G4AutoDelete::Register(fRot);
|
||||
}
|
||||
fRot->rotateZ( rotZ );
|
||||
physVol->SetRotation(fRot);
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user