00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef GDCMCOMMON_H
00020 #define GDCMCOMMON_H
00021
00022 #include "gdcmConfigure.h"
00023 #include "gdcmSystem.h"
00024 #include "gdcmMacro.h"
00025
00026 #include <string>
00027
00028
00029 #if defined(_WIN32) && defined(BUILD_SHARED_LIBS)
00030 #ifdef gdcm_EXPORTS
00031 #define GDCM_EXPORT __declspec( dllexport )
00032 #else
00033 #define GDCM_EXPORT __declspec( dllimport )
00034 #endif
00035 #else
00036 #define GDCM_EXPORT
00037 #endif
00038
00039
00041 namespace gdcm
00042 {
00043
00044
00045 #ifndef PUB_DICT_PATH
00046 # define PUB_DICT_PATH "../Dicts/"
00047 #endif
00048 #define PUB_DICT_NAME "DicomV3Dict"
00049 #define PUB_DICT_FILENAME "gdcm.dic"
00050 #define DICT_ELEM "DicomDir.dic"
00051 #define DICT_TS "dicomTS.dic"
00052 #define DICT_VR "dicomVR.dic"
00053 #define DICT_GROUP_NAME "DictGroupName.dic"
00054
00055 GDCM_EXPORT extern const std::string GDCM_UNKNOWN;
00056 GDCM_EXPORT extern const std::string GDCM_UNFOUND;
00057 GDCM_EXPORT extern const std::string GDCM_BINLOADED;
00058 GDCM_EXPORT extern const std::string GDCM_NOTLOADED;
00059 GDCM_EXPORT extern const std::string GDCM_UNREAD;
00060 GDCM_EXPORT extern const std::string GDCM_NOTASCII;
00061 GDCM_EXPORT extern const std::string GDCM_PIXELDATA;
00062
00063 GDCM_EXPORT extern const std::string GDCM_VRUNKNOWN;
00064
00065 GDCM_EXPORT extern const char GDCM_FILESEPARATOR;
00066
00074
00075 #if defined(_MSC_VER) && (_MSC_VER == 1200)
00076
00077 inline std::ostream& operator<<(std::ostream& _O, std::string _val)
00078 {
00079 return _O << _val.c_str();
00080 }
00081 #endif
00082
00085 typedef std::string TagName;
00086
00088 enum FileType {
00089 Unknown = 0,
00090 ExplicitVR,
00091 ImplicitVR,
00092 ACR,
00093 ACR_LIBIDO,
00094 JPEG
00095 };
00096
00098 enum DicomDirType {
00099 DD_UNKNOWN = 0,
00100 DD_META,
00101 DD_PATIENT,
00102 DD_STUDY,
00103 DD_SERIE,
00104 DD_IMAGE,
00105 DD_VISIT
00106 };
00107
00109 enum CompOperators {
00110 GDCM_EQUAL = 0,
00111 GDCM_DIFFERENT,
00112 GDCM_GREATER,
00113 GDCM_GREATEROREQUAL,
00114 GDCM_LESS,
00115 GDCM_LESSOREQUAL
00116 };
00117
00119 enum LodModeType
00120 {
00121 LD_ALL = 0x00000000,
00122 LD_NOSEQ = 0x00000001,
00123 LD_NOSHADOW = 0x00000002,
00124 LD_NOSHADOWSEQ = 0x00000004
00125
00126
00127 };
00128
00132 struct DicomElement
00133 {
00135 unsigned short int Group;
00137 unsigned short int Elem;
00139 std::string Value;
00140 };
00141
00142 }
00143
00144 #endif