X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmPixelReadConvert.cxx;h=45aaf812dd75df17a02bc981bebf4232b6f29c06;hb=56ad78cdf3b5de32f0a94a38cd32ddc9f403ffc3;hp=5b1ffc4b033d382d1ce9e8294409d68f1ac42ef7;hpb=4829e6aeef2c4bca076c40a6de92d5872e5ba6cd;p=gdcm.git diff --git a/src/gdcmPixelReadConvert.cxx b/src/gdcmPixelReadConvert.cxx index 5b1ffc4b..45aaf812 100644 --- a/src/gdcmPixelReadConvert.cxx +++ b/src/gdcmPixelReadConvert.cxx @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmPixelReadConvert.cxx,v $ Language: C++ - Date: $Date: 2007/10/16 10:11:06 $ - Version: $Revision: 1.126 $ + Date: $Date: 2008/05/20 09:22:03 $ + Version: $Revision: 1.128 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -144,10 +144,10 @@ void PixelReadConvert::GrabInformationsFromFile( File *file, while (true) // shorter to write than 'if elseif elseif elseif' ... { // mind the order : check the most usual first. - if( IsRaw = Global::GetTS()->GetSpecialTransferSyntax(ts) == TS::ExplicitVRLittleEndian) break; - if( IsRaw = Global::GetTS()->GetSpecialTransferSyntax(ts) == TS::ImplicitVRLittleEndian ) break; - if( IsRaw = Global::GetTS()->GetSpecialTransferSyntax(ts) == TS::ExplicitVRBigEndian) break; - if( IsRaw = Global::GetTS()->GetSpecialTransferSyntax(ts) == TS::ImplicitVRBigEndianPrivateGE) break; + if( IsRaw = (Global::GetTS()->GetSpecialTransferSyntax(ts) == TS::ExplicitVRLittleEndian)) break; + if( IsRaw = (Global::GetTS()->GetSpecialTransferSyntax(ts) == TS::ImplicitVRLittleEndian)) break; + if( IsRaw = (Global::GetTS()->GetSpecialTransferSyntax(ts) == TS::ExplicitVRBigEndian)) break; + if( IsRaw = (Global::GetTS()->GetSpecialTransferSyntax(ts) == TS::ImplicitVRBigEndianPrivateGE)) break; // DeflatedExplicitVRLittleEndian syntax means the whole Dataset (Header + Pixels) is compressed ! // Not dealt with ! (Parser hangs) //if( IsRaw = Global::GetTS()->GetSpecialTransferSyntax(ts) == TS::DeflatedExplicitVRLittleEndian) break; @@ -165,12 +165,12 @@ void PixelReadConvert::GrabInformationsFromFile( File *file, while(true) { // mind the order : check the most usual first. - if( IsJPEGLossy = Global::GetTS()->IsJPEGLossy(ts) ) break; - if( IsJPEGLossless = Global::GetTS()->IsJPEGLossless(ts) ) break; - if( IsRLELossless = Global::GetTS()->IsRLELossless(ts) ) break; - if( IsJPEG2000 = Global::GetTS()->IsJPEG2000(ts) ) break; - if( IsMPEG = Global::GetTS()->IsMPEG(ts) ) break; - if( IsJPEGLS = Global::GetTS()->IsJPEGLS(ts) ) break; + if( IsJPEGLossy = (Global::GetTS()->IsJPEGLossy(ts))) break; + if( IsJPEGLossless = (Global::GetTS()->IsJPEGLossless(ts))) break; + if( IsRLELossless = (Global::GetTS()->IsRLELossless(ts))) break; + if( IsJPEG2000 = (Global::GetTS()->IsJPEG2000(ts))) break; + if( IsMPEG = (Global::GetTS()->IsMPEG(ts))) break; + if( IsJPEGLS = (Global::GetTS()->IsJPEGLS(ts))) break; // DeflatedExplicitVRLittleEndian is considered as 'Unexpected' // (we don't know yet how to process !) gdcmWarningMacro("Unexpected Transfer Syntax :[" << ts << "]"); @@ -679,7 +679,7 @@ bool PixelReadConvert::ReadAndDecompressJPEGFile( std::ifstream *fp ) // if ( ! gdcm_read_JPEGLS_file( fp,Raw ) ) return false; } - else + else if( JPEGInfo ) { // make sure this is the right JPEG compression assert( !IsJPEGLS || !IsJPEG2000 ); @@ -696,6 +696,8 @@ bool PixelReadConvert::ReadAndDecompressJPEGFile( std::ifstream *fp ) JPEGInfo->DecompressFromFile(fp, Raw, dummy, numberBytes, length ); return true; } + //else (not sure how get there...), must be one of those crazy DICOM file + return false; } /** @@ -921,7 +923,7 @@ void PixelReadConvert::BuildLUTRGBA() *a16 = 1; // Alpha component a16 += 4; } -/* Just to 'see' the LUT, at debug time +// Just to 'see' the LUT, at debug time // Don't remove this commented out code. a16=(uint16_t*)LutRGBA; @@ -931,7 +933,7 @@ void PixelReadConvert::BuildLUTRGBA() << *(a16+2) << " " << *(a16+3) << std::endl; a16+=4; } -*/ + } }