docs: def cudnnGetTensor4dDescriptor(tensorDesc):
      """"
      Get parameters of a Tensor descriptor object.
  
      This function queries the parameters of the previouly initialized Tensor4D descriptor
      object.
  
      Parameters
      ----------
      tensorDesc : cudnnTensorDescriptor
          Handle to a previously initialized tensor descriptor.
  
      Returns
      -------
      dataType : cudnnDataType
          Data type.
      n : int
          Number of images.
      c : int
          Number of feature maps per image.
      h : int
          Height of each feature map.
      w : int
          Width of each feature map.
      nStride : int
          Stride between two consective images.
      cStride : int
          Stride between two consecutive feature maps.
      hStride : int
          Stride between two consecutive rows.
      wStride : int
          Stride between two consecutive columns.
      """
  
      dataType = ctypes.c_int()
      n = ctypes.c_int()
      c = ctypes.c_int()
      h = ctypes.c_int()
      w = ctypes.c_int()
      nStride = ctypes.c_int()
      cStride = ctypes.c_int()
      hStride = ctypes.c_int()
      wStride = ctypes.c_int()
  
      status = _libcudnn.cudnnGetTensor4dDescriptor(tensorDesc, ctypes.byref(dataType), ctypes.byref(n),
                                                    ctypes.byref(c), ctypes.byref(h), ctypes.byref(w),
                                                    ctypes.byref(nStride), ctypes.byref(cStride),
                                                    ctypes.byref(hStride), ctypes.byref(wStride))
      cudnnCheckStatus(status)
  
      return dataType.value, n.value, c.value, h.value, w.value, nStride.value, cStride.value, \
          hStride.value, wStride.value