GDCM  2.4.5
Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
gdcm::TransferSyntax Class Reference

Class to manipulate Transfer Syntax. More...

#include <gdcmTransferSyntax.h>

Public Types

enum  NegociatedType {
  Unknown = 0,
  Explicit,
  Implicit
}
 
enum  TSType {
  ImplicitVRLittleEndian = 0,
  ImplicitVRBigEndianPrivateGE,
  ExplicitVRLittleEndian,
  DeflatedExplicitVRLittleEndian,
  ExplicitVRBigEndian,
  JPEGBaselineProcess1,
  JPEGExtendedProcess2_4,
  JPEGExtendedProcess3_5,
  JPEGSpectralSelectionProcess6_8,
  JPEGFullProgressionProcess10_12,
  JPEGLosslessProcess14,
  JPEGLosslessProcess14_1,
  JPEGLSLossless,
  JPEGLSNearLossless,
  JPEG2000Lossless,
  JPEG2000,
  JPEG2000Part2Lossless,
  JPEG2000Part2,
  RLELossless,
  MPEG2MainProfile,
  ImplicitVRBigEndianACRNEMA,
  CT_private_ELE,
  JPIPReferenced,
  MPEG2MainProfileHighLevel,
  MPEG4AVCH264HighProfileLevel4_1,
  MPEG4AVCH264BDcompatibleHighProfileLevel4_1,
  TS_END
}
 

Public Member Functions

 TransferSyntax (TSType type=ImplicitVRLittleEndian)
 
bool CanStoreLossy () const
 
NegociatedType GetNegociatedType () const
 
const char * GetString () const
 
SwapCode GetSwapCode () const
 
bool IsEncapsulated () const
 
bool IsEncoded () const
 
bool IsExplicit () const
 
bool IsImplicit () const
 
bool IsLossless () const
 
bool IsLossy () const
 
bool IsValid () const
 
 operator TSType () const
 

Static Public Member Functions

static const char * GetTSString (TSType ts)
 
static TSType GetTSType (const char *str)
 

Friends

std::ostream & operator<< (std::ostream &os, const TransferSyntax &ts)
 

Detailed Description

Class to manipulate Transfer Syntax.

Note
TRANSFER SYNTAX (Standard and Private): A set of encoding rules that allow Application Entities to unambiguously negotiate the encoding techniques (e.g., Data Element structure, byte ordering, compression) they are able to support, thereby allowing these Application Entities to communicate.
Todo:
: The implementation is completely retarded -> see gdcm::UIDs for a replacement We need: IsSupported We need preprocess of raw/xml file We need GetFullName()

Need a notion of Private Syntax. As defined in PS 3.5. Section 9.2

See also
UIDs
Examples:
GetJPEGSamplePrecision.cxx, and LargeVRDSExplicit.cxx.

Member Enumeration Documentation

Enumerator
Unknown 
Explicit 
Implicit 
Enumerator
ImplicitVRLittleEndian 
ImplicitVRBigEndianPrivateGE 
ExplicitVRLittleEndian 
DeflatedExplicitVRLittleEndian 
ExplicitVRBigEndian 
JPEGBaselineProcess1 
JPEGExtendedProcess2_4 
JPEGExtendedProcess3_5 
JPEGSpectralSelectionProcess6_8 
JPEGFullProgressionProcess10_12 
JPEGLosslessProcess14 
JPEGLosslessProcess14_1 
JPEGLSLossless 
JPEGLSNearLossless 
JPEG2000Lossless 
JPEG2000 
JPEG2000Part2Lossless 
JPEG2000Part2 
RLELossless 
MPEG2MainProfile 
ImplicitVRBigEndianACRNEMA 
CT_private_ELE 
JPIPReferenced 
MPEG2MainProfileHighLevel 
MPEG4AVCH264HighProfileLevel4_1 
MPEG4AVCH264BDcompatibleHighProfileLevel4_1 
TS_END 

Constructor & Destructor Documentation

gdcm::TransferSyntax::TransferSyntax ( TSType  type = ImplicitVRLittleEndian)
inline

Member Function Documentation

bool gdcm::TransferSyntax::CanStoreLossy ( ) const

return true if TransFer Syntax Allow storing of Lossy Pixel Data

NegociatedType gdcm::TransferSyntax::GetNegociatedType ( ) const
const char* gdcm::TransferSyntax::GetString ( ) const
inline

References GetTSString().

SwapCode gdcm::TransferSyntax::GetSwapCode ( ) const
Deprecated:
Return the SwapCode associated with the Transfer Syntax. Be careful with the special GE private syntax the DataSet is written in little endian but the Pixel Data is in Big Endian.
static const char* gdcm::TransferSyntax::GetTSString ( TSType  ts)
static
Examples:
LargeVRDSExplicit.cxx.

Referenced by GetString(), and gdcm::operator<<().

static TSType gdcm::TransferSyntax::GetTSType ( const char *  str)
static
bool gdcm::TransferSyntax::IsEncapsulated ( ) const
bool gdcm::TransferSyntax::IsEncoded ( ) const
bool gdcm::TransferSyntax::IsExplicit ( ) const
bool gdcm::TransferSyntax::IsImplicit ( ) const
bool gdcm::TransferSyntax::IsLossless ( ) const

Return true if the transfer syntax algorithm is a lossless algorithm

bool gdcm::TransferSyntax::IsLossy ( ) const

Return true if the transfer syntax algorithm is a lossy algorithm

bool gdcm::TransferSyntax::IsValid ( ) const
inline
gdcm::TransferSyntax::operator TSType ( ) const
inline

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
const TransferSyntax ts 
)
friend

The documentation for this class was generated from the following file:

Generated on Fri Sep 25 2015 17:58:34 for GDCM by doxygen 1.8.9.1
SourceForge.net Logo