- * \ingroup gdcmHeader
- * \brief Determines if the Transfer Syntax was already encountered
- * and if it corresponds to a JPEGBaseLineProcess1 one.
- * @return True when JPEGBaseLineProcess1found. False in all other cases.
- */
-bool gdcmHeader::IsJPEGBaseLineProcess1TransferSyntax(void) {
- gdcmHeaderEntry* Element = GetHeaderEntryByNumber(0x0002, 0x0010);
- if ( !Element )
- return false;
- LoadHeaderEntrySafe(Element);
-
- std::string Transfer = Element->GetValue();
- if ( Transfer == "1.2.840.10008.1.2.4.50" )
- return true;
- return false;
-}
-
-/**
- * \ingroup gdcmHeader
- * \brief Determines if the Transfer Syntax was already encountered
- * and if it corresponds to a JPEGExtendedProcess2-4 one.
- * @return True when JPEGExtendedProcess2-4 found. False in all other cases.
- */
-bool gdcmHeader::IsJPEGExtendedProcess2_4TransferSyntax(void) {
- gdcmHeaderEntry* Element = GetHeaderEntryByNumber(0x0002, 0x0010);
- if ( !Element )
- return false;
- LoadHeaderEntrySafe(Element);
- return ( Element->GetValue() == "1.2.840.10008.1.2.4.51" );
-}
-
-/**
- * \ingroup gdcmHeader
- * \brief Determines if the Transfer Syntax was already encountered
- * and if it corresponds to a JPEGExtendeProcess3-5 one.
- * @return True when JPEGExtendedProcess3-5 found. False in all other cases.
- */
-bool gdcmHeader::IsJPEGExtendedProcess3_5TransferSyntax(void) {
- gdcmHeaderEntry* Element = GetHeaderEntryByNumber(0x0002, 0x0010);
- if ( !Element )
- return false;
- LoadHeaderEntrySafe(Element);
-
- std::string Transfer = Element->GetValue();
- if ( Transfer == "1.2.840.10008.1.2.4.52" )
- return true;
- return false;
-}
-
-/**
- * \ingroup gdcmHeader
- * \brief Determines if the Transfer Syntax was already encountered
- * and if it corresponds to a JPEGSpectralSelectionProcess6-8 one.
- * @return True when JPEGSpectralSelectionProcess6-8 found. False in all
- * other cases.
- */
-bool gdcmHeader::IsJPEGSpectralSelectionProcess6_8TransferSyntax(void) {
- gdcmHeaderEntry* Element = GetHeaderEntryByNumber(0x0002, 0x0010);
- if ( !Element )
- return false;
- LoadHeaderEntrySafe(Element);
-
- std::string Transfer = Element->GetValue();
- if ( Transfer == "1.2.840.10008.1.2.4.53" )
- return true;
- return false;
-}
-
-/**
- * \ingroup gdcmHeader
- * \brief Determines if the Transfer Syntax was already encountered
- * and if it corresponds to a RLE Lossless one.
- * @return True when RLE Lossless found. False in all
- * other cases.
- */
-bool gdcmHeader::IsRLELossLessTransferSyntax(void) {
- gdcmHeaderEntry* Element = GetHeaderEntryByNumber(0x0002, 0x0010);
- if ( !Element )
- return false;
- LoadHeaderEntrySafe(Element);
-
- std::string Transfer = Element->GetValue();
- if ( Transfer == "1.2.840.10008.1.2.5" ) {
- return true;
- }
- return false;
-}
-
-/**
- * \ingroup gdcmHeader
- * \brief Determines if Transfer Syntax was already encountered
- * and if it corresponds to a JPEG Lossless one.
- * @return True when RLE Lossless found. False in all
- * other cases.
- */
-bool gdcmHeader::IsJPEGLossless(void) {
- gdcmHeaderEntry* Element = GetHeaderEntryByNumber(0x0002, 0x0010);
- // faire qq chose d'intelligent a la place de ça
- if ( !Element )
- return false;
- LoadHeaderEntrySafe(Element);
-
- const char * Transfert = Element->GetValue().c_str();
- if ( memcmp(Transfert+strlen(Transfert)-2 ,"70",2)==0) return true;
- if ( memcmp(Transfert+strlen(Transfert)-2 ,"55",2)==0) return true;
- if (Element->GetValue() == "1.2.840.10008.1.2.4.57") return true;
-
- return false;
-}
-
-/**
- * \ingroup gdcmHeader
- * \brief Determines if the Transfer Syntax was already encountered
- * and if it corresponds to a JPEG2000 one
- * @return True when JPEG2000 (Lossly or LossLess) found. False in all
- * other cases.
- */
-bool gdcmHeader::IsJPEG2000(void) {
- gdcmHeaderEntry* Element = GetHeaderEntryByNumber(0x0002, 0x0010);
- if ( !Element )
- return false;
- LoadHeaderEntrySafe(Element);
-
- std::string Transfer = Element->GetValue();
- if ( (Transfer == "1.2.840.10008.1.2.4.90")
- || (Transfer == "1.2.840.10008.1.2.4.91") )
- return true;
- return false;
-}
-
-/**
- * \ingroup gdcmHeader
- * \brief Predicate for dicom version 3 file.
- * @return True when the file is a dicom version 3.
- */
-bool gdcmHeader::IsDicomV3(void) {
- // Checking if Transfert Syntax exists is enough
- // Anyway, it's to late check if the 'Preamble' was found ...
- // And ... would it be a rich idea to check ?
- // (some 'no Preamble' DICOM images exist !)
- return (GetHeaderEntryByNumber(0x0002, 0x0010) != NULL);
-}
-
-/**
- * \ingroup gdcmHeader