X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmTS.cxx;h=256758b92dc1b7a2c07b0f14428a7f25bef02901;hb=f3d69cce23405b6fb8939a7f8e20dc1b151b1619;hp=598c92dbfdd97e2a05102cbf6052db878abc4056;hpb=d5ebba38c596bd5a0514fc9e08fe8ac2a45482f5;p=gdcm.git diff --git a/src/gdcmTS.cxx b/src/gdcmTS.cxx index 598c92db..256758b9 100644 --- a/src/gdcmTS.cxx +++ b/src/gdcmTS.cxx @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmTS.cxx,v $ Language: C++ - Date: $Date: 2005/02/11 15:22:18 $ - Version: $Revision: 1.43 $ + Date: $Date: 2005/06/09 21:14:43 $ + 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 @@ -34,7 +34,7 @@ namespace gdcm { //----------------------------------------------------------------------------- -/// \brief Transfer Syntaxes gdcm deals with (internal use onky) +/// \brief Transfer Syntaxes gdcm deals with (internal use only) static const char *SpecialStrings[] = { // Implicit VR Little Endian "1.2.840.10008.1.2", @@ -71,6 +71,8 @@ static const char *SpecialStrings[] = { "1.2.840.10008.1.2.4.91", // RLE Lossless "1.2.840.10008.1.2.5", + // MPEG2 Main Profile @ Main Level + "1.2.840.10008.1.2.4.100", // Unknown "Unknown Transfer Syntax" }; @@ -254,6 +256,8 @@ bool TS::IsJPEG(TSKey const &key) { if ( IsJPEGLossy( key ) || IsJPEGLossless( key ) + || IsJPEG2000( key ) + || IsJPEGLS( key ) ) { r = true; @@ -282,6 +286,30 @@ bool TS::IsJPEGLS(TSKey const &key) return r; } +/** + * \brief Determines if the Transfer Syntax corresponds to any form + * of MPEG encoded Pixel data. + * @return True when any form of MPEG found. False otherwise. + */ +bool TS::IsMPEG(TSKey const &key) +{ + bool r = false; + // First check this is an actual transfer syntax + if( IsTransferSyntax(key) ) + { + if ( key == SpecialStrings[MPEG2MainProfile] ) + { + r = true; + } + } + return r; +} + +/** + * \brief GetSpecialTransferSyntax ?? + * @param key TSKey const &key ?? + * @return TS::SpecialType ??. + */ TS::SpecialType TS::GetSpecialTransferSyntax(TSKey const &key) { for (int i = 0; SpecialStrings[i] != NULL; i++) @@ -291,10 +319,14 @@ TS::SpecialType TS::GetSpecialTransferSyntax(TSKey const &key) return SpecialType(i); } } - return UnknownTS; } +/** + * \brief GetSpecialTransferSyntax ?? + * @param t SpecialType t ?? + * @return char* TS : SpecialStrings[t] ??. + */ const char* TS::GetSpecialTransferSyntax(SpecialType t) { return SpecialStrings[t];