]> Creatis software - gdcm.git/blob - src/gdcmCommon.h
a74d6d84da462ee9f08d8ef06f74cd94a5a40db6
[gdcm.git] / src / gdcmCommon.h
1 //gdcmCommon.h
2
3 #ifndef GDCMCOMMON_H
4 #define GDCMCOMMON_H
5
6 //This is needed when compiling in debug mode
7 #ifdef _MSC_VER
8 // 'identifier' : class 'type' needs to have dll-interface to be used by
9 // clients of class 'type2'
10 #pragma warning ( disable : 4251 )
11 // 'identifier' : identifier was truncated to 'number' characters in the
12 // debug information
13 #pragma warning ( disable : 4786 )
14 //'identifier' : decorated name length exceeded, name was truncated
15 #pragma warning ( disable : 4503 )
16 // C++ exception specification ignored except to indicate a 
17 // function is not __declspec(nothrow)
18 #pragma warning ( disable : 4290 )
19 // signed/unsigned mismatch
20 #pragma warning ( disable : 4018 )
21 // return type for 'identifier' is '' (ie; not a UDT or reference to UDT. Will
22 // produce errors if applied using infix notation
23 #pragma warning ( disable : 4284 )
24 #endif //_MSC_VER
25
26 #ifdef __GNUC__
27 #include <stdint.h>
28 #define guint16 uint16_t
29 #define guint32 uint32_t
30 #define gint16  int16_t
31 #define gint32  int32_t
32 #endif
33
34 #ifdef _MSC_VER 
35 typedef  unsigned short guint16;
36 typedef  unsigned int   guint32;
37 typedef  short          gint16;
38 typedef  int            gint32;
39 #define UINT32_MAX    (4294967295U)
40 #endif
41
42 #ifdef _MSC_VER
43 #define GDCM_EXPORT __declspec( dllexport )
44 #else
45 #define GDCM_EXPORT
46 #endif
47
48 #include <string>
49
50 const std::string GDCM_UNFOUND = "gdcm::Unfound";
51
52 typedef std::string TagKey;
53 typedef std::string TagName;
54
55 enum FileType {
56       Unknown = 0,
57       ExplicitVR,
58       ImplicitVR,
59       ACR,
60       ACR_LIBIDO
61 };
62
63 //For now gdcm is not willing cmake, try to be more quiet
64 //#cmakedefine GDCM_NO_ANSI_STRING_STREAM
65
66
67 #endif