Geant4 Cross Reference |
>> 1 // This code implementation is the intellectual property of >> 2 // the GEANT4 collaboration. >> 3 // >> 4 // By copying, distributing or modifying the Program (or any work >> 5 // based on the Program) you indicate your acceptance of this statement, >> 6 // and all its terms. >> 7 // >> 8 // $Id: globals.hh,v 1.11 1999/11/23 15:00:04 gcosmo Exp $ >> 9 // GEANT4 tag $Name: geant4-01-00 $ 1 // 10 // 2 // ******************************************* << 3 // * License and Disclaimer << 4 // * << 5 // * The Geant4 software is copyright of th << 6 // * the Geant4 Collaboration. It is provided << 7 // * conditions of the Geant4 Software License << 8 // * LICENSE and available at http://cern.ch/ << 9 // * include a list of copyright holders. << 10 // * << 11 // * Neither the authors of this software syst << 12 // * institutes,nor the agencies providing fin << 13 // * work make any representation or warran << 14 // * regarding this software system or assum << 15 // * use. Please see the license in the file << 16 // * for the full disclaimer and the limitatio << 17 // * << 18 // * This code implementation is the result << 19 // * technical work of the GEANT4 collaboratio << 20 // * By using, copying, modifying or distri << 21 // * any work based on the software) you ag << 22 // * use in resulting scientific publicati << 23 // * acceptance of all terms of the Geant4 Sof << 24 // ******************************************* << 25 // 11 // 26 // Global Constants and typedefs 12 // Global Constants and typedefs 27 // 13 // 28 // Author: P.Kent, 30.06.1995 - Created << 14 // History: 29 // Revisions: << 15 // 30.06.95 P.Kent - Created 30 // - 1996 to present - G.Cosmo << 16 // 16.02.96 G.Cosmo - Added inclusion of "templates.hh" 31 // ------------------------------------------- << 17 // 03.03.96 M.Maire - Added inclusion of "G4PhysicalConstants.hh" >> 18 // 08.11.96 G.Cosmo - Added cbrt() definition and G4ApplicationState enum type >> 19 // 29.11.96 G.Cosmo - Added typedef of HepBoolean to G4bool >> 20 // 22.10.97 M.Maire - Moved PhysicalConstants at the end of the file >> 21 // 04.12.97 G.Cosmo,E.Tcherniaev - Migrated to CLHEP >> 22 // 05.06.98 M.Maire - temporary (for alpha07) restore G4 system of units >> 23 // 26.08.98 J.Allison,E.Tcherniaev - introduced min/max/sqr/abs functions >> 24 // 22.09.98 G.Cosmo - removed min/max/sqr/abs functions and replaced with >> 25 // inclusion of CLHEP/config/TemplateFunctions.h for CLHEP-1.3 >> 26 32 #ifndef GLOBALS_HH 27 #ifndef GLOBALS_HH 33 #define GLOBALS_HH 1 << 28 #define GLOBALS_HH 34 29 35 #include "G4ios.hh" 30 #include "G4ios.hh" 36 31 37 #ifndef FALSE << 32 // Undefine possible existing min/max/sqr/abs macros first 38 # define FALSE 0 << 33 // (temporary solution) >> 34 #ifdef min >> 35 #undef min 39 #endif 36 #endif 40 #ifndef TRUE << 37 #ifdef max 41 # define TRUE 1 << 38 #undef max >> 39 #endif >> 40 #ifdef sqr >> 41 #undef sqr >> 42 #endif >> 43 #ifdef abs >> 44 #undef abs 42 #endif 45 #endif 43 46 44 #include <algorithm> // Retrieve definitions << 47 #ifdef G4USE_STL >> 48 #include "g4std/algorithm" >> 49 #define CLHEP_MAX_MIN_DEFINED >> 50 #endif >> 51 // min, max, abs and sqr are in TemplateFunctions.h. >> 52 // Includes also CLHEP.h with typedef for numeric types and >> 53 // implicit inclusions of <stdlib.h>, <limits.h>, <math.h>. >> 54 #include <CLHEP/config/TemplateFunctions.h> 45 55 46 // Include base types 56 // Include base types 47 #include "G4Types.hh" 57 #include "G4Types.hh" 48 58 49 // Get definition of G4String 59 // Get definition of G4String 50 #include "G4String.hh" << 60 #include "g4rw/cstring.h" 51 61 52 // Includes some additional definitions: sqr, << 62 // Includes some additional definitions 53 #include "templates.hh" 63 #include "templates.hh" 54 64 55 // Global error function << 65 // cbrt() function - define G4_NO_CBRT if the function is not available 56 #include "G4Exception.hh" << 66 #ifdef G4_NO_CBRT >> 67 static double cbrt(double x) { return pow(x,1./3.); } >> 68 #endif >> 69 >> 70 // System of Units and Physical Constants >> 71 ////#include <CLHEP/Units/PhysicalConstants.h> >> 72 #include "PhysicalConstants.h" 57 73 58 // Global utility functions << 74 // Global error function 59 #include "G4EnvironmentUtils.hh" << 75 void G4Exception(const char* s=0); >> 76 #ifdef G4USE_STL >> 77 void G4Exception(G4std::string s); >> 78 void G4Exception(G4String s); >> 79 #endif 60 80 61 #endif /* GLOBALS_HH */ 81 #endif /* GLOBALS_HH */ >> 82 62 83