Program: gdcm
Module: $RCSfile: TestAllReadCompareDicom.cxx,v $
Language: C++
- Date: $Date: 2005/04/19 10:05:36 $
- Version: $Revision: 1.39 $
+ Date: $Date: 2005/05/02 17:56:44 $
+ Version: $Revision: 1.42 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
#include "gdcmDirList.h"
#include "gdcmFile.h"
#include "gdcmFileHelper.h"
+#include "gdcmGlobal.h"
+#include "gdcmTS.h"
#include <iostream>
static const unsigned int HEADER_SIZE;
};
+const unsigned int MAX_NUMBER_OF_DIFFERENCE = 10;
const unsigned int TestFile::HEADER_SIZE = 20;
-TestFile::TestFile(void)
+TestFile::TestFile()
{
fileName = "";
readable=false;
testedDataSize) != 0 )
{
(void)res;
+ std::string ts = tested->GetFile()->GetTransferSyntax();
+
std::cout << " Failed" << std::endl
<< " pixel ("
<< PixelType
<< ") differ (as expanded in memory)."
+ << std::endl
+ << " compression : "
+ << gdcm::Global::GetTS()->GetValue(ts) << std::endl;
+
+ std::cout << " list of the first " << MAX_NUMBER_OF_DIFFERENCE
+ << " pixels differing (pos : test - ref) :"
<< std::endl;
+ int i;
+ unsigned int j;
+ for(i=0, j=0;i<testedDataSize && j<MAX_NUMBER_OF_DIFFERENCE;i++)
+ {
+ if(testedImageData[i]!=referenceImageData[i])
+ {
+ std::cout << std::hex << "(" << i << " : "
+ << std::hex << (int)(testedImageData[i]) << " - "
+ << std::hex << (int)(referenceImageData[i]) << ") "
+ << std::dec;
+ ++j;
+ }
+ }
+ std::cout << std::endl;
+
delete tested;
delete reference;
return 1;
std::cout << " step 1: parse the image (as gdcmFile) and call"
<< " IsReadable(). "
<< std::endl;
- std::cout << " step 2: find in GDCM_DATA_ROOT/BaselineDicom/filename.dcm"
- << std::endl
- << " (with format DICOM V3, explicit Value"
- << "Representation)"
- << std::endl;
- std::cout << " step 3a: when image NOT found on step 2, write "
+ std::cout << " step 2: find in GDCM_DATA_ROOT/BaselineDicom/filename.tst"
<< std::endl
- << " GDCM_DATA_ROOT/BaselineDicom/filename.dcm"
+ << " special internal file format containing the"
<< std::endl
- << " (with format DICOM V3, explicit Value"
- << "Representation)"
+ << " caracteristic of the image and the pixel datas "
+ << "(uncompressed). This file is written if it's not found."
<< std::endl;
- std::cout << " step 3b: when image found on step 2, and when IsReadable()"
+ std::cout << " step 3: compare the DICOM image with the reference image"
<< std::endl
- << " compare it (in memory with memcmp) with the"
+ << " (.tst file). The test is made on the caracteristics"
<< std::endl
- << " image we are testing (the one of step 1). "
+ << " of the image and the pixel datas"
<< std::endl << std::endl;
int i = 0;