@spiceErrorCheck<EOL>def illumf(method, target, ilusrc, et, fixref, abcorr, obsrvr, spoint):
method = stypes.stringToCharP(method)<EOL>target = stypes.stringToCharP(target)<EOL>ilusrc = stypes.stringToCharP(ilusrc)<EOL>et     = ctypes.c_double(et)<EOL>fixref = stypes.stringToCharP(fixref)<EOL>abcorr = stypes.stringToCharP(abcorr)<EOL>obsrvr = stypes.stringToCharP(obsrvr)<EOL>spoint = stypes.toDoubleVector(spoint)<EOL>trgepc = ctypes.c_double(<NUM_LIT:0>)<EOL>srfvec = stypes.emptyDoubleVector(<NUM_LIT:3>)<EOL>phase  = ctypes.c_double(<NUM_LIT:0>)<EOL>incdnc = ctypes.c_double(<NUM_LIT:0>)<EOL>emissn = ctypes.c_double(<NUM_LIT:0>)<EOL>visibl = ctypes.c_int()<EOL>lit    = ctypes.c_int()<EOL>libspice.illumf_c(method, target, ilusrc, et, fixref, abcorr, obsrvr, spoint,<EOL>ctypes.byref(trgepc), srfvec, ctypes.byref(phase),<EOL>ctypes.byref(incdnc), ctypes.byref(emissn),<EOL>ctypes.byref(visibl), ctypes.byref(lit))<EOL>return trgepc.value, stypes.cVectorToPython(srfvec),phase.value, incdnc.value, emissn.value, bool(visibl.value), bool(lit.value)<EOL>
Compute the illumination angles---phase, incidence, and
emission---at a specified point on a target body. Return logical
flags indicating whether the surface point is visible from
the observer's position and whether the surface point is
illuminated.

The target body's surface is represented using topographic data
provided by DSK files, or by a reference ellipsoid.

The illumination source is a specified ephemeris object.

https://naif.jpl.nasa.gov/pub/naif/toolkit_docs/C/cspice/illumf_c.html

:param method: Computation method.
:type method: str
:param target: Name of target body.
:type target: str 
:param ilusrc: Name of illumination source.
:type ilusrc: str
:param et: Epoch in ephemeris seconds past J2000.
:type et: float
:param fixref: Body-fixed, body-centered target body frame.
:type fixref: str
:param abcorr: Desired aberration correction.
:type abcorr: str
:param obsrvr: Name of observing body.
:type obsrvr: str
:param spoint: Body-fixed coordinates of a target surface point.
:type spoint: 3-Element Array of floats
:return: Target surface point epoch, Vector from observer to target
 surface point, Phase angle at the surface point, Source incidence 
 angle at the surface point, Emission angle at the surface point, 
 Visibility flag, Illumination flag
:rtype: tuple