X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=Testing%2FTestCopyRescaleDicom.cxx;h=54f7d7b81a3fe8a530aec59afbc08bc2799f4a42;hb=afb4925bd3110d67669db7264f78a238d4fb9333;hp=a5a9a1b5de6dd1ed86e0e3549a4f69b4cd394a6e;hpb=96cc99e8e141ceaf026104699c3273ad5fc88a1f;p=gdcm.git diff --git a/Testing/TestCopyRescaleDicom.cxx b/Testing/TestCopyRescaleDicom.cxx index a5a9a1b5..54f7d7b8 100644 --- a/Testing/TestCopyRescaleDicom.cxx +++ b/Testing/TestCopyRescaleDicom.cxx @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: TestCopyRescaleDicom.cxx,v $ Language: C++ - Date: $Date: 2005/02/03 10:00:06 $ - Version: $Revision: 1.14 $ + Date: $Date: 2005/02/09 15:31:15 $ + Version: $Revision: 1.16 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -23,9 +23,37 @@ //Generated file: #include "gdcmDataImages.h" -bool FileExists(const char *filename); +#ifndef _WIN32 +#include //for access, unlink +#else +#include //for _access on Win32 +#endif -bool RemoveFile(const char *source); +bool FileExists(const char *filename) +{ +#ifdef _MSC_VER +# define access _access +#endif +#ifndef R_OK +# define R_OK 04 +#endif + if ( access(filename, R_OK) != 0 ) + { + return false; + } + else + { + return true; + } +} + +bool RemoveFile(const char *source) +{ +#ifdef _MSC_VER +#define _unlink unlink +#endif + return unlink(source) != 0 ? false : true; +} int CopyRescaleDicom(std::string const &filename, std::string const &output ) @@ -90,15 +118,19 @@ int CopyRescaleDicom(std::string const &filename, copyF->InsertValEntry( "8", 0x0028, 0x0101); // Bits Stored copyF->InsertValEntry( "7", 0x0028, 0x0102); // High Bit copyF->InsertValEntry( "0", 0x0028, 0x0103); // Pixel Representation - + // We assume the value were from 0 to uint16_t max rescaleSize = dataSize / 2; rescaleImage = new uint8_t[dataSize]; uint16_t *imageData16 = (uint16_t*)original->GetImageData(); + uint16_t *tmpImage = imageData16; + uint8_t *tmpRescale = rescaleImage; for(unsigned int i=0; i>8; + tmpImage++; + tmpRescale++; } } else