|
||||
File indexing completed on 2025-01-18 09:59:02
0001 // 0002 // ******************************************************************** 0003 // * License and Disclaimer * 0004 // * * 0005 // * The Geant4 software is copyright of the Copyright Holders of * 0006 // * the Geant4 Collaboration. It is provided under the terms and * 0007 // * conditions of the Geant4 Software License, included in the file * 0008 // * LICENSE and available at http://cern.ch/geant4/license . These * 0009 // * include a list of copyright holders. * 0010 // * * 0011 // * Neither the authors of this software system, nor their employing * 0012 // * institutes,nor the agencies providing financial support for this * 0013 // * work make any representation or warranty, express or implied, * 0014 // * regarding this software system or assume any liability for its * 0015 // * use. Please see the license in the file LICENSE and URL above * 0016 // * for the full disclaimer and the limitation of liability. * 0017 // * * 0018 // * This code implementation is the result of the scientific and * 0019 // * technical work of the GEANT4 collaboration. * 0020 // * By using, copying, modifying or distributing the software (or * 0021 // * any work based on the software) you agree to acknowledge its * 0022 // * use in resulting scientific publications, and indicate your * 0023 // * acceptance of all terms of the Geant4 Software license. * 0024 // ******************************************************************** 0025 // 0026 // 0027 //--------------------------------------------------------------------------- 0028 // 0029 // ClassName: RegisterPhysicsConstructors.icc 0030 // 0031 // Author: R. Hatcher 2018-02-06 0032 // 0033 // Modified: 0034 // 0035 //---------------------------------------------------------------------------- 0036 0037 #if defined(WIN32) && !defined(USING_STATIC_LIBS) 0038 // WIN32 linker/loader works differently than on unix 0039 // these G4_REFERENCE_PHYSCONSTR_FACTORY macro calls in fact can't be used 0040 // in "shared" link mode. In principle they _should_ be called 0041 // in "static" link mode (that's the point of this file). 0042 // Currently there is no build -D flag that distinquishes the two cases... 0043 // but users can set USING_STATIC_LIBS 0044 #define G4RegisterPhysicsConstructors_icc 1 0045 #endif // WIN32 0046 0047 // 0048 #ifndef G4RegisterPhysicsConstructors_icc 0049 #define G4RegisterPhysicsConstructors_icc 1 0050 0051 #include "G4PhysicsConstructorFactory.hh" 0052 // 0053 // External reference to phy ctor factories for running with 'static' 0054 // libraries to pull the references of the declared factories into the 0055 // same compilation unit as the registry itself. 0056 // No harm having them in the non-static case. 0057 // 0058 // Using the G4_REFERENCE_PHYSCONSTR_FACTORY macro does _not_ require 0059 // including the headers (using G4_DECLARE_PHYSCONSTR_FACTORY does, 0060 // but those are done in each phys_ctor's implementation itself). 0061 // 0062 // For static builds this needs to be included in a compilation unit 0063 // for something that is going to use the G4PhysicsConstructorRegistry 0064 // as a source of physics constructors (but not in the registration 0065 // of the constructors themselves; that is via the G4_DECLARE_PHYSCONSTR_FACTORY 0066 // macro). This is necessary when using static libraries in order that the 0067 // individual phys_ctor compilation units to be included in the final 0068 // executable, and thus available to self-register w/ the 0069 // G4PhysicsConstructorRegistry to make themselves available. 0070 // 0071 // For granular builds this needs to be included at a higher level 0072 // than any of the phys_ctor_X libraries in order to avoid introducing 0073 // an effective ciruclar link. 0074 0075 //#include "G4ChargeExchangePhysics.hh" 0076 G4_REFERENCE_PHYSCONSTR_FACTORY(G4ChargeExchangePhysics); 0077 0078 //#include "G4DecayPhysics.hh" 0079 G4_REFERENCE_PHYSCONSTR_FACTORY(G4DecayPhysics); 0080 0081 //#include "G4EmDNAChemistry.hh" 0082 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmDNAChemistry); 0083 0084 //#include "G4EmDNAPhysics.hh" 0085 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmDNAPhysics); 0086 0087 //#include "G4EmDNAPhysics_option1.hh" 0088 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmDNAPhysics_option1); 0089 0090 //#include "G4EmDNAPhysics_option2.hh" 0091 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmDNAPhysics_option2); 0092 0093 //#include "G4EmDNAPhysics_option3.hh" 0094 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmDNAPhysics_option3); 0095 0096 //#include "G4EmDNAPhysics_option4.hh" 0097 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmDNAPhysics_option4); 0098 0099 //#include "G4EmDNAPhysics_option5.hh" 0100 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmDNAPhysics_option5); 0101 0102 //#include "G4EmDNAPhysics_option6.hh" 0103 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmDNAPhysics_option6); 0104 0105 //#include "G4EmDNAPhysics_option7.hh" 0106 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmDNAPhysics_option7); 0107 0108 //#include "G4EmDNAPhysics_stationary.hh" 0109 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmDNAPhysics_stationary); 0110 0111 //#include "G4EmDNAPhysics_stationary_option2.hh" 0112 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmDNAPhysics_stationary_option2); 0113 0114 //#include "G4EmDNAPhysics_stationary_option4.hh" 0115 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmDNAPhysics_stationary_option4); 0116 0117 //#include "G4EmDNAPhysics_stationary_option6.hh" 0118 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmDNAPhysics_stationary_option6); 0119 0120 //#include "G4EmExtraPhysics.hh" 0121 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmExtraPhysics); 0122 0123 //#include "G4EmLivermorePhysics.hh" 0124 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmLivermorePhysics); 0125 0126 //#include "G4EmLivermorePolarizedPhysics.hh" 0127 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmLivermorePolarizedPhysics); 0128 0129 //#include "G4EmLowEPPhysics.hh" 0130 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmLowEPPhysics); 0131 0132 //#include "G4EmPenelopePhysics.hh" 0133 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmPenelopePhysics); 0134 0135 //#include "G4EmStandardPhysics.hh" 0136 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmStandardPhysics); 0137 0138 //#include "G4EmStandardPhysicsGS.hh" 0139 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmStandardPhysicsGS); 0140 0141 //#include "G4EmStandardPhysicsSS.hh" 0142 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmStandardPhysicsSS); 0143 0144 //#include "G4EmStandardPhysicsWVI.hh" 0145 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmStandardPhysicsWVI); 0146 0147 //#include "G4EmStandardPhysics_option1.hh" 0148 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmStandardPhysics_option1); 0149 0150 //#include "G4EmStandardPhysics_option2.hh" 0151 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmStandardPhysics_option2); 0152 0153 //#include "G4EmStandardPhysics_option3.hh" 0154 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmStandardPhysics_option3); 0155 0156 //#include "G4EmStandardPhysics_option4.hh" 0157 G4_REFERENCE_PHYSCONSTR_FACTORY(G4EmStandardPhysics_option4); 0158 0159 //#include "G4GenericBiasingPhysics.hh" 0160 G4_REFERENCE_PHYSCONSTR_FACTORY(G4GenericBiasingPhysics); 0161 0162 //#include "G4HadronDElasticPhysics.hh" 0163 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronDElasticPhysics); 0164 0165 //#include "G4HadronElasticPhysics.hh" 0166 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronElasticPhysics); 0167 0168 //#include "G4HadronElasticPhysicsHP.hh" 0169 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronElasticPhysicsHP); 0170 0171 //#include "G4HadronElasticPhysicsLEND.hh" 0172 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronElasticPhysicsLEND); 0173 0174 //#include "G4HadronElasticPhysicsXS.hh" 0175 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronElasticPhysicsXS); 0176 0177 //#include "G4HadronHElasticPhysics.hh" 0178 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronHElasticPhysics); 0179 0180 //#include "G4HadronInelasticQBBC.hh" 0181 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronInelasticQBBC); 0182 0183 //#include "G4HadronPhysicsFTFP_BERT.hh" 0184 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronPhysicsFTFP_BERT); 0185 0186 //#include "G4HadronPhysicsFTFP_BERT_ATL.hh" 0187 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronPhysicsFTFP_BERT_ATL); 0188 0189 //#include "G4HadronPhysicsFTFP_BERT_HP.hh" 0190 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronPhysicsFTFP_BERT_HP); 0191 0192 //#include "G4HadronPhysicsFTFP_BERT_TRV.hh" 0193 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronPhysicsFTFP_BERT_TRV); 0194 0195 //#include "G4HadronPhysicsFTF_BIC.hh" 0196 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronPhysicsFTF_BIC); 0197 0198 //#include "G4HadronPhysicsINCLXX.hh" 0199 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronPhysicsINCLXX); 0200 0201 //#include "G4HadronPhysicsNuBeam.hh" 0202 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronPhysicsNuBeam); 0203 0204 //#include "G4HadronPhysicsQGSP_BERT.hh" 0205 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronPhysicsQGSP_BERT); 0206 0207 //#include "G4HadronPhysicsQGSP_BERT_HP.hh" 0208 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronPhysicsQGSP_BERT_HP); 0209 0210 //#include "G4HadronPhysicsQGSP_BIC.hh" 0211 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronPhysicsQGSP_BIC); 0212 0213 //#include "G4HadronPhysicsQGSP_BIC_AllHP.hh" 0214 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronPhysicsQGSP_BIC_AllHP); 0215 0216 //#include "G4HadronPhysicsQGSP_BIC_HP.hh" 0217 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronPhysicsQGSP_BIC_HP); 0218 0219 //#include "G4HadronPhysicsQGSP_FTFP_BERT.hh" 0220 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronPhysicsQGSP_FTFP_BERT); 0221 0222 //#include "G4HadronPhysicsQGS_BIC.hh" 0223 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronPhysicsQGS_BIC); 0224 0225 //#include "G4HadronPhysicsShielding.hh" 0226 G4_REFERENCE_PHYSCONSTR_FACTORY(G4HadronPhysicsShielding); 0227 0228 //#include "G4ImportanceBiasing.hh" 0229 G4_REFERENCE_PHYSCONSTR_FACTORY(G4ImportanceBiasing); 0230 0231 //#include "G4IonBinaryCascadePhysics.hh" 0232 G4_REFERENCE_PHYSCONSTR_FACTORY(G4IonBinaryCascadePhysics); 0233 0234 //#include "G4IonElasticPhysics.hh" 0235 G4_REFERENCE_PHYSCONSTR_FACTORY(G4IonElasticPhysics); 0236 0237 //#include "G4IonINCLXXPhysics.hh" 0238 G4_REFERENCE_PHYSCONSTR_FACTORY(G4IonINCLXXPhysics); 0239 0240 //#include "G4IonPhysics.hh" 0241 G4_REFERENCE_PHYSCONSTR_FACTORY(G4IonPhysics); 0242 0243 //#include "G4IonQMDPhysics.hh" 0244 G4_REFERENCE_PHYSCONSTR_FACTORY(G4IonQMDPhysics); 0245 0246 //#include "G4NeutronCrossSectionXS.hh" 0247 G4_REFERENCE_PHYSCONSTR_FACTORY(G4NeutronCrossSectionXS); 0248 0249 //#include "G4NeutronTrackingCut.hh" 0250 G4_REFERENCE_PHYSCONSTR_FACTORY(G4NeutronTrackingCut); 0251 0252 //#include "G4OpticalPhysics.hh" 0253 G4_REFERENCE_PHYSCONSTR_FACTORY(G4OpticalPhysics); 0254 0255 //#include "G4ParallelWorldPhysics.hh" 0256 G4_REFERENCE_PHYSCONSTR_FACTORY(G4ParallelWorldPhysics); 0257 0258 //#include "G4RadioactiveDecayPhysics.hh" 0259 G4_REFERENCE_PHYSCONSTR_FACTORY(G4RadioactiveDecayPhysics); 0260 0261 //#include "G4SpinDecayPhysics.hh" 0262 G4_REFERENCE_PHYSCONSTR_FACTORY(G4SpinDecayPhysics); 0263 0264 //#include "G4StepLimiterPhysics.hh" 0265 G4_REFERENCE_PHYSCONSTR_FACTORY(G4StepLimiterPhysics); 0266 0267 //#include "G4StoppingPhysics.hh" 0268 G4_REFERENCE_PHYSCONSTR_FACTORY(G4StoppingPhysics); 0269 0270 //#include "G4StoppingPhysicsWithINCLXX.hh" 0271 G4_REFERENCE_PHYSCONSTR_FACTORY(G4StoppingPhysicsWithINCLXX); 0272 0273 //#include "G4WeightWindowBiasing.hh" 0274 G4_REFERENCE_PHYSCONSTR_FACTORY(G4WeightWindowBiasing); 0275 0276 #endif // G4RegisterPhysicsConstructors_icc
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |