GDCM 2.2.1

- Main Page
- Related Pages
- Namespaces
- Classes
- Files
- Examples

- Class List
- Class Index
- Class Hierarchy
- Class Members

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:
[legend]
Collaboration diagram for gdcm::UNExplicitImplicitDataElement:
[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)
void | Empty ()
| Make Data Element empty (no Value)
const ByteValue * | GetByteValue () const
template<typename TDE >
VL | GetLength () const
const SequenceOfFragments * | GetSequenceOfFragments () const
const SequenceOfItems * | GetSequenceOfItems () const
SequenceOfItems * | GetSequenceOfItems ()
const Tag & | GetTag () const
| Get Tag.
Tag & | GetTag ()
Value const & | GetValue () const
| Set/Get Value (bytes array, SQ of items, SQ of fragments):
Value & | GetValue ()
SmartPointer< SequenceOfItems > | GetValueAsSQ () const
const VL & | GetVL () const
| Get VL.
VL & | GetVL ()
VR const & | GetVR () const
bool | IsEmpty () const
| Check if Data Element is empty.
bool | IsUndefinedLength () const
| return if Value Length if of undefined length
bool | operator< (const DataElement &de) const
DataElement & | operator= (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 & | 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< Value > | ValuePtr
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:

- gdcmUNExplicitImplicitDataElement.h