class_docstr: Reader for Mat 5 mat files
  Adds the following attribute to base class
  
  uint16_codec - char codec to use for uint16 char arrays
      (defaults to system default codec)
  
  Uses variable reader that has the following stardard interface (see
  abstract class in ``miobase``::
  
     __init__(self, file_reader)
     read_header(self)
     array_from_header(self)
  
  and added interface::
  
     set_stream(self, stream)
     read_full_tag(self)
docstr: Read in mat 5 file header 
docstr_tok: ["Read","in","mat","5","file","header"]
code: def read_file_header(self):
      """Read in mat 5 file header"""
      hdict = {}
      hdr_dtype = MDTYPES[self.byte_order]["dtypes"]["file_header"]
      hdr = read_dtype(self.mat_stream, hdr_dtype)
      hdict["__header__"] = (
          hdr["description"].item().strip(b" \t\n\000")
      )
      v_major = hdr["version"] >> 8
      v_minor = hdr["version"] & 0xFF
      hdict["__version__"] = "%d.%d" % (v_major, v_minor)
      return hdict
  
imports: import os
  import time
  import sys
  import zlib
  from io import BytesIO
  import warnings
  import numpy
  import scipy.sparse
  from .byteordercodes import native_code, swapped_code
  from .miobase import MatFileReader, docfiller, matdims, read_dtype, arr_to_chars, arr_dtype_number, MatWriteError, MatReadError, MatReadWarning
  from .mio5_utils import VarReader5
  from .mio5_params import MatlabObject, MatlabFunction, MDTYPES, NP_TO_MTYPES, NP_TO_MXTYPES, miCOMPRESSED, miMATRIX, miINT8, miUTF8, miUINT32, mxCELL_CLASS, mxSTRUCT_CLASS, mxOBJECT_CLASS, mxCHAR_CLASS, mxSPARSE_CLASS, mxDOUBLE_CLASS, mclass_info, mat_struct
  from .streams import ZlibInputStream
label_desc: Use image node_id 3 for calling the MatFile5Reader obj's underlying member method code with example usage: obj.read_file_header() and returns: hdict