From 4117dec671b980b51a16117a5692d822b63bbe04 Mon Sep 17 00:00:00 2001 From: regrain Date: Tue, 18 Oct 2005 09:17:07 +0000 Subject: [PATCH] * Remove useless constructor of gdcm::Document * Remove useless parameter in the constructor of gdcm::ElementSet * Split gdcmCommon to separate the System specifications to the gdcm specifications -- BeNours --- ChangeLog | 6 +++ src/gdcmCommon.h | 83 ++------------------------------- src/gdcmDocument.cxx | 29 ++---------- src/gdcmDocument.h | 5 +- src/gdcmElementSet.cxx | 8 ++-- src/gdcmElementSet.h | 6 +-- src/gdcmSystem.h | 102 +++++++++++++++++++++++++++++++++++++++++ 7 files changed, 122 insertions(+), 117 deletions(-) create mode 100644 src/gdcmSystem.h diff --git a/ChangeLog b/ChangeLog index 2ed79e6f..b8fb98f3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Mon Oct 18 10:27:49 2005 by regrain + * Remove useless constructor of gdcm::Document + * Remove useless parameter in the constructor of gdcm::ElementSet + * Split gdcmCommon to separate the System specifications to the gdcm + specifications + Mon Oct 18 10:27:49 2005 by regrain * Minor coding-style clean up * Replace the ContentEntry and its derived classes (BinEntry and ValEntry) diff --git a/src/gdcmCommon.h b/src/gdcmCommon.h index fb43af65..27c4e90a 100644 --- a/src/gdcmCommon.h +++ b/src/gdcmCommon.h @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmCommon.h,v $ Language: C++ - Date: $Date: 2005/10/11 08:24:10 $ - Version: $Revision: 1.93 $ + Date: $Date: 2005/10/18 09:17:08 $ + Version: $Revision: 1.94 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -20,84 +20,7 @@ #define GDCMCOMMON_H #include "gdcmConfigure.h" - -//----------------------------------------------------------------------------- -//This is needed when compiling in debug mode -#ifdef _MSC_VER -// 'identifier' : class 'type' needs to have dll-interface to be used by -// clients of class 'type2' -#pragma warning ( disable : 4251 ) -// non dll-interface class 'type' used as base for dll-interface class 'type2' -#pragma warning ( disable : 4275 ) -// 'identifier' : identifier was truncated to 'number' characters in the -// debug information -#pragma warning ( disable : 4786 ) -//'identifier' : decorated name length exceeded, name was truncated -#pragma warning ( disable : 4503 ) -// C++ exception specification ignored except to indicate a -// function is not __declspec(nothrow) -#pragma warning ( disable : 4290 ) -// signed/unsigned mismatch -#pragma warning ( disable : 4018 ) -// return type for 'identifier' is '' (ie; not a UDT or reference to UDT. Will -// produce errors if applied using infix notation -#pragma warning ( disable : 4284 ) -// 'type' : forcing value to bool 'true' or 'false' (performance warning) -// //#pragma warning ( disable : 4800 ) -#endif //_MSC_VER - -//----------------------------------------------------------------------------- -#ifdef CMAKE_HAVE_STDINT_H - #include -#else -#ifdef CMAKE_HAVE_INTTYPES_H - // Old system only have this - #include // For uint8_t uint16_t and uint32_t -#else -// Broken plateforms do not respect C99 and do not provide those typedef -// Special case for recent Borland compiler, comes with stdint.h -#if defined(_MSC_VER) || defined(__BORLANDC__) && (__BORLANDC__ < 0x0560) \ - || defined(__MINGW32__) -typedef signed char int8_t; -typedef signed short int16_t; -typedef signed int int32_t; -typedef unsigned char uint8_t; -typedef unsigned short uint16_t; -typedef unsigned int uint32_t; -#else -#error "Sorry your plateform is not supported" -#endif // defined(_MSC_VER) || defined(__BORLANDC__) && (__BORLANDC__ < 0x0560) || defined(__MINGW32__) -#endif // CMAKE_HAVE_INTTYPES_H -#endif // CMAKE_HAVE_STDINT_H - -// Basically for VS6 and bcc 5.5.1: -#ifndef UINT32_MAX -#define UINT32_MAX (4294967295U) -#endif - -#if defined(_WIN32) && defined(BUILD_SHARED_LIBS) - #ifdef gdcm_EXPORTS - #define GDCM_EXPORT __declspec( dllexport ) - #else - #define GDCM_EXPORT __declspec( dllimport ) - #endif -#else - #define GDCM_EXPORT -#endif - -#include -#define FASTTAGKEY 0 - -// FIXME: Should rewrite this: -#if FASTTAGKEY -#include -#include -#endif -#if defined(_MSC_VER) && (_MSC_VER == 1200) -/* ostream operator for std::string since VS6 does not provide it*/ -#include -#endif - +#include "gdcmSystem.h" //----------------------------------------------------------------------------- /// \brief namespace for Grass root DiCoM diff --git a/src/gdcmDocument.cxx b/src/gdcmDocument.cxx index 703d7ef7..876a5095 100644 --- a/src/gdcmDocument.cxx +++ b/src/gdcmDocument.cxx @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmDocument.cxx,v $ Language: C++ - Date: $Date: 2005/10/18 08:35:49 $ - Version: $Revision: 1.289 $ + Date: $Date: 2005/10/18 09:17:08 $ + Version: $Revision: 1.290 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -50,7 +50,7 @@ const unsigned int Document::MAX_SIZE_LOAD_ELEMENT_VALUE = 0xfff; // 4096 * */ Document::Document() - :ElementSet(-1) + :ElementSet() { Fp = 0; @@ -66,29 +66,6 @@ Document::Document() SetFileName(""); } -/** - * \brief Constructor (DEPRECATED : not to break the API) - * @param fileName 'Document' (File or DicomDir) to be open for parsing - */ -Document::Document( std::string const &fileName ) - :ElementSet(-1) -{ - Fp = 0; - - SetMaxSizeLoadEntry(MAX_SIZE_LOAD_ELEMENT_VALUE); - Initialize(); - SwapCode = 1234; - Filetype = ExplicitVR; - Group0002Parsed = false; - LoadMode = LD_ALL; // Load everything, later - - // Load will set it to true if sucessfull - IsDocumentAlreadyLoaded = false; - IsDocumentModified = true; - - SetFileName(fileName); - Load( ); -} /** * \brief Canonical destructor. */ diff --git a/src/gdcmDocument.h b/src/gdcmDocument.h index 977124ba..dc04ee29 100644 --- a/src/gdcmDocument.h +++ b/src/gdcmDocument.h @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmDocument.h,v $ Language: C++ - Date: $Date: 2005/10/18 08:35:50 $ - Version: $Revision: 1.123 $ + Date: $Date: 2005/10/18 09:17:08 $ + Version: $Revision: 1.124 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -116,7 +116,6 @@ protected: // to instanciate from this class Document (only gdcm::File and // gdcm::DicomDir are meaningfull). Document(); - Document( std::string const &filename ); virtual ~Document(); uint16_t ReadInt16() throw ( FormatError ); diff --git a/src/gdcmElementSet.cxx b/src/gdcmElementSet.cxx index 0c662dd0..215589b8 100644 --- a/src/gdcmElementSet.cxx +++ b/src/gdcmElementSet.cxx @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmElementSet.cxx,v $ Language: C++ - Date: $Date: 2005/10/18 08:35:50 $ - Version: $Revision: 1.65 $ + Date: $Date: 2005/10/18 09:17:08 $ + Version: $Revision: 1.66 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -28,11 +28,9 @@ namespace gdcm /** * \brief Constructor for a given ElementSet */ -//BOZ depthLevel is not usefull anymore -ElementSet::ElementSet(int depthLevel) +ElementSet::ElementSet() : DocEntrySet() { - (void)depthLevel; } /** diff --git a/src/gdcmElementSet.h b/src/gdcmElementSet.h index abb272e8..fdcb3d0a 100644 --- a/src/gdcmElementSet.h +++ b/src/gdcmElementSet.h @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmElementSet.h,v $ Language: C++ - Date: $Date: 2005/10/18 08:35:50 $ - Version: $Revision: 1.46 $ + Date: $Date: 2005/10/18 09:17:08 $ + Version: $Revision: 1.47 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -42,7 +42,7 @@ typedef std::map TagDocEntryHT; class GDCM_EXPORT ElementSet : public DocEntrySet { public: - ElementSet(int); + ElementSet(); ~ElementSet(); virtual void Print(std::ostream &os = std::cout, diff --git a/src/gdcmSystem.h b/src/gdcmSystem.h new file mode 100644 index 00000000..dabf98ee --- /dev/null +++ b/src/gdcmSystem.h @@ -0,0 +1,102 @@ +/*========================================================================= + + Program: gdcm + Module: $RCSfile: gdcmSystem.h,v $ + Language: C++ + Date: $Date: 2005/10/18 09:17:08 $ + Version: $Revision: 1.1 $ + + Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de + l'Image). All rights reserved. See Doc/License.txt or + http://www.creatis.insa-lyon.fr/Public/Gdcm/License.html for details. + + This software is distributed WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. See the above copyright notices for more information. + +=========================================================================*/ + +#ifndef GDCMSYSTEM_H +#define GDCMSYSTEM_H + +#include "gdcmConfigure.h" + +//----------------------------------------------------------------------------- +//This is needed when compiling in debug mode +#ifdef _MSC_VER +// 'identifier' : class 'type' needs to have dll-interface to be used by +// clients of class 'type2' +#pragma warning ( disable : 4251 ) +// non dll-interface class 'type' used as base for dll-interface class 'type2' +#pragma warning ( disable : 4275 ) +// 'identifier' : identifier was truncated to 'number' characters in the +// debug information +#pragma warning ( disable : 4786 ) +//'identifier' : decorated name length exceeded, name was truncated +#pragma warning ( disable : 4503 ) +// C++ exception specification ignored except to indicate a +// function is not __declspec(nothrow) +#pragma warning ( disable : 4290 ) +// signed/unsigned mismatch +#pragma warning ( disable : 4018 ) +// return type for 'identifier' is '' (ie; not a UDT or reference to UDT. Will +// produce errors if applied using infix notation +#pragma warning ( disable : 4284 ) +// 'type' : forcing value to bool 'true' or 'false' (performance warning) +// //#pragma warning ( disable : 4800 ) +#endif //_MSC_VER + +//----------------------------------------------------------------------------- +#ifdef CMAKE_HAVE_STDINT_H + #include +#else +#ifdef CMAKE_HAVE_INTTYPES_H + // Old system only have this + #include // For uint8_t uint16_t and uint32_t +#else +// Broken plateforms do not respect C99 and do not provide those typedef +// Special case for recent Borland compiler, comes with stdint.h +#if defined(_MSC_VER) || defined(__BORLANDC__) && (__BORLANDC__ < 0x0560) \ + || defined(__MINGW32__) +typedef signed char int8_t; +typedef signed short int16_t; +typedef signed int int32_t; +typedef unsigned char uint8_t; +typedef unsigned short uint16_t; +typedef unsigned int uint32_t; +#else +#error "Sorry your plateform is not supported" +#endif // defined(_MSC_VER) || defined(__BORLANDC__) && (__BORLANDC__ < 0x0560) || defined(__MINGW32__) +#endif // CMAKE_HAVE_INTTYPES_H +#endif // CMAKE_HAVE_STDINT_H + +// Basically for VS6 and bcc 5.5.1: +#ifndef UINT32_MAX +#define UINT32_MAX (4294967295U) +#endif + +#if defined(_WIN32) && defined(BUILD_SHARED_LIBS) + #ifdef gdcm_EXPORTS + #define GDCM_EXPORT __declspec( dllexport ) + #else + #define GDCM_EXPORT __declspec( dllimport ) + #endif +#else + #define GDCM_EXPORT +#endif + +#include +#define FASTTAGKEY 0 + +// FIXME: Should rewrite this: +#if FASTTAGKEY +#include +#include +#endif +#if defined(_MSC_VER) && (_MSC_VER == 1200) +/* ostream operator for std::string since VS6 does not provide it*/ +#include +#endif + +//----------------------------------------------------------------------------- +#endif -- 2.45.1