code: def _convert_funcarg_to_c(self, tp, fromvar, tovar, errcode):
      extraarg = ""
      if isinstance(tp, model.PrimitiveType):
          if tp.is_integer_type() and tp.name != "_Bool":
              converter = "_cffi_to_c_int"
              extraarg = ", %s" % tp.name
          else:
              converter = "(%s)_cffi_to_c_%s" % (
                  tp.get_c_name(""),
                  tp.name.replace(" ", "_"),
              )
          errvalue = "-1"
      #
      elif isinstance(tp, model.PointerType):
          self._convert_funcarg_to_c_ptr_or_array(
              tp, fromvar, tovar, errcode
          )
          return
      #
      elif isinstance(tp, (model.StructOrUnion, model.EnumType)):
          # a struct (not a struct pointer) as a function argument
          self._prnt(
              "  if (_cffi_to_c((char *)&%s, _cffi_type(%d), %s) < 0)"
              % (tovar, self._gettypenum(tp), fromvar)
          )
          self._prnt("    %s;" % errcode)
          return
      #
      elif isinstance(tp, model.FunctionPtrType):
          converter = "(%s)_cffi_to_c_pointer" % tp.get_c_name("")
          extraarg = ", _cffi_type(%d)" % self._gettypenum(tp)
          errvalue = "NULL"
      #
      else:
          raise NotImplementedError(tp)
      #
      self._prnt(
          "  %s = %s(%s%s);" % (tovar, converter, fromvar, extraarg)
      )
      self._prnt(
          "  if (%s == (%s)%s && PyErr_Occurred())"
          % (tovar, tp.get_c_name(""), errvalue)
      )
      self._prnt("    %s;" % errcode)
  
imports: import sys, imp
  from .None import model
  from .error import VerificationError
label_desc: Use image node_id 15 for calling the VCPythonEngine obj's underlying member method code with example usage: obj._convert_funcarg_to_c(tp, fromvar, tovar, errcode) without return types