Import Geant4 10.7.0.beta source tree
This commit is contained in:
@@ -1,17 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
# CMakeLists.txt
|
||||
# Module : G4gdml
|
||||
# Package: Geant4.src.G4persistency.G4gdml
|
||||
#
|
||||
# CMakeLists.txt for building a single granular library.
|
||||
#
|
||||
# Generated on : 24/9/2010
|
||||
#
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
if(GEANT4_BUILD_GRANULAR_LIBS)
|
||||
include(Geant4MacroLibraryTargets)
|
||||
GEANT4_GRANULAR_LIBRARY_TARGET(COMPONENT sources.cmake)
|
||||
endif()
|
||||
|
||||
@@ -16,6 +16,13 @@ committal in the CVS repository !
|
||||
* Reverse chronological order (last date on top), please *
|
||||
----------------------------------------------------------
|
||||
|
||||
21 February 2020 Witek Pokorski (gdml-V10-06-01)
|
||||
- Fixed writting out and reading in of const properties of material.
|
||||
|
||||
11 December 2019 Ben Morgan (gdml-V10-06-00)
|
||||
- Cleanup CMake build, removing obsolete granular library options and
|
||||
explicit include_directories.
|
||||
|
||||
13 November 2019 Makoto Asai (gdml-V10-05-09)
|
||||
- G4GDMLRead.cc : avoid double-definition of units.
|
||||
|
||||
|
||||
@@ -48,6 +48,7 @@ class G4Isotope;
|
||||
class G4Element;
|
||||
class G4Material;
|
||||
class G4PhysicsOrderedFreeVector;
|
||||
class G4MaterialPropertiesTable;
|
||||
|
||||
class G4GDMLWriteMaterials : public G4GDMLWriteDefine
|
||||
{
|
||||
@@ -76,6 +77,8 @@ class G4GDMLWriteMaterials : public G4GDMLWriteDefine
|
||||
void PropertyWrite(xercesc::DOMElement*, const G4Material* const);
|
||||
void PropertyVectorWrite(const G4String&,
|
||||
const G4PhysicsOrderedFreeVector* const);
|
||||
void PropertyConstWrite(const G4String&,
|
||||
const G4double, const G4MaterialPropertiesTable*);
|
||||
protected:
|
||||
|
||||
std::vector<const G4Isotope*> isotopeList;
|
||||
|
||||
@@ -1,141 +1,95 @@
|
||||
#------------------------------------------------------------------------------
|
||||
# sources.cmake
|
||||
# Module : G4gdml
|
||||
# Package: Geant4.src.G4persistency.G4gdml
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
#
|
||||
# Generated on : 24/9/2010
|
||||
#
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
include_directories(${USOLIDS_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/digits/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/hits/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/event/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/divisions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/solids/Boolean/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/solids/CSG/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/solids/specific/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/graphics_reps/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/run/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/tracking/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/detector/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4gdml
|
||||
HEADERS
|
||||
G4GDMLAuxStructType.hh
|
||||
G4GDMLEvaluator.hh
|
||||
G4GDMLMessenger.hh
|
||||
G4GDMLParameterisation.hh
|
||||
G4GDMLParser.hh
|
||||
G4GDMLParser.icc
|
||||
G4GDMLRead.hh
|
||||
G4GDMLReadDefine.hh
|
||||
G4GDMLReadMaterials.hh
|
||||
G4GDMLReadParamvol.hh
|
||||
G4GDMLReadSetup.hh
|
||||
G4GDMLReadSolids.hh
|
||||
G4GDMLReadStructure.hh
|
||||
G4GDMLWrite.hh
|
||||
G4GDMLWriteDefine.hh
|
||||
G4GDMLWriteMaterials.hh
|
||||
G4GDMLWriteParamvol.hh
|
||||
G4GDMLWriteSetup.hh
|
||||
G4GDMLWriteSolids.hh
|
||||
G4GDMLWriteStructure.hh
|
||||
G4STRead.hh
|
||||
SOURCES
|
||||
G4GDMLEvaluator.cc
|
||||
G4GDMLMessenger.cc
|
||||
G4GDMLParameterisation.cc
|
||||
G4GDMLParser.cc
|
||||
G4GDMLRead.cc
|
||||
G4GDMLReadDefine.cc
|
||||
G4GDMLReadMaterials.cc
|
||||
G4GDMLReadParamvol.cc
|
||||
G4GDMLReadSetup.cc
|
||||
G4GDMLReadSolids.cc
|
||||
G4GDMLReadStructure.cc
|
||||
G4GDMLWrite.cc
|
||||
G4GDMLWriteDefine.cc
|
||||
G4GDMLWriteMaterials.cc
|
||||
G4GDMLWriteParamvol.cc
|
||||
G4GDMLWriteSetup.cc
|
||||
G4GDMLWriteSolids.cc
|
||||
G4GDMLWriteStructure.cc
|
||||
G4STRead.cc
|
||||
GRANULAR_DEPENDENCIES
|
||||
G4csg
|
||||
G4digits
|
||||
G4event
|
||||
G4geomBoolean
|
||||
G4geomdivision
|
||||
G4geometrymng
|
||||
G4globman
|
||||
G4graphics_reps
|
||||
G4hepnumerics
|
||||
G4hits
|
||||
G4intercoms
|
||||
G4materials
|
||||
G4navigation
|
||||
G4partman
|
||||
G4baryons
|
||||
G4bosons
|
||||
G4leptons
|
||||
G4procman
|
||||
G4cuts
|
||||
G4emutils
|
||||
G4run
|
||||
G4specsolids
|
||||
G4track
|
||||
G4tracking
|
||||
G4volumes
|
||||
GLOBAL_DEPENDENCIES
|
||||
G4digits_hits
|
||||
G4event
|
||||
G4geometry
|
||||
G4global
|
||||
G4graphics_reps
|
||||
G4intercoms
|
||||
G4materials
|
||||
G4particles
|
||||
G4processes
|
||||
G4run
|
||||
G4track
|
||||
G4tracking
|
||||
LINK_LIBRARIES
|
||||
XercesC::XercesC
|
||||
geant4_define_module(NAME G4gdml
|
||||
HEADERS
|
||||
G4GDMLAuxStructType.hh
|
||||
G4GDMLEvaluator.hh
|
||||
G4GDMLMessenger.hh
|
||||
G4GDMLParameterisation.hh
|
||||
G4GDMLParser.hh
|
||||
G4GDMLParser.icc
|
||||
G4GDMLRead.hh
|
||||
G4GDMLReadDefine.hh
|
||||
G4GDMLReadMaterials.hh
|
||||
G4GDMLReadParamvol.hh
|
||||
G4GDMLReadSetup.hh
|
||||
G4GDMLReadSolids.hh
|
||||
G4GDMLReadStructure.hh
|
||||
G4GDMLWrite.hh
|
||||
G4GDMLWriteDefine.hh
|
||||
G4GDMLWriteMaterials.hh
|
||||
G4GDMLWriteParamvol.hh
|
||||
G4GDMLWriteSetup.hh
|
||||
G4GDMLWriteSolids.hh
|
||||
G4GDMLWriteStructure.hh
|
||||
G4STRead.hh
|
||||
SOURCES
|
||||
G4GDMLEvaluator.cc
|
||||
G4GDMLMessenger.cc
|
||||
G4GDMLParameterisation.cc
|
||||
G4GDMLParser.cc
|
||||
G4GDMLRead.cc
|
||||
G4GDMLReadDefine.cc
|
||||
G4GDMLReadMaterials.cc
|
||||
G4GDMLReadParamvol.cc
|
||||
G4GDMLReadSetup.cc
|
||||
G4GDMLReadSolids.cc
|
||||
G4GDMLReadStructure.cc
|
||||
G4GDMLWrite.cc
|
||||
G4GDMLWriteDefine.cc
|
||||
G4GDMLWriteMaterials.cc
|
||||
G4GDMLWriteParamvol.cc
|
||||
G4GDMLWriteSetup.cc
|
||||
G4GDMLWriteSolids.cc
|
||||
G4GDMLWriteStructure.cc
|
||||
G4STRead.cc
|
||||
GRANULAR_DEPENDENCIES
|
||||
G4csg
|
||||
G4digits
|
||||
G4event
|
||||
G4geomBoolean
|
||||
G4geomdivision
|
||||
G4geometrymng
|
||||
G4globman
|
||||
G4graphics_reps
|
||||
G4hepnumerics
|
||||
G4hits
|
||||
G4intercoms
|
||||
G4materials
|
||||
G4navigation
|
||||
G4partman
|
||||
G4baryons
|
||||
G4bosons
|
||||
G4leptons
|
||||
G4procman
|
||||
G4cuts
|
||||
G4emutils
|
||||
G4run
|
||||
G4specsolids
|
||||
G4track
|
||||
G4tracking
|
||||
G4volumes
|
||||
GLOBAL_DEPENDENCIES
|
||||
G4digits_hits
|
||||
G4event
|
||||
G4geometry
|
||||
G4global
|
||||
G4graphics_reps
|
||||
G4intercoms
|
||||
G4materials
|
||||
G4particles
|
||||
G4processes
|
||||
G4run
|
||||
G4track
|
||||
G4tracking
|
||||
LINK_LIBRARIES
|
||||
XercesC::XercesC
|
||||
)
|
||||
|
||||
# List any source specific properties here
|
||||
|
||||
|
||||
@@ -230,6 +230,22 @@ void G4GDMLWriteMaterials::PropertyVectorWrite(const G4String& key,
|
||||
defineElement->appendChild(matrixElement);
|
||||
}
|
||||
|
||||
void G4GDMLWriteMaterials::PropertyConstWrite(const G4String& key,
|
||||
const G4double pval, const G4MaterialPropertiesTable* ptable)
|
||||
{
|
||||
const G4String matrixref = GenerateName(key, ptable);
|
||||
xercesc::DOMElement* matrixElement = NewElement("matrix");
|
||||
matrixElement->setAttributeNode(NewAttribute("name", matrixref));
|
||||
matrixElement->setAttributeNode(NewAttribute("coldim", "1"));
|
||||
std::ostringstream pvalues;
|
||||
|
||||
pvalues << pval;
|
||||
matrixElement->setAttributeNode(NewAttribute("values", pvalues.str()));
|
||||
|
||||
defineElement->appendChild(matrixElement);
|
||||
}
|
||||
|
||||
|
||||
void G4GDMLWriteMaterials::PropertyWrite(xercesc::DOMElement* matElement,
|
||||
const G4Material* const mat)
|
||||
{
|
||||
@@ -276,13 +292,15 @@ void G4GDMLWriteMaterials::PropertyWrite(xercesc::DOMElement* matElement,
|
||||
propElement = NewElement("property");
|
||||
propElement->setAttributeNode(NewAttribute("name",
|
||||
ptable->GetMaterialConstPropertyNames()[cpos->first]));
|
||||
propElement->setAttributeNode(NewAttribute("ref",
|
||||
ptable->GetMaterialConstPropertyNames()[cpos->first]));
|
||||
xercesc::DOMElement* constElement = NewElement("constant");
|
||||
constElement->setAttributeNode(NewAttribute("name",
|
||||
ptable->GetMaterialConstPropertyNames()[cpos->first]));
|
||||
constElement->setAttributeNode(NewAttribute("value", cpos->second));
|
||||
defineElement->appendChild(constElement);
|
||||
propElement->
|
||||
setAttributeNode(NewAttribute("ref",
|
||||
GenerateName(ptable->GetMaterialConstPropertyNames()[cpos->first],
|
||||
ptable)));
|
||||
|
||||
|
||||
PropertyConstWrite(ptable->GetMaterialConstPropertyNames()[cpos->first],
|
||||
cpos->second, ptable);
|
||||
|
||||
matElement->appendChild(propElement);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user