Import Geant4 9.1.0 source tree
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
# $Id: GNUmakefile,v 1.1 2007/11/13 10:03:33 kmura Exp $
|
||||
# $Name: geant4-09-01 $
|
||||
# ===========================================================
|
||||
# Makefile for building Geant4Py modules
|
||||
# ===========================================================
|
||||
include ../../config/config.gmk
|
||||
|
||||
# python module name
|
||||
MODULE := G4gdml#
|
||||
|
||||
include $(G4PY_INSTALL)/config/g4py.gmk
|
||||
include $(G4PY_INSTALL)/config/module.gmk
|
||||
include $(G4PY_INSTALL)/config/install.gmk
|
||||
|
||||
@@ -0,0 +1,66 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
// $Id: pyG4GDMLWriter.cc,v 1.1 2007/11/13 10:03:23 kmura Exp $
|
||||
// $Name: geant4-09-01 $
|
||||
// ====================================================================
|
||||
// pyG4GDMLWriter.cc
|
||||
//
|
||||
// based on 2.10.0
|
||||
//
|
||||
// 2007 Q
|
||||
// ====================================================================
|
||||
#include <boost/python.hpp>
|
||||
#include "G4Writer/G4GDMLWriter.h"
|
||||
|
||||
using namespace boost::python;
|
||||
|
||||
// ====================================================================
|
||||
// thin wrappers
|
||||
// ====================================================================
|
||||
namespace pyG4GDMLWriter {
|
||||
|
||||
// DumpGeometryInfo
|
||||
void (G4GDMLWriter::*f1_DumpGeometryInfo)(G4VPhysicalVolume*)
|
||||
= &G4GDMLWriter::DumpGeometryInfo;
|
||||
|
||||
}
|
||||
|
||||
using namespace pyG4GDMLWriter;
|
||||
|
||||
// ====================================================================
|
||||
// module definition
|
||||
// ====================================================================
|
||||
void export_G4GDMLWriter()
|
||||
{
|
||||
class_<G4GDMLWriter>("G4GDMLWriter", "GDML writer class")
|
||||
.def(init<>())
|
||||
.def(init<int>())
|
||||
.def(init<std::string, std::string>())
|
||||
.def(init<std::string, std::string, int>())
|
||||
// ---
|
||||
.def("DumpGeometryInfo", f1_DumpGeometryInfo)
|
||||
;
|
||||
}
|
||||
@@ -0,0 +1,85 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
// $Id: pyGDMLProcessor.cc,v 1.1 2007/11/13 10:03:23 kmura Exp $
|
||||
// $Name: geant4-09-01 $
|
||||
// ====================================================================
|
||||
// pyGDMLProcessor.cc
|
||||
//
|
||||
// based on 2.10.0
|
||||
//
|
||||
// 2007 Q
|
||||
// ====================================================================
|
||||
#include <boost/python.hpp>
|
||||
#include "G4Processor/GDMLProcessor.h"
|
||||
|
||||
using namespace boost::python;
|
||||
|
||||
// ====================================================================
|
||||
// thin wrappers
|
||||
// ====================================================================
|
||||
namespace pyG4GDMLProcessor {
|
||||
|
||||
// GetWorldVolumeOfParsedFile
|
||||
const G4VPhysicalVolume* (GDMLProcessor::*f1_GetWorldVolumeOfParsedFile)
|
||||
(const std::string&)= &GDMLProcessor::GetWorldVolumeOfParsedFile;
|
||||
|
||||
const G4VPhysicalVolume* (GDMLProcessor::*f2_GetWorldVolumeOfParsedFile)
|
||||
(const char*)= &GDMLProcessor::GetWorldVolumeOfParsedFile;
|
||||
|
||||
// GetWorldVolume
|
||||
const G4VPhysicalVolume* (GDMLProcessor::*f1_GetWorldVolume)()
|
||||
= &GDMLProcessor::GetWorldVolume;
|
||||
|
||||
G4VPhysicalVolume* (GDMLProcessor::*f2_GetWorldVolume)(int)
|
||||
= &GDMLProcessor::GetWorldVolume;
|
||||
|
||||
}
|
||||
|
||||
using namespace pyG4GDMLProcessor;
|
||||
|
||||
// ====================================================================
|
||||
// module definition
|
||||
// ====================================================================
|
||||
void export_GDMLProcessor()
|
||||
{
|
||||
class_<GDMLProcessor, boost::noncopyable>
|
||||
("GDMLProcessor", "GDML processor", no_init)
|
||||
// ---
|
||||
.def("GetInstance", &GDMLProcessor::GetInstance,
|
||||
return_value_policy<reference_existing_object>())
|
||||
.staticmethod("GetInstance")
|
||||
// ---
|
||||
.def("GetWorldVolumeOfParsedFile", f1_GetWorldVolumeOfParsedFile,
|
||||
return_value_policy<reference_existing_object>())
|
||||
.def("GetWorldVolumeOfParsedFile", f2_GetWorldVolumeOfParsedFile,
|
||||
return_value_policy<reference_existing_object>())
|
||||
.def("GetWorldVolume", f1_GetWorldVolume,
|
||||
return_value_policy<reference_existing_object>())
|
||||
.def("GetWorldVolume", f2_GetWorldVolume,
|
||||
return_value_policy<reference_existing_object>())
|
||||
;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,71 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
// $Id: pyProcessingConfigurator.cc,v 1.1 2007/11/13 10:03:23 kmura Exp $
|
||||
// $Name: geant4-09-01 $
|
||||
// ====================================================================
|
||||
// pyProcessingConfigurator.cc
|
||||
//
|
||||
// based on 2.10.0
|
||||
//
|
||||
// 2007 Q
|
||||
// ====================================================================
|
||||
#include <boost/python.hpp>
|
||||
#include "Saxana/ProcessingConfigurator.h"
|
||||
|
||||
using namespace boost::python;
|
||||
|
||||
// ====================================================================
|
||||
// module definition
|
||||
// ====================================================================
|
||||
void export_ProcessingConfigurator()
|
||||
{
|
||||
scope in_ProcessingConfigurator=
|
||||
class_<ProcessingConfigurator>("ProcessingConfigurator",
|
||||
"processing configurator class")
|
||||
// ---
|
||||
.def("SetMode", &ProcessingConfigurator::SetMode)
|
||||
.def("Mode", &ProcessingConfigurator::Mode)
|
||||
.def("SetURI", &ProcessingConfigurator::SetURI)
|
||||
.def("URI", &ProcessingConfigurator::URI,
|
||||
return_value_policy<return_by_value>())
|
||||
.def("SetType", &ProcessingConfigurator::SetType)
|
||||
.def("Type", &ProcessingConfigurator::Type,
|
||||
return_value_policy<return_by_value>())
|
||||
.def("SetSetupName", &ProcessingConfigurator::SetSetupName)
|
||||
.def("SetupName", &ProcessingConfigurator::SetupName,
|
||||
return_value_policy<return_by_value>())
|
||||
.def("SetSetupVersion", &ProcessingConfigurator::SetSetupVersion)
|
||||
.def("SetupVersion", &ProcessingConfigurator::SetupVersion,
|
||||
return_value_policy<return_by_value>())
|
||||
;
|
||||
|
||||
enum_<ProcessingConfigurator::SAXMode>("SAXMode")
|
||||
.value("eBatch", ProcessingConfigurator::eBatch)
|
||||
.value("eProgressive", ProcessingConfigurator::eProgressive)
|
||||
.value("eSearch", ProcessingConfigurator::eSearch)
|
||||
;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,54 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
// $Id: pySAXProcessor.cc,v 1.1 2007/11/13 10:03:23 kmura Exp $
|
||||
// $Name: geant4-09-01 $
|
||||
// ====================================================================
|
||||
// pySAXProcessor.cc
|
||||
//
|
||||
// based on 2.10.0
|
||||
//
|
||||
// 2007 Q
|
||||
// ====================================================================
|
||||
#include <boost/python.hpp>
|
||||
#include "Saxana/SAXProcessor.h"
|
||||
#include "Saxana/ProcessingConfigurator.h"
|
||||
|
||||
using namespace boost::python;
|
||||
|
||||
// ====================================================================
|
||||
// module definition
|
||||
// ====================================================================
|
||||
void export_SAXProcessor()
|
||||
{
|
||||
class_<SAXProcessor>("SAXProcessor", "SAX processor class")
|
||||
// ---
|
||||
.def("Initialize", &SAXProcessor::Initialize)
|
||||
.def("Configure", &SAXProcessor::Configure)
|
||||
.def("Run", &SAXProcessor::Run)
|
||||
.def("Finalize", &SAXProcessor::Finalize)
|
||||
;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,62 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
// $Id: pyStatusCode.cc,v 1.1 2007/11/13 10:03:23 kmura Exp $
|
||||
// $Name: geant4-09-01 $
|
||||
// ====================================================================
|
||||
// pyStatusCode.cc
|
||||
//
|
||||
// based on 2.10.0
|
||||
//
|
||||
// 2007 Q
|
||||
// ====================================================================
|
||||
#include <boost/python.hpp>
|
||||
#include "Saxana/StatusCode.h"
|
||||
|
||||
using namespace boost::python;
|
||||
|
||||
// ====================================================================
|
||||
// module definition
|
||||
// ====================================================================
|
||||
void export_StatusCode()
|
||||
{
|
||||
scope in_StatusCode=
|
||||
class_<StatusCode>("StatusCode", "status code")
|
||||
.def(init<>())
|
||||
.def(init<StatusCode::EInfo>())
|
||||
// ---
|
||||
.def("IsOk", &StatusCode::IsOk)
|
||||
.def("IsFailure", &StatusCode::IsFailure)
|
||||
.def("Info", &StatusCode::Info)
|
||||
;
|
||||
|
||||
enum_<StatusCode::EInfo>("EInfo")
|
||||
.value("eError", StatusCode::eError)
|
||||
.value("eOk", StatusCode::eOk)
|
||||
.value("eWarning", StatusCode::eWarning)
|
||||
.value("eParserInitFailure", StatusCode::eParserInitFailure)
|
||||
;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
// $Id: pymodG4gdml.cc,v 1.1 2007/11/13 10:03:23 kmura Exp $
|
||||
// $Name: geant4-09-01 $
|
||||
// ====================================================================
|
||||
// pymodG4gdml.cc [Geant4Py module]
|
||||
//
|
||||
// 2007 Q
|
||||
// ====================================================================
|
||||
#include <boost/python.hpp>
|
||||
|
||||
using namespace boost::python;
|
||||
|
||||
// ====================================================================
|
||||
// module definition
|
||||
// ====================================================================
|
||||
|
||||
void export_G4GDMLWriter();
|
||||
void export_GDMLProcessor();
|
||||
void export_SAXProcessor();
|
||||
void export_StatusCode();
|
||||
void export_ProcessingConfigurator();
|
||||
|
||||
BOOST_PYTHON_MODULE(G4gdml)
|
||||
{
|
||||
export_G4GDMLWriter();
|
||||
export_GDMLProcessor();
|
||||
export_SAXProcessor();
|
||||
export_StatusCode();
|
||||
export_ProcessingConfigurator();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user