GDCM  2.2.6
Public Member Functions | List of all members
gdcm::UNExplicitImplicitDataElement Class Reference

Class to read/write a DataElement as ExplicitImplicit Data Element This class gather two known bugs: More...

#include <gdcmUNExplicitImplicitDataElement.h>

Inheritance diagram for gdcm::UNExplicitImplicitDataElement:
Inheritance graph
[legend]
Collaboration diagram for gdcm::UNExplicitImplicitDataElement:
Collaboration graph
[legend]

Public Member Functions

VL GetLength () const
 
template<typename TSwap >
std::istream & Read (std::istream &is)
 
template<typename TSwap >
std::istream & ReadPreValue (std::istream &is)
 
template<typename TSwap >
std::istream & ReadValue (std::istream &is)
 
- Public Member Functions inherited from gdcm::DataElement
 DataElement (const Tag &t=Tag(0), const VL &vl=0, const VR &vr=VR::INVALID)
 
 DataElement (const DataElement &_val)
 
void Clear ()
 Clear Data Element (make Value empty and invalidate Tag & VR) More...
 
void Empty ()
 Make Data Element empty (no Value) More...
 
const ByteValueGetByteValue () const
 
template<typename TDE >
VL GetLength () const
 
const SequenceOfFragmentsGetSequenceOfFragments () const
 
SequenceOfFragmentsGetSequenceOfFragments ()
 
const SequenceOfItemsGetSequenceOfItems () const
 
SequenceOfItemsGetSequenceOfItems ()
 
const TagGetTag () const
 Get Tag. More...
 
TagGetTag ()
 
Value const & GetValue () const
 Set/Get Value (bytes array, SQ of items, SQ of fragments): More...
 
ValueGetValue ()
 
SmartPointer< SequenceOfItemsGetValueAsSQ () const
 
const VLGetVL () const
 Get VL. More...
 
VLGetVL ()
 
VR const & GetVR () const
 
bool IsEmpty () const
 Check if Data Element is empty. More...
 
bool IsUndefinedLength () const
 return if Value Length if of undefined length More...
 
bool operator< (const DataElement &de) const
 
DataElementoperator= (const DataElement &de)
 
bool operator== (const DataElement &de) const
 
template<typename TDE , typename TSwap >
std::istream & Read (std::istream &is)
 
template<typename TDE , typename TSwap >
std::istream & ReadOrSkip (std::istream &is, std::set< Tag > const &skiptags)
 
template<typename TDE , typename TSwap >
std::istream & ReadPreValue (std::istream &is, std::set< Tag > const &skiptags)
 
template<typename TDE , typename TSwap >
std::istream & ReadValue (std::istream &is, std::set< Tag > const &skiptags)
 
template<typename TDE , typename TSwap >
std::istream & ReadValueWithLength (std::istream &is, VL &length, std::set< Tag > const &skiptags)
 
template<typename TDE , typename TSwap >
std::istream & ReadWithLength (std::istream &is, VL &length)
 
void SetByteValue (const char *array, VL length)
 
void SetTag (const Tag &t)
 
void SetValue (Value const &vl)
 
void SetVL (const VL &vl)
 
void SetVLToUndefined ()
 
void SetVR (VR const &vr)
 
template<typename TDE , typename TSwap >
const std::ostream & Write (std::ostream &os) const
 

Additional Inherited Members

- Protected Types inherited from gdcm::DataElement
typedef SmartPointer< ValueValuePtr
 
- Protected Member Functions inherited from gdcm::DataElement
void SetValueFieldLength (VL vl, bool readvalues)
 
- Protected Attributes inherited from gdcm::DataElement
Tag TagField
 
ValuePtr ValueField
 
VL ValueLengthField
 
VR VRField
 

Detailed Description

Class to read/write a DataElement as ExplicitImplicit Data Element This class gather two known bugs:

  1. GDCM 1.2.0 would rewrite VR=UN Value Length on 2 bytes instead of 4 bytes
  2. GDCM 1.2.0 would also rewrite DataElement as Implicit when the VR would not be known this would only happen in some very rare cases. gdcm 2.X design could handle bug #1 or #2 exclusively, this class can now handle file which have both issues. See: gdcmData/TheralysGDCM120Bug.dcm

Member Function Documentation

VL gdcm::UNExplicitImplicitDataElement::GetLength ( ) const
template<typename TSwap >
std::istream& gdcm::UNExplicitImplicitDataElement::Read ( std::istream &  is)
template<typename TSwap >
std::istream& gdcm::UNExplicitImplicitDataElement::ReadPreValue ( std::istream &  is)
template<typename TSwap >
std::istream& gdcm::UNExplicitImplicitDataElement::ReadValue ( std::istream &  is)

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

Generated on Sat Dec 21 2013 05:56:22 for GDCM by doxygen 1.8.5
SourceForge.net Logo