pydicom.filereader.data_element_generator

pydicom.filereader.data_element_generator(fp, is_implicit_VR, is_little_endian, stop_when=None, defer_size=None, encoding='iso8859', specific_tags=None)[source]

Create a generator to efficiently return the raw data elements.

Note

This function is used internally - usually there is no need to call it from user code. To read data from a DICOM file, dcmread() shall be used instead.

Parameters
  • fp (file-like) – The file-like to read from.

  • is_implicit_VR (bool) – True if the data is encoded as implicit VR, False otherwise.

  • is_little_endian (bool) – True if the data is encoded as little endian, False otherwise.

  • stop_when (None, callable, optional) – If None (default), then the whole file is read. A callable which takes tag, VR, length, and returns True or False. If it returns True, read_data_element will just return.

  • defer_size (int, str, None, optional) – See dcmread() for parameter info.

  • encoding – Encoding scheme

  • specific_tags (list or None) – See dcmread() for parameter info.

Returns

  • VR (str or None) – None if implicit VR, otherwise the VR read from the file.

  • length (int) – The length of the DICOM data element (could be DICOM “undefined length” 0xFFFFFFFFL)

  • value_bytes (bytes or str) – The raw bytes from the DICOM file (not parsed into Python types)

  • is_little_endian (bool) – True if transfer syntax is little endian; else False.