class_docstr: Generic matlab matrix writing class 
code: def write_smalldata_element(self, arr, mdtype, byte_count):
      # write tag with embedded data
      tag = np.zeros((), NDT_TAG_SMALL)
      tag["byte_count_mdtype"] = (byte_count << 16) + mdtype
      # if arr.tobytes is < 4, the element will be zero-padded as needed.
      tag["data"] = arr.tobytes(order="F")
      self.write_bytes(tag)
  
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 5 for calling the VarWriter5 obj's underlying member method code with example usage: obj.write_smalldata_element(arr, mdtype, byte_count) without return types