Public Member Functions | Protected Member Functions

gdcm::FileExplicitFilter Class Reference

FileExplicitFilter class After changing a file from Implicit to Explicit representation (see ImageChangeTransferSyntax) one operation is to make sure the VR of each DICOM attribute are accurate and do match the one from PS 3.6. Indeed when a file is written in Implicit reprensentation, the VR is not stored directly in the file. More...

#include <gdcmFileExplicitFilter.h>

Collaboration diagram for gdcm::FileExplicitFilter:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 FileExplicitFilter ()
 ~FileExplicitFilter ()
bool Change ()
 Set FMI Transfer Syntax.
FileGetFile ()
void SetChangePrivateTags (bool b)
 Decide whether or not to VR'ify private tags.
void SetFile (const File &f)
 Set/Get File.
void SetRecomputeItemLength (bool b)
 By default set Sequence & Item length to Undefined to avoid recomputing length:
void SetRecomputeSequenceLength (bool b)
void SetUseVRUN (bool b)
 When VR=16bits in explicit but Implicit has a 32bits length, use VR=UN.

Protected Member Functions

bool ChangeFMI ()
bool ProcessDataSet (DataSet &ds, Dicts const &dicts)

Detailed Description

FileExplicitFilter class After changing a file from Implicit to Explicit representation (see ImageChangeTransferSyntax) one operation is to make sure the VR of each DICOM attribute are accurate and do match the one from PS 3.6. Indeed when a file is written in Implicit reprensentation, the VR is not stored directly in the file.

Warning:
changing an implicit dataset to an explicit dataset is NOT a trivial task of simply changing the VR to the dict one:
  • One has to make sure SQ is properly set
  • One has to recompute the explicit length SQ
  • One has to make sure that VR is valid for the encoding
  • One has to make sure that VR 16bits can store the original value length
Examples:

GenAllVR.cxx, and LargeVRDSExplicit.cxx.


Constructor & Destructor Documentation

gdcm::FileExplicitFilter::FileExplicitFilter (  )  [inline]
gdcm::FileExplicitFilter::~FileExplicitFilter (  )  [inline]

Member Function Documentation

bool gdcm::FileExplicitFilter::Change (  ) 

Set FMI Transfer Syntax.

Change

Examples:
GenAllVR.cxx, and LargeVRDSExplicit.cxx.
bool gdcm::FileExplicitFilter::ChangeFMI (  )  [protected]
File& gdcm::FileExplicitFilter::GetFile (  )  [inline]
bool gdcm::FileExplicitFilter::ProcessDataSet ( DataSet ds,
Dicts const &  dicts 
) [protected]
void gdcm::FileExplicitFilter::SetChangePrivateTags ( bool  b  )  [inline]

Decide whether or not to VR'ify private tags.

void gdcm::FileExplicitFilter::SetFile ( const File f  )  [inline]

Set/Get File.

Examples:
GenAllVR.cxx, and LargeVRDSExplicit.cxx.
void gdcm::FileExplicitFilter::SetRecomputeItemLength ( bool  b  ) 

By default set Sequence & Item length to Undefined to avoid recomputing length:

void gdcm::FileExplicitFilter::SetRecomputeSequenceLength ( bool  b  ) 
void gdcm::FileExplicitFilter::SetUseVRUN ( bool  b  )  [inline]

When VR=16bits in explicit but Implicit has a 32bits length, use VR=UN.


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

Generated on Mon Jul 29 2013 11:24:26 for GDCM by doxygen 1.7.1
SourceForge.net Logo