class_docstr: Generator for the gl2 (desktop) backend.
class_docstr_tok: ["Generator","for","the","gl2","(","desktop",")","backend","."]
code: def _get_argtype_str(self, es2func):
      ct_arg_types = [
          KNOWN_TYPES.get(arg.ctype, None) for arg in es2func.args
      ]
      # Set argument types on ctypes function
      if None in ct_arg_types:
          argstr = "UNKNOWN_ARGTYPES"
      elif es2func.group:
          argstr = "UNKNOWN_ARGTYPES"
      else:
          argstr = ", ".join(
              ["ctypes.%s" % t[1] for t in ct_arg_types[1:]]
          )
          argstr = "()" if not argstr else "(%s,)" % argstr
      # Set output arg (if available)
      if ct_arg_types[0][0] != type(None):
          resstr = "ctypes.%s" % ct_arg_types[0][1]
      else:
          resstr = "None"
      return resstr, argstr
  
imports: from __future__ import annotations
  import os
  import sys
  import headerparser
  from annotations import parse_anotations
  from OpenGL import GL
label_desc: Use image node_id 1 for calling the Gl2ApiGenerator obj's underlying member method code with example usage: obj._get_argtype_str(es2func) and returns: resstr,  argstr