Geant4
9.6.p02
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
geant4_9_6_p02
source
visualization
HepRep
include
cheprep
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
9
namespace
cheprep {
10
11
#if defined(WIN32) && !defined(GNU_GCC)
12
13
// WIN32 and NOT GNU_GCC
14
typedef
__int64
int64
;
15
typedef
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
23
typedef
long
int64
;
24
typedef
unsigned
long
uint64
;
25
#define CHEPREP_INT64_FORMAT "%ld"
26
#define CHEPREP_UINT64_FORMAT "%uld"
27
28
#else
29
30
// 32-Bit Platforms
31
typedef
long
long
int64
;
32
typedef
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
Generated on Sat May 25 2013 14:34:14 for Geant4 by
1.8.4