@spiceErrorCheck<EOL>@spiceFoundExceptionThrower<EOL>def dskxsi(pri, target, srflst, et, fixref, vertex, raydir):
pri = ctypes.c_int(pri)<EOL>target = stypes.stringToCharP(target)<EOL>nsurf = ctypes.c_int(len(srflst))<EOL>srflst = stypes.toIntVector(srflst)<EOL>et = ctypes.c_double(et)<EOL>fixref = stypes.stringToCharP(fixref)<EOL>vertex = stypes.toDoubleVector(vertex)<EOL>raydir = stypes.toDoubleVector(raydir)<EOL>maxd = ctypes.c_int(<NUM_LIT:1>)<EOL>maxi = ctypes.c_int(<NUM_LIT:1>)<EOL>xpt  = stypes.emptyDoubleVector(<NUM_LIT:3>)<EOL>handle = ctypes.c_int(<NUM_LIT:0>)<EOL>dladsc = stypes.SpiceDLADescr()<EOL>dskdsc = stypes.SpiceDSKDescr()<EOL>dc     = stypes.emptyDoubleVector(<NUM_LIT:1>)<EOL>ic     = stypes.emptyIntVector(<NUM_LIT:1>)<EOL>found  = ctypes.c_int()<EOL>libspice.dskxsi_c(pri, target, nsurf, srflst, et, fixref, vertex, raydir, maxd, maxi, xpt, handle, dladsc, dskdsc, dc, ic, found)<EOL>return stypes.cVectorToPython(xpt), handle.value, dladsc, dskdsc, stypes.cVectorToPython(dc), stypes.cVectorToPython(ic), bool(found.value)<EOL>
Compute a ray-surface intercept using data provided by
multiple loaded DSK segments. Return information about
the source of the data defining the surface on which the
intercept was found: DSK handle, DLA and DSK descriptors,
and DSK data type-dependent parameters.

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

:param pri: Data prioritization flag.
:type pri: bool
:param target: Target body name.
:type target: str
:param srflst: Surface ID list.
:type srflst: list of int
:param et: Epoch, expressed as seconds past J2000 TDB.
:type et: float
:param fixref: Name of target body-fixed reference frame.
:type fixref: str
:param vertex: Vertex of ray.
:type vertex: 3-Element Array of floats
:param raydir: Direction vector of ray.
:type raydir: 3-Element Array of floats
:return: Intercept point, Handle of segment contributing surface data, DLADSC, DSKDSC, Double precision component of source info, Integer component of source info
:rtype: tuple