Geant4 9.6.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
config.h
Go to the documentation of this file.
1// Copyright FreeHEP, 2005.
2#ifndef CHEPREP_CONFIG_H
3#define CHEPREP_CONFIG_H 1
4
5/**
6 * @author Mark Donszelmann
7 * @version $Id: config.h,v 1.4 2005-06-02 21:28:45 duns Exp $
8 */
9namespace cheprep {
10
11#if defined(WIN32) && !defined(GNU_GCC)
12
13// WIN32 and NOT GNU_GCC
14typedef __int64 int64;
15typedef unsigned __int64 uint64;
16#define CHEPREP_INT64_FORMAT "%ld"
17#define CHEPREP_UINT64_FORMAT "%uld"
18
19#else // other than WIN32-MSVC
20#if defined(_LP64)
21
22// 64 Bit Platforms
23typedef long int64;
24typedef unsigned long uint64;
25#define CHEPREP_INT64_FORMAT "%ld"
26#define CHEPREP_UINT64_FORMAT "%uld"
27
28#else
29
30// 32-Bit Platforms
31typedef long long int64;
32typedef unsigned long long uint64;
33#define CHEPREP_INT64_FORMAT "%lld"
34#define CHEPREP_UINT64_FORMAT "%ulld"
35
36#endif // 32-Bit Platforms
37#endif // other than WIN32-MSVC
38
39} // namespace cheprep
40
41#ifdef WIN32
42#ifndef GNU_GCC
43// Disable warning C4786: identifier was truncated to '255' characters in the debug information
44 #pragma warning ( disable : 4786 )
45// Disable warning C4250: inherits via dominance
46 #pragma warning ( disable : 4250 )
47#ifdef VC6
48// FIX for KB 168440 - VC6
49// Stream Operator << Cannot Handle __int64 Type
50 #include<iostream>
51
52 inline std::ostream& operator<<(std::ostream& os, __int64 i ) {
53 char buf[20];
54 sprintf(buf,"%I64d", i );
55 os << buf;
56 return os;
57 }
58#endif // VC6
59#endif // GNU_GCC
60#endif // WIN32
61
62
63#endif // CHEPREP_CONFIG_H
std::ostream & operator<<(std::ostream &out, const G4CellScoreComposer &ps)
long long int64
Definition: config.h:31
unsigned long long uint64
Definition: config.h:32