docs: def read_tile_header(codec, stream):
      """Reads a tile header.
  
      Wraps the openjp2 library function opj_read_tile_header.
  
      Parameters
      ----------
      codec : codec_t
          The JPEG2000 codec to read.
      stream : STREAM_TYPE_P
          The JPEG2000 stream.
  
      Returns
      -------
      tile_index : int
          index of the tile being decoded
      data_size : int
          number of bytes for the decoded area
      x0, y0 : int
          upper left-most coordinate of tile
      x1, y1 : int
          lower right-most coordinate of tile
      ncomps : int
          number of components in the tile
      go_on : bool
          indicates that decoding should continue
  
      Raises
      ------
      RuntimeError
          If the OpenJPEG library routine opj_read_tile_header fails.
      """
      ARGTYPES = [CODEC_TYPE,
                  STREAM_TYPE_P,
                  ctypes.POINTER(ctypes.c_uint32),
                  ctypes.POINTER(ctypes.c_uint32),
                  ctypes.POINTER(ctypes.c_int32),
                  ctypes.POINTER(ctypes.c_int32),
                  ctypes.POINTER(ctypes.c_int32),
                  ctypes.POINTER(ctypes.c_int32),
                  ctypes.POINTER(ctypes.c_uint32),
                  ctypes.POINTER(BOOL_TYPE)]
      OPENJP2.opj_read_tile_header.argtypes = ARGTYPES
      OPENJP2.opj_read_tile_header.restype = check_error
  
      tile_index = ctypes.c_uint32()
      data_size = ctypes.c_uint32()
      col0 = ctypes.c_int32()
      row0 = ctypes.c_int32()
      col1 = ctypes.c_int32()
      row1 = ctypes.c_int32()
      ncomps = ctypes.c_uint32()
      go_on = BOOL_TYPE()
      OPENJP2.opj_read_tile_header(codec,
                                   stream,
                                   ctypes.byref(tile_index),
                                   ctypes.byref(data_size),
                                   ctypes.byref(col0),
                                   ctypes.byref(row0),
                                   ctypes.byref(col1),
                                   ctypes.byref(row1),
                                   ctypes.byref(ncomps),
                                   ctypes.byref(go_on))
      go_on = bool(go_on.value)
      return (tile_index.value,
              data_size.value,
              col0.value,
              row0.value,
              col1.value,
              row1.value,
              ncomps.value,
              go_on)