Skip to main content

spice/
unlinked.rs

1/*!
2The CSPICE API, declared rather than generated.
3
4This is what the `unlinked` feature puts behind [`crate::c`] in place of the bindings `cspice-sys`
5writes from the headers of the toolkit installed on the machine. It exists because docs.rs cannot
6run that build script, and it is what lets the crate document itself there.
7
8Nothing here is linked against anything, so a program built this way will not resolve a single one
9of these symbols. It is enough to document the crate and to type check it, and no more.
10
11Generated by `tools/bindings.py` from rust-bindgen 0.60.1 over CSPICE N0067; do not edit.
12*/
13
14#![allow(
15    non_upper_case_globals,
16    non_camel_case_types,
17    non_snake_case,
18    dead_code
19)]
20#![allow(clippy::all)]
21
22pub const SPICETRUE: u32 = 1;
23pub const SPICEFALSE: u32 = 0;
24pub const ARROWLEN: u32 = 5;
25pub const SPICE_ERROR_LMSGLN: u32 = 1841;
26pub const SPICE_ERROR_SMSGLN: u32 = 26;
27pub const SPICE_ERROR_XMSGLN: u32 = 81;
28pub const SPICE_ERROR_MODLEN: u32 = 33;
29pub const SPICE_ERROR_MAXMOD: u32 = 100;
30pub const SPICE_ERROR_TRCLEN: u32 = 3696;
31pub const SPICE_EK_CNAMSZ: u32 = 32;
32pub const SPICE_EK_CSTRLN: u32 = 33;
33pub const SPICE_EK_TNAMSZ: u32 = 64;
34pub const SPICE_EK_TSTRLN: u32 = 65;
35pub const SPICE_EK_MXCLSG: u32 = 100;
36pub const SPICE_EK_TYPLEN: u32 = 4;
37pub const SPICE_EK_MAXQRY: u32 = 2000;
38pub const SPICE_EK_MAXQSEL: u32 = 50;
39pub const SPICE_EK_MAXQTAB: u32 = 10;
40pub const SPICE_EK_MAXQCON: u32 = 1000;
41pub const SPICE_EK_MAXQJOIN: u32 = 10;
42pub const SPICE_EK_MAXQJCON: u32 = 100;
43pub const SPICE_EK_MAXQORD: u32 = 10;
44pub const SPICE_EK_MAXQTOK: u32 = 500;
45pub const SPICE_EK_MAXQNUM: u32 = 100;
46pub const SPICE_EK_MAXQCLN: u32 = 2000;
47pub const SPICE_EK_MAXQSTR: u32 = 1024;
48pub const SPICE_EK_VARSIZ: i32 = -1;
49pub const SPICE_NFRAME_NINERT: u32 = 21;
50pub const SPICE_NFRAME_NNINRT: u32 = 124;
51pub const SPICE_FRMTYP_INERTL: u32 = 1;
52pub const SPICE_FRMTYP_PCK: u32 = 2;
53pub const SPICE_FRMTYP_CK: u32 = 3;
54pub const SPICE_FRMTYP_TK: u32 = 4;
55pub const SPICE_FRMTYP_DYN: u32 = 5;
56pub const SPICE_FRMTYP_SWTCH: u32 = 6;
57pub const SPICE_FRMTYP_ALL: i32 = -1;
58pub const SPICE_CELL_CTRLSZ: u32 = 6;
59pub const SPICE_SCLK_MXPART: u32 = 9999;
60pub const SPICE_GF_NWMAX: u32 = 15;
61pub const SPICE_GF_NWDIST: u32 = 5;
62pub const SPICE_GF_NWILUM: u32 = 5;
63pub const SPICE_GF_NWSEP: u32 = 5;
64pub const SPICE_GF_NWRR: u32 = 5;
65pub const SPICE_GF_NWPA: u32 = 5;
66pub const SPICE_GF_MAXVRT: u32 = 10000;
67pub const SPICE_GF_CIRFOV: &[u8; 7usize] = b"CIRCLE\0";
68pub const SPICE_GF_ELLFOV: &[u8; 8usize] = b"ELLIPSE\0";
69pub const SPICE_GF_POLFOV: &[u8; 8usize] = b"POLYGON\0";
70pub const SPICE_GF_RECFOV: &[u8; 10usize] = b"RECTANGLE\0";
71pub const SPICE_GF_SHPLEN: u32 = 10;
72pub const SPICE_GF_ANNULR: &[u8; 8usize] = b"ANNULAR\0";
73pub const SPICE_GF_ANY: &[u8; 4usize] = b"ANY\0";
74pub const SPICE_GF_FULL: &[u8; 5usize] = b"FULL\0";
75pub const SPICE_GF_PARTL: &[u8; 8usize] = b"PARTIAL\0";
76pub const SPICE_GF_EDSHAP: &[u8; 10usize] = b"ELLIPSOID\0";
77pub const SPICE_GF_PTSHAP: &[u8; 6usize] = b"POINT\0";
78pub const SPICE_GF_RYSHAP: &[u8; 4usize] = b"RAY\0";
79pub const SPICE_GF_SPSHAP: &[u8; 7usize] = b"SPHERE\0";
80pub const SPICE_GF_ADDWIN: f64 = 1.0;
81pub const SPICE_GFEVNT_MAXPAR: u32 = 10;
82pub const SPICE_OCCULT_TOTAL1: i32 = -3;
83pub const SPICE_OCCULT_ANNLR1: i32 = -2;
84pub const SPICE_OCCULT_PARTL1: i32 = -1;
85pub const SPICE_OCCULT_NOOCC: u32 = 0;
86pub const SPICE_OCCULT_PARTL2: u32 = 1;
87pub const SPICE_OCCULT_ANNLR2: u32 = 2;
88pub const SPICE_OCCULT_TOTAL2: u32 = 3;
89pub const SPICE_DAS_FTSIZE: u32 = 5000;
90pub const SPICE_DAS_CHARDT: u32 = 0;
91pub const SPICE_DAS_DPDT: u32 = 1;
92pub const SPICE_DAS_INTDT: u32 = 2;
93pub const SPICE_DLA_VERIDX: u32 = 1;
94pub const SPICE_DLA_LLBIDX: u32 = 2;
95pub const SPICE_DLA_LLEIDX: u32 = 3;
96pub const SPICE_DLA_NULPTR: i32 = -1;
97pub const SPICE_DLA_DSCSIZ: u32 = 8;
98pub const SPICE_DLA_BWDIDX: u32 = 0;
99pub const SPICE_DLA_FWDIDX: u32 = 1;
100pub const SPICE_DLA_IBSIDX: u32 = 2;
101pub const SPICE_DLA_ISZIDX: u32 = 3;
102pub const SPICE_DLA_DBSIDX: u32 = 4;
103pub const SPICE_DLA_DSZIDX: u32 = 5;
104pub const SPICE_DLA_CBSIDX: u32 = 6;
105pub const SPICE_DLA_CSZIDX: u32 = 7;
106pub const SPICE_DLA_FMTVER: u32 = 1000000;
107pub const SPICE_DSK_DSCSIZ: u32 = 24;
108pub const SPICE_DSK_NSYPAR: u32 = 10;
109pub const SPICE_DSK_SRFIDX: u32 = 0;
110pub const SPICE_DSK_CTRIDX: u32 = 1;
111pub const SPICE_DSK_CLSIDX: u32 = 2;
112pub const SPICE_DSK_TYPIDX: u32 = 3;
113pub const SPICE_DSK_FRMIDX: u32 = 4;
114pub const SPICE_DSK_SYSIDX: u32 = 5;
115pub const SPICE_DSK_PARIDX: u32 = 6;
116pub const SPICE_DSK_MN1IDX: u32 = 16;
117pub const SPICE_DSK_MX1IDX: u32 = 17;
118pub const SPICE_DSK_MN2IDX: u32 = 18;
119pub const SPICE_DSK_MX2IDX: u32 = 19;
120pub const SPICE_DSK_MN3IDX: u32 = 20;
121pub const SPICE_DSK_MX3IDX: u32 = 21;
122pub const SPICE_DSK_BTMIDX: u32 = 22;
123pub const SPICE_DSK_ETMIDX: u32 = 23;
124pub const SPICE_DSK_SVFCLS: u32 = 1;
125pub const SPICE_DSK_GENCLS: u32 = 2;
126pub const SPICE_DSK_LATSYS: u32 = 1;
127pub const SPICE_DSK_CYLSYS: u32 = 2;
128pub const SPICE_DSK_RECSYS: u32 = 3;
129pub const SPICE_DSK_PDTSYS: u32 = 4;
130pub const SPICE_DSK02_MAXVRT: u32 = 16000002;
131pub const SPICE_DSK02_MAXPLT: u32 = 32000000;
132pub const SPICE_DSK02_MAXNPV: u32 = 48000001;
133pub const SPICE_DSK02_MAXVOX: u32 = 100000000;
134pub const SPICE_DSK02_MAXCGR: u32 = 100000;
135pub const SPICE_DSK02_MAXEDG: u32 = 120;
136pub const SPICE_DSK02_SIVGRX: u32 = 0;
137pub const SPICE_DSK02_SICGSC: u32 = 3;
138pub const SPICE_DSK02_SIVXNP: u32 = 4;
139pub const SPICE_DSK02_SIVXNL: u32 = 5;
140pub const SPICE_DSK02_SIVTNL: u32 = 6;
141pub const SPICE_DSK02_SICGRD: u32 = 7;
142pub const SPICE_DSK02_IXIFIX: u32 = 100007;
143pub const SPICE_DSK02_SIVTBD: u32 = 0;
144pub const SPICE_DSK02_SIVXOR: u32 = 6;
145pub const SPICE_DSK02_SIVXSZ: u32 = 9;
146pub const SPICE_DSK02_IXDFIX: u32 = 10;
147pub const SPICE_DSK02_SPADSZ: u32 = 10;
148pub const SPICE_DSK02_MAXVXP: u32 = 16000000;
149pub const SPICE_DSK02_MAXCEL: u32 = 60000000;
150pub const SPICE_DSK02_MXNVLS: u32 = 68000000;
151pub const SPICE_DSK02_SPAISZ: u32 = 148100010;
152pub const SPICE_DSK02_KWNV: u32 = 1;
153pub const SPICE_DSK02_KWNP: u32 = 2;
154pub const SPICE_DSK02_KWNVXT: u32 = 3;
155pub const SPICE_DSK02_KWVGRX: u32 = 4;
156pub const SPICE_DSK02_KWCGSC: u32 = 5;
157pub const SPICE_DSK02_KWVXPS: u32 = 6;
158pub const SPICE_DSK02_KWVXLS: u32 = 7;
159pub const SPICE_DSK02_KWVTLS: u32 = 8;
160pub const SPICE_DSK02_KWPLAT: u32 = 9;
161pub const SPICE_DSK02_KWVXPT: u32 = 10;
162pub const SPICE_DSK02_KWVXPL: u32 = 11;
163pub const SPICE_DSK02_KWVTPT: u32 = 12;
164pub const SPICE_DSK02_KWVTPL: u32 = 13;
165pub const SPICE_DSK02_KWCGPT: u32 = 14;
166pub const SPICE_DSK02_KWDSC: u32 = 15;
167pub const SPICE_DSK02_KWVTBD: u32 = 16;
168pub const SPICE_DSK02_KWVXOR: u32 = 17;
169pub const SPICE_DSK02_KWVXSZ: u32 = 18;
170pub const SPICE_DSK02_KWVERT: u32 = 19;
171pub const SPICE_DSKXSI_DCSIZE: u32 = 1;
172pub const SPICE_DSKXSI_ICSIZE: u32 = 1;
173pub const SPICE_DSK_KEYXFR: u32 = 1;
174pub const SPICE_DSK_KEYSGR: u32 = 2;
175pub const SPICE_DSK_KEYSPM: u32 = 3;
176pub const SPICE_DSK_KEYPTM: u32 = 4;
177pub const SPICE_DSK_KEYAMG: u32 = 5;
178pub const SPICE_DSK_KEYLAL: u32 = 6;
179pub const SPICE_SRF_SFNMLN: u32 = 37;
180pub const SPICE_SRF_MAXSRF: u32 = 100;
181pub const SPICE_OSCLTX_NELTS: u32 = 20;
182pub type SpiceChar = ::std::os::raw::c_char;
183pub type SpiceDouble = f64;
184pub type SpiceFloat = f32;
185pub type SpiceInt = ::std::os::raw::c_int;
186pub type ConstSpiceChar = ::std::os::raw::c_char;
187pub type ConstSpiceDouble = f64;
188pub type ConstSpiceFloat = f32;
189pub type ConstSpiceInt = ::std::os::raw::c_int;
190pub type SpiceLong = ::std::os::raw::c_long;
191pub type SpiceShort = ::std::os::raw::c_short;
192pub type SpiceUChar = ::std::os::raw::c_uchar;
193pub type SpiceUInt = ::std::os::raw::c_uint;
194pub type SpiceULong = ::std::os::raw::c_ulong;
195pub type SpiceUShort = ::std::os::raw::c_ushort;
196pub type SpiceSChar = ::std::os::raw::c_schar;
197pub type SpiceBoolean = ::std::os::raw::c_int;
198pub type ConstSpiceBoolean = ::std::os::raw::c_int;
199pub const _Spicestatus_SPICEFAILURE: _Spicestatus = -1;
200pub const _Spicestatus_SPICESUCCESS: _Spicestatus = 0;
201pub type _Spicestatus = ::std::os::raw::c_int;
202pub use self::_Spicestatus as SpiceStatus;
203pub const _SpiceDataType_SPICE_CHR: _SpiceDataType = 0;
204pub const _SpiceDataType_SPICE_DP: _SpiceDataType = 1;
205pub const _SpiceDataType_SPICE_INT: _SpiceDataType = 2;
206pub const _SpiceDataType_SPICE_TIME: _SpiceDataType = 3;
207pub const _SpiceDataType_SPICE_BOOL: _SpiceDataType = 4;
208pub type _SpiceDataType = ::std::os::raw::c_uint;
209pub use self::_SpiceDataType as SpiceDataType;
210pub use self::SpiceDataType as SpiceEKDataType;
211pub const _SpiceEKExprClass_SPICE_EK_EXP_COL: _SpiceEKExprClass = 0;
212pub const _SpiceEKExprClass_SPICE_EK_EXP_FUNC: _SpiceEKExprClass = 1;
213pub const _SpiceEKExprClass_SPICE_EK_EXP_EXPR: _SpiceEKExprClass = 2;
214pub type _SpiceEKExprClass = ::std::os::raw::c_uint;
215pub use self::_SpiceEKExprClass as SpiceEKExprClass;
216#[repr(C)]
217#[derive(Debug, Copy, Clone)]
218pub struct _SpiceEKAttDsc {
219    pub cclass: SpiceInt,
220    pub dtype: SpiceEKDataType,
221    pub strlen: SpiceInt,
222    pub size: SpiceInt,
223    pub indexd: SpiceBoolean,
224    pub nullok: SpiceBoolean,
225}
226pub type SpiceEKAttDsc = _SpiceEKAttDsc;
227#[repr(C)]
228#[derive(Debug, Copy, Clone)]
229pub struct _SpiceEKSegSum {
230    pub tabnam: [SpiceChar; 65usize],
231    pub nrows: SpiceInt,
232    pub ncols: SpiceInt,
233    pub cnames: [[SpiceChar; 33usize]; 100usize],
234    pub cdescrs: [SpiceEKAttDsc; 100usize],
235}
236pub type SpiceEKSegSum = _SpiceEKSegSum;
237pub use self::_SpiceDataType as SpiceCellDataType;
238#[repr(C)]
239#[derive(Debug, Copy, Clone)]
240pub struct _SpiceCell {
241    pub dtype: SpiceCellDataType,
242    pub length: SpiceInt,
243    pub size: SpiceInt,
244    pub card: SpiceInt,
245    pub isSet: SpiceBoolean,
246    pub adjust: SpiceBoolean,
247    pub init: SpiceBoolean,
248    pub base: *mut ::std::os::raw::c_void,
249    pub data: *mut ::std::os::raw::c_void,
250}
251pub type SpiceCell = _SpiceCell;
252pub type ConstSpiceCell = SpiceCell;
253pub const _SpiceTransDir_C2F: _SpiceTransDir = 0;
254pub const _SpiceTransDir_F2C: _SpiceTransDir = 1;
255pub type _SpiceTransDir = ::std::os::raw::c_uint;
256pub use self::_SpiceTransDir as SpiceTransDir;
257pub const _SpiceCK05Subtype_C05TP0: _SpiceCK05Subtype = 0;
258pub const _SpiceCK05Subtype_C05TP1: _SpiceCK05Subtype = 1;
259pub const _SpiceCK05Subtype_C05TP2: _SpiceCK05Subtype = 2;
260pub const _SpiceCK05Subtype_C05TP3: _SpiceCK05Subtype = 3;
261pub type _SpiceCK05Subtype = ::std::os::raw::c_uint;
262pub use self::_SpiceCK05Subtype as SpiceCK05Subtype;
263pub const _SpiceSPK18Subtype_S18TP0: _SpiceSPK18Subtype = 0;
264pub const _SpiceSPK18Subtype_S18TP1: _SpiceSPK18Subtype = 1;
265pub type _SpiceSPK18Subtype = ::std::os::raw::c_uint;
266pub use self::_SpiceSPK18Subtype as SpiceSPK18Subtype;
267#[repr(C)]
268#[derive(Debug, Copy, Clone)]
269pub struct _SpiceDLADescr {
270    pub bwdptr: SpiceInt,
271    pub fwdptr: SpiceInt,
272    pub ibase: SpiceInt,
273    pub isize_: SpiceInt,
274    pub dbase: SpiceInt,
275    pub dsize: SpiceInt,
276    pub cbase: SpiceInt,
277    pub csize: SpiceInt,
278}
279pub type SpiceDLADescr = _SpiceDLADescr;
280pub type ConstSpiceDLADescr = SpiceDLADescr;
281#[repr(C)]
282#[derive(Debug, Copy, Clone)]
283pub struct _SpiceDSKDescr {
284    pub surfce: SpiceInt,
285    pub center: SpiceInt,
286    pub dclass: SpiceInt,
287    pub dtype: SpiceInt,
288    pub frmcde: SpiceInt,
289    pub corsys: SpiceInt,
290    pub corpar: [SpiceDouble; 10usize],
291    pub co1min: SpiceDouble,
292    pub co1max: SpiceDouble,
293    pub co2min: SpiceDouble,
294    pub co2max: SpiceDouble,
295    pub co3min: SpiceDouble,
296    pub co3max: SpiceDouble,
297    pub start: SpiceDouble,
298    pub stop: SpiceDouble,
299}
300pub type SpiceDSKDescr = _SpiceDSKDescr;
301pub type ConstSpiceDSKDescr = SpiceDSKDescr;
302#[repr(C)]
303#[derive(Debug, Copy, Clone)]
304pub struct _SpicePlane {
305    pub normal: [SpiceDouble; 3usize],
306    pub constant: SpiceDouble,
307}
308pub type SpicePlane = _SpicePlane;
309pub type ConstSpicePlane = SpicePlane;
310#[repr(C)]
311#[derive(Debug, Copy, Clone)]
312pub struct _SpiceEllipse {
313    pub center: [SpiceDouble; 3usize],
314    pub semiMajor: [SpiceDouble; 3usize],
315    pub semiMinor: [SpiceDouble; 3usize],
316}
317pub type SpiceEllipse = _SpiceEllipse;
318pub type ConstSpiceEllipse = SpiceEllipse;
319extern "C" {
320    pub fn appndc_c(item: *mut ConstSpiceChar, cell: *mut SpiceCell);
321}
322extern "C" {
323    pub fn appndd_c(item: SpiceDouble, cell: *mut SpiceCell);
324}
325extern "C" {
326    pub fn appndi_c(item: SpiceInt, cell: *mut SpiceCell);
327}
328extern "C" {
329    pub fn axisar_c(axis: *mut ConstSpiceDouble, angle: SpiceDouble, r: *mut [SpiceDouble; 3usize]);
330}
331extern "C" {
332    pub fn azlcpo_c(
333        method: *mut ConstSpiceChar,
334        target: *mut ConstSpiceChar,
335        et: SpiceDouble,
336        abcorr: *mut ConstSpiceChar,
337        azccw: SpiceBoolean,
338        elplsz: SpiceBoolean,
339        obspos: *mut ConstSpiceDouble,
340        obsctr: *mut ConstSpiceChar,
341        obsref: *mut ConstSpiceChar,
342        azlsta: *mut SpiceDouble,
343        lt: *mut SpiceDouble,
344    );
345}
346extern "C" {
347    pub fn azlrec_c(
348        range: SpiceDouble,
349        az: SpiceDouble,
350        el: SpiceDouble,
351        azccw: SpiceBoolean,
352        elplsz: SpiceBoolean,
353        rectan: *mut SpiceDouble,
354    );
355}
356extern "C" {
357    pub fn badkpv_c(
358        caller: *mut ConstSpiceChar,
359        name: *mut ConstSpiceChar,
360        comp: *mut ConstSpiceChar,
361        size: SpiceInt,
362        divby: SpiceInt,
363        type_: SpiceChar,
364    ) -> SpiceBoolean;
365}
366extern "C" {
367    pub fn bltfrm_c(frmcls: SpiceInt, idset: *mut SpiceCell);
368}
369extern "C" {
370    pub fn bodc2n_c(
371        code: SpiceInt,
372        namelen: SpiceInt,
373        name: *mut SpiceChar,
374        found: *mut SpiceBoolean,
375    );
376}
377extern "C" {
378    pub fn bodc2s_c(code: SpiceInt, lenout: SpiceInt, name: *mut SpiceChar);
379}
380extern "C" {
381    pub fn boddef_c(name: *mut ConstSpiceChar, code: SpiceInt);
382}
383extern "C" {
384    pub fn bodfnd_c(body: SpiceInt, item: *mut ConstSpiceChar) -> SpiceBoolean;
385}
386extern "C" {
387    pub fn bodn2c_c(name: *mut ConstSpiceChar, code: *mut SpiceInt, found: *mut SpiceBoolean);
388}
389extern "C" {
390    pub fn bods2c_c(name: *mut ConstSpiceChar, code: *mut SpiceInt, found: *mut SpiceBoolean);
391}
392extern "C" {
393    pub fn bodvar_c(
394        body: SpiceInt,
395        item: *mut ConstSpiceChar,
396        dim: *mut SpiceInt,
397        values: *mut SpiceDouble,
398    );
399}
400extern "C" {
401    pub fn bodvcd_c(
402        body: SpiceInt,
403        item: *mut ConstSpiceChar,
404        maxn: SpiceInt,
405        dim: *mut SpiceInt,
406        values: *mut SpiceDouble,
407    );
408}
409extern "C" {
410    pub fn bodvrd_c(
411        body: *mut ConstSpiceChar,
412        item: *mut ConstSpiceChar,
413        maxn: SpiceInt,
414        dim: *mut SpiceInt,
415        values: *mut SpiceDouble,
416    );
417}
418extern "C" {
419    pub fn brcktd_c(number: SpiceDouble, end1: SpiceDouble, end2: SpiceDouble) -> SpiceDouble;
420}
421extern "C" {
422    pub fn brckti_c(number: SpiceInt, end1: SpiceInt, end2: SpiceInt) -> SpiceInt;
423}
424extern "C" {
425    pub fn bschoc_c(
426        value: *mut ConstSpiceChar,
427        ndim: SpiceInt,
428        lenvals: SpiceInt,
429        array: *const ::std::os::raw::c_void,
430        order: *mut ConstSpiceInt,
431    ) -> SpiceInt;
432}
433extern "C" {
434    pub fn bschoi_c(
435        value: SpiceInt,
436        ndim: SpiceInt,
437        array: *mut ConstSpiceInt,
438        order: *mut ConstSpiceInt,
439    ) -> SpiceInt;
440}
441extern "C" {
442    pub fn bsrchc_c(
443        value: *mut ConstSpiceChar,
444        ndim: SpiceInt,
445        lenvals: SpiceInt,
446        array: *const ::std::os::raw::c_void,
447    ) -> SpiceInt;
448}
449extern "C" {
450    pub fn bsrchd_c(value: SpiceDouble, ndim: SpiceInt, array: *mut ConstSpiceDouble) -> SpiceInt;
451}
452extern "C" {
453    pub fn bsrchi_c(value: SpiceInt, ndim: SpiceInt, array: *mut ConstSpiceInt) -> SpiceInt;
454}
455extern "C" {
456    pub fn b1900_c() -> SpiceDouble;
457}
458extern "C" {
459    pub fn b1950_c() -> SpiceDouble;
460}
461extern "C" {
462    pub fn card_c(cell: *mut SpiceCell) -> SpiceInt;
463}
464extern "C" {
465    pub fn ccifrm_c(
466        frclss: SpiceInt,
467        clssid: SpiceInt,
468        lenout: SpiceInt,
469        frcode: *mut SpiceInt,
470        frname: *mut SpiceChar,
471        center: *mut SpiceInt,
472        found: *mut SpiceBoolean,
473    );
474}
475extern "C" {
476    pub fn cgv2el_c(
477        center: *mut ConstSpiceDouble,
478        vec1: *mut ConstSpiceDouble,
479        vec2: *mut ConstSpiceDouble,
480        ellipse: *mut SpiceEllipse,
481    );
482}
483extern "C" {
484    pub fn chbder_c(
485        cp: *mut ConstSpiceDouble,
486        degp: SpiceInt,
487        x2s: *mut SpiceDouble,
488        x: SpiceDouble,
489        nderiv: SpiceInt,
490        partdp: *mut SpiceDouble,
491        dpdxs: *mut SpiceDouble,
492    );
493}
494extern "C" {
495    pub fn chbigr_c(
496        degp: SpiceInt,
497        cp: *mut ConstSpiceDouble,
498        x2s: *mut ConstSpiceDouble,
499        x: SpiceDouble,
500        p: *mut SpiceDouble,
501        itgrlp: *mut SpiceDouble,
502    );
503}
504extern "C" {
505    pub fn chbint_c(
506        cp: *mut ConstSpiceDouble,
507        degp: SpiceInt,
508        x2s: *mut ConstSpiceDouble,
509        x: SpiceDouble,
510        p: *mut SpiceDouble,
511        dpdx: *mut SpiceDouble,
512    );
513}
514extern "C" {
515    pub fn chbval_c(
516        cp: *mut ConstSpiceDouble,
517        degp: SpiceInt,
518        x2s: *mut ConstSpiceDouble,
519        x: SpiceDouble,
520        p: *mut SpiceDouble,
521    );
522}
523extern "C" {
524    pub fn chkin_c(module: *mut ConstSpiceChar);
525}
526extern "C" {
527    pub fn chkout_c(module: *mut ConstSpiceChar);
528}
529extern "C" {
530    pub fn cidfrm_c(
531        cent: SpiceInt,
532        lenout: SpiceInt,
533        frcode: *mut SpiceInt,
534        frname: *mut SpiceChar,
535        found: *mut SpiceBoolean,
536    );
537}
538extern "C" {
539    pub fn ckfrot_c(
540        inst: SpiceInt,
541        et: SpiceDouble,
542        rotate: *mut [SpiceDouble; 3usize],
543        ref_: *mut SpiceInt,
544        found: *mut SpiceBoolean,
545    );
546}
547extern "C" {
548    pub fn ckfxfm_c(
549        inst: SpiceInt,
550        et: SpiceDouble,
551        xform: *mut [SpiceDouble; 6usize],
552        ref_: *mut SpiceInt,
553        found: *mut SpiceBoolean,
554    );
555}
556extern "C" {
557    pub fn ckgr02_c(
558        handle: SpiceInt,
559        descr: *mut ConstSpiceDouble,
560        recno: SpiceInt,
561        record: *mut SpiceDouble,
562    );
563}
564extern "C" {
565    pub fn ckcls_c(handle: SpiceInt);
566}
567extern "C" {
568    pub fn ckcov_c(
569        ck: *mut ConstSpiceChar,
570        idcode: SpiceInt,
571        needav: SpiceBoolean,
572        level: *mut ConstSpiceChar,
573        tol: SpiceDouble,
574        timsys: *mut ConstSpiceChar,
575        cover: *mut SpiceCell,
576    );
577}
578extern "C" {
579    pub fn ckgr03_c(
580        handle: SpiceInt,
581        descr: *mut ConstSpiceDouble,
582        recno: SpiceInt,
583        record: *mut SpiceDouble,
584    );
585}
586extern "C" {
587    pub fn ckobj_c(ck: *mut ConstSpiceChar, ids: *mut SpiceCell);
588}
589extern "C" {
590    pub fn ckgp_c(
591        inst: SpiceInt,
592        sclkdp: SpiceDouble,
593        tol: SpiceDouble,
594        ref_: *mut ConstSpiceChar,
595        cmat: *mut [SpiceDouble; 3usize],
596        clkout: *mut SpiceDouble,
597        found: *mut SpiceBoolean,
598    );
599}
600extern "C" {
601    pub fn ckgpav_c(
602        inst: SpiceInt,
603        sclkdp: SpiceDouble,
604        tol: SpiceDouble,
605        ref_: *mut ConstSpiceChar,
606        cmat: *mut [SpiceDouble; 3usize],
607        av: *mut SpiceDouble,
608        clkout: *mut SpiceDouble,
609        found: *mut SpiceBoolean,
610    );
611}
612extern "C" {
613    pub fn ckmeta_c(ckid: SpiceInt, meta: *mut ConstSpiceChar, idcode: *mut SpiceInt);
614}
615extern "C" {
616    pub fn cknr02_c(handle: SpiceInt, descr: *mut ConstSpiceDouble, nrec: *mut SpiceInt);
617}
618extern "C" {
619    pub fn cknr03_c(handle: SpiceInt, descr: *mut ConstSpiceDouble, nrec: *mut SpiceInt);
620}
621extern "C" {
622    pub fn clearc_c(ndim: SpiceInt, arrlen: SpiceInt, array: *mut ::std::os::raw::c_void);
623}
624extern "C" {
625    pub fn cklpf_c(fname: *mut ConstSpiceChar, handle: *mut SpiceInt);
626}
627extern "C" {
628    pub fn ckopn_c(
629        name: *mut ConstSpiceChar,
630        ifname: *mut ConstSpiceChar,
631        ncomch: SpiceInt,
632        handle: *mut SpiceInt,
633    );
634}
635extern "C" {
636    pub fn ckupf_c(handle: SpiceInt);
637}
638extern "C" {
639    pub fn ckw01_c(
640        handle: SpiceInt,
641        begtime: SpiceDouble,
642        endtime: SpiceDouble,
643        inst: SpiceInt,
644        ref_: *mut ConstSpiceChar,
645        avflag: SpiceBoolean,
646        segid: *mut ConstSpiceChar,
647        nrec: SpiceInt,
648        sclkdp: *mut ConstSpiceDouble,
649        quats: *mut [ConstSpiceDouble; 4usize],
650        avvs: *mut [ConstSpiceDouble; 3usize],
651    );
652}
653extern "C" {
654    pub fn ckw02_c(
655        handle: SpiceInt,
656        begtim: SpiceDouble,
657        endtim: SpiceDouble,
658        inst: SpiceInt,
659        ref_: *mut ConstSpiceChar,
660        segid: *mut ConstSpiceChar,
661        nrec: SpiceInt,
662        start: *mut ConstSpiceDouble,
663        stop: *mut ConstSpiceDouble,
664        quats: *mut [ConstSpiceDouble; 4usize],
665        avvs: *mut [ConstSpiceDouble; 3usize],
666        rates: *mut ConstSpiceDouble,
667    );
668}
669extern "C" {
670    pub fn ckw03_c(
671        handle: SpiceInt,
672        begtim: SpiceDouble,
673        endtim: SpiceDouble,
674        inst: SpiceInt,
675        ref_: *mut ConstSpiceChar,
676        avflag: SpiceBoolean,
677        segid: *mut ConstSpiceChar,
678        nrec: SpiceInt,
679        sclkdp: *mut ConstSpiceDouble,
680        quats: *mut [ConstSpiceDouble; 4usize],
681        avvs: *mut [ConstSpiceDouble; 3usize],
682        nints: SpiceInt,
683        starts: *mut ConstSpiceDouble,
684    );
685}
686extern "C" {
687    pub fn ckw05_c(
688        handle: SpiceInt,
689        subtyp: SpiceCK05Subtype,
690        degree: SpiceInt,
691        begtim: SpiceDouble,
692        endtim: SpiceDouble,
693        inst: SpiceInt,
694        ref_: *mut ConstSpiceChar,
695        avflag: SpiceBoolean,
696        segid: *mut ConstSpiceChar,
697        n: SpiceInt,
698        sclkdp: *mut ConstSpiceDouble,
699        packets: *const ::std::os::raw::c_void,
700        rate: SpiceDouble,
701        nints: SpiceInt,
702        starts: *mut ConstSpiceDouble,
703    );
704}
705extern "C" {
706    pub fn cleard_c(ndim: SpiceInt, array: *mut SpiceDouble);
707}
708extern "C" {
709    pub fn cleari_c(ndim: SpiceInt, array: *mut SpiceInt);
710}
711extern "C" {
712    pub fn clight_c() -> SpiceDouble;
713}
714extern "C" {
715    pub fn clpool_c();
716}
717extern "C" {
718    pub fn cmprss_c(
719        delim: SpiceChar,
720        n: SpiceInt,
721        input: *mut ConstSpiceChar,
722        lenout: SpiceInt,
723        output: *mut SpiceChar,
724    );
725}
726extern "C" {
727    pub fn cnmfrm_c(
728        cname: *mut ConstSpiceChar,
729        lenout: SpiceInt,
730        frcode: *mut SpiceInt,
731        frname: *mut SpiceChar,
732        found: *mut SpiceBoolean,
733    );
734}
735extern "C" {
736    pub fn conics_c(elts: *mut ConstSpiceDouble, et: SpiceDouble, state: *mut SpiceDouble);
737}
738extern "C" {
739    pub fn convrt_c(
740        x: SpiceDouble,
741        in_: *mut ConstSpiceChar,
742        out: *mut ConstSpiceChar,
743        y: *mut SpiceDouble,
744    );
745}
746extern "C" {
747    pub fn copy_c(a: *mut SpiceCell, b: *mut SpiceCell);
748}
749extern "C" {
750    pub fn cpos_c(
751        str_: *mut ConstSpiceChar,
752        chars: *mut ConstSpiceChar,
753        start: SpiceInt,
754    ) -> SpiceInt;
755}
756extern "C" {
757    pub fn cposr_c(
758        str_: *mut ConstSpiceChar,
759        chars: *mut ConstSpiceChar,
760        start: SpiceInt,
761    ) -> SpiceInt;
762}
763extern "C" {
764    pub fn cvpool_c(agent: *mut ConstSpiceChar, update: *mut SpiceBoolean);
765}
766extern "C" {
767    pub fn cyllat_c(
768        r: SpiceDouble,
769        lonc: SpiceDouble,
770        z: SpiceDouble,
771        radius: *mut SpiceDouble,
772        lon: *mut SpiceDouble,
773        lat: *mut SpiceDouble,
774    );
775}
776extern "C" {
777    pub fn cylrec_c(r: SpiceDouble, lon: SpiceDouble, z: SpiceDouble, rectan: *mut SpiceDouble);
778}
779extern "C" {
780    pub fn cylsph_c(
781        r: SpiceDouble,
782        lonc: SpiceDouble,
783        z: SpiceDouble,
784        radius: *mut SpiceDouble,
785        colat: *mut SpiceDouble,
786        lon: *mut SpiceDouble,
787    );
788}
789extern "C" {
790    pub fn dafac_c(
791        handle: SpiceInt,
792        n: SpiceInt,
793        lenvals: SpiceInt,
794        buffer: *const ::std::os::raw::c_void,
795    );
796}
797extern "C" {
798    pub fn dafbbs_c(handle: SpiceInt);
799}
800extern "C" {
801    pub fn dafbfs_c(handle: SpiceInt);
802}
803extern "C" {
804    pub fn dafcls_c(handle: SpiceInt);
805}
806extern "C" {
807    pub fn dafcs_c(handle: SpiceInt);
808}
809extern "C" {
810    pub fn dafdc_c(handle: SpiceInt);
811}
812extern "C" {
813    pub fn dafec_c(
814        handle: SpiceInt,
815        bufsiz: SpiceInt,
816        lenout: SpiceInt,
817        n: *mut SpiceInt,
818        buffer: *mut ::std::os::raw::c_void,
819        done: *mut SpiceBoolean,
820    );
821}
822extern "C" {
823    pub fn daffna_c(found: *mut SpiceBoolean);
824}
825extern "C" {
826    pub fn daffpa_c(found: *mut SpiceBoolean);
827}
828extern "C" {
829    pub fn dafgda_c(handle: SpiceInt, begin: SpiceInt, end: SpiceInt, data: *mut SpiceDouble);
830}
831extern "C" {
832    pub fn dafgh_c(handle: *mut SpiceInt);
833}
834extern "C" {
835    pub fn dafgn_c(lenout: SpiceInt, name: *mut SpiceChar);
836}
837extern "C" {
838    pub fn dafgs_c(sum: *mut SpiceDouble);
839}
840extern "C" {
841    pub fn dafgsr_c(
842        handle: SpiceInt,
843        recno: SpiceInt,
844        begin: SpiceInt,
845        end: SpiceInt,
846        data: *mut SpiceDouble,
847        found: *mut SpiceBoolean,
848    );
849}
850extern "C" {
851    pub fn dafhsf_c(handle: SpiceInt, nd: *mut SpiceInt, ni: *mut SpiceInt);
852}
853extern "C" {
854    pub fn dafopr_c(fname: *mut ConstSpiceChar, handle: *mut SpiceInt);
855}
856extern "C" {
857    pub fn dafopw_c(fname: *mut ConstSpiceChar, handle: *mut SpiceInt);
858}
859extern "C" {
860    pub fn dafps_c(
861        nd: SpiceInt,
862        ni: SpiceInt,
863        dc: *mut ConstSpiceDouble,
864        ic: *mut ConstSpiceInt,
865        sum: *mut SpiceDouble,
866    );
867}
868extern "C" {
869    pub fn dafrda_c(handle: SpiceInt, begin: SpiceInt, end: SpiceInt, data: *mut SpiceDouble);
870}
871extern "C" {
872    pub fn dafrfr_c(
873        handle: SpiceInt,
874        lenout: SpiceInt,
875        nd: *mut SpiceInt,
876        ni: *mut SpiceInt,
877        ifname: *mut SpiceChar,
878        fward: *mut SpiceInt,
879        bward: *mut SpiceInt,
880        free: *mut SpiceInt,
881    );
882}
883extern "C" {
884    pub fn dasadc_c(
885        handle: SpiceInt,
886        n: SpiceInt,
887        bpos: SpiceInt,
888        epos: SpiceInt,
889        datlen: SpiceInt,
890        data: *const ::std::os::raw::c_void,
891    );
892}
893extern "C" {
894    pub fn dasadd_c(handle: SpiceInt, n: SpiceInt, data: *mut ConstSpiceDouble);
895}
896extern "C" {
897    pub fn dasadi_c(handle: SpiceInt, n: SpiceInt, data: *mut ConstSpiceInt);
898}
899extern "C" {
900    pub fn dafrs_c(sum: *mut ConstSpiceDouble);
901}
902extern "C" {
903    pub fn dafus_c(
904        sum: *mut ConstSpiceDouble,
905        nd: SpiceInt,
906        ni: SpiceInt,
907        dc: *mut SpiceDouble,
908        ic: *mut SpiceInt,
909    );
910}
911extern "C" {
912    pub fn dasac_c(
913        handle: SpiceInt,
914        n: SpiceInt,
915        buflen: SpiceInt,
916        buffer: *const ::std::os::raw::c_void,
917    );
918}
919extern "C" {
920    pub fn dascls_c(handle: SpiceInt);
921}
922extern "C" {
923    pub fn dasdc_c(handle: SpiceInt);
924}
925extern "C" {
926    pub fn dasec_c(
927        handle: SpiceInt,
928        bufsiz: SpiceInt,
929        buflen: SpiceInt,
930        n: *mut SpiceInt,
931        buffer: *mut ::std::os::raw::c_void,
932        done: *mut SpiceBoolean,
933    );
934}
935extern "C" {
936    pub fn dashfn_c(handle: SpiceInt, namlen: SpiceInt, fname: *mut SpiceChar);
937}
938extern "C" {
939    pub fn dashfs_c(
940        handle: SpiceInt,
941        nresvr: *mut SpiceInt,
942        nresvc: *mut SpiceInt,
943        ncomr: *mut SpiceInt,
944        ncomc: *mut SpiceInt,
945        free: *mut SpiceInt,
946        lastla: *mut SpiceInt,
947        lastrc: *mut SpiceInt,
948        lastwd: *mut SpiceInt,
949    );
950}
951extern "C" {
952    pub fn daslla_c(
953        handle: SpiceInt,
954        lastc: *mut SpiceInt,
955        lastd: *mut SpiceInt,
956        lasti: *mut SpiceInt,
957    );
958}
959extern "C" {
960    pub fn dasllc_c(handle: SpiceInt);
961}
962extern "C" {
963    pub fn dasonw_c(
964        fname: *mut ConstSpiceChar,
965        ftype: *mut ConstSpiceChar,
966        ifname: *mut ConstSpiceChar,
967        ncomr: SpiceInt,
968        handle: *mut SpiceInt,
969    );
970}
971extern "C" {
972    pub fn dasopr_c(fname: *mut ConstSpiceChar, handle: *mut SpiceInt);
973}
974extern "C" {
975    pub fn dasops_c(handle: *mut SpiceInt);
976}
977extern "C" {
978    pub fn dasopw_c(fname: *mut ConstSpiceChar, handle: *mut SpiceInt);
979}
980extern "C" {
981    pub fn dasrdc_c(
982        handle: SpiceInt,
983        first: SpiceInt,
984        last: SpiceInt,
985        bpos: SpiceInt,
986        epos: SpiceInt,
987        datlen: SpiceInt,
988        data: *mut ::std::os::raw::c_void,
989    );
990}
991extern "C" {
992    pub fn dasrdd_c(handle: SpiceInt, first: SpiceInt, last: SpiceInt, data: *mut SpiceDouble);
993}
994extern "C" {
995    pub fn dasrdi_c(handle: SpiceInt, first: SpiceInt, last: SpiceInt, data: *mut SpiceInt);
996}
997extern "C" {
998    pub fn dasrfr_c(
999        handle: SpiceInt,
1000        idwlen: SpiceInt,
1001        ifnlen: SpiceInt,
1002        idword: *mut SpiceChar,
1003        ifname: *mut SpiceChar,
1004        nresvr: *mut SpiceInt,
1005        nresvc: *mut SpiceInt,
1006        ncomr: *mut SpiceInt,
1007        ncomc: *mut SpiceInt,
1008    );
1009}
1010extern "C" {
1011    pub fn dasudc_c(
1012        handle: SpiceInt,
1013        first: SpiceInt,
1014        last: SpiceInt,
1015        bpos: SpiceInt,
1016        epos: SpiceInt,
1017        datlen: SpiceInt,
1018        data: *const ::std::os::raw::c_void,
1019    );
1020}
1021extern "C" {
1022    pub fn dasudd_c(handle: SpiceInt, first: SpiceInt, last: SpiceInt, data: *mut ConstSpiceDouble);
1023}
1024extern "C" {
1025    pub fn dasudi_c(handle: SpiceInt, first: SpiceInt, last: SpiceInt, data: *mut ConstSpiceInt);
1026}
1027extern "C" {
1028    pub fn daswbr_c(handle: SpiceInt);
1029}
1030extern "C" {
1031    pub fn dazldr_c(
1032        x: SpiceDouble,
1033        y: SpiceDouble,
1034        z: SpiceDouble,
1035        azccw: SpiceBoolean,
1036        elplsz: SpiceBoolean,
1037        jacobi: *mut [SpiceDouble; 3usize],
1038    );
1039}
1040extern "C" {
1041    pub fn dcyldr_c(
1042        x: SpiceDouble,
1043        y: SpiceDouble,
1044        z: SpiceDouble,
1045        jacobi: *mut [SpiceDouble; 3usize],
1046    );
1047}
1048extern "C" {
1049    pub fn deltet_c(epoch: SpiceDouble, eptype: *mut ConstSpiceChar, delta: *mut SpiceDouble);
1050}
1051extern "C" {
1052    pub fn det_c(m1: *mut [ConstSpiceDouble; 3usize]) -> SpiceDouble;
1053}
1054extern "C" {
1055    pub fn diags2_c(
1056        symmat: *mut [ConstSpiceDouble; 2usize],
1057        diag: *mut [SpiceDouble; 2usize],
1058        rotate: *mut [SpiceDouble; 2usize],
1059    );
1060}
1061extern "C" {
1062    pub fn diff_c(a: *mut SpiceCell, b: *mut SpiceCell, c: *mut SpiceCell);
1063}
1064extern "C" {
1065    pub fn dgeodr_c(
1066        x: SpiceDouble,
1067        y: SpiceDouble,
1068        z: SpiceDouble,
1069        re: SpiceDouble,
1070        f: SpiceDouble,
1071        jacobi: *mut [SpiceDouble; 3usize],
1072    );
1073}
1074extern "C" {
1075    pub fn dlabbs_c(handle: SpiceInt, descr: *mut SpiceDLADescr, found: *mut SpiceBoolean);
1076}
1077extern "C" {
1078    pub fn dlabfs_c(handle: SpiceInt, descr: *mut SpiceDLADescr, found: *mut SpiceBoolean);
1079}
1080extern "C" {
1081    pub fn dlabns_c(handle: SpiceInt);
1082}
1083extern "C" {
1084    pub fn dlaens_c(handle: SpiceInt);
1085}
1086extern "C" {
1087    pub fn dlafns_c(
1088        handle: SpiceInt,
1089        descr: *mut ConstSpiceDLADescr,
1090        nxtdsc: *mut SpiceDLADescr,
1091        found: *mut SpiceBoolean,
1092    );
1093}
1094extern "C" {
1095    pub fn dlafps_c(
1096        handle: SpiceInt,
1097        descr: *mut ConstSpiceDLADescr,
1098        prvdsc: *mut SpiceDLADescr,
1099        found: *mut SpiceBoolean,
1100    );
1101}
1102extern "C" {
1103    pub fn dlaopn_c(
1104        fname: *mut ConstSpiceChar,
1105        ftype: *mut ConstSpiceChar,
1106        ifname: *mut ConstSpiceChar,
1107        ncomch: SpiceInt,
1108        handle: *mut SpiceInt,
1109    );
1110}
1111extern "C" {
1112    pub fn dlatdr_c(
1113        x: SpiceDouble,
1114        y: SpiceDouble,
1115        z: SpiceDouble,
1116        jacobi: *mut [SpiceDouble; 3usize],
1117    );
1118}
1119extern "C" {
1120    pub fn dnearp_c(
1121        state: *mut ConstSpiceDouble,
1122        a: SpiceDouble,
1123        b: SpiceDouble,
1124        c: SpiceDouble,
1125        dnear: *mut SpiceDouble,
1126        dalt: *mut SpiceDouble,
1127        found: *mut SpiceBoolean,
1128    );
1129}
1130extern "C" {
1131    pub fn dp2hx_c(
1132        number: SpiceDouble,
1133        lenout: SpiceInt,
1134        string: *mut SpiceChar,
1135        length: *mut SpiceInt,
1136    );
1137}
1138extern "C" {
1139    pub fn dpgrdr_c(
1140        body: *mut ConstSpiceChar,
1141        x: SpiceDouble,
1142        y: SpiceDouble,
1143        z: SpiceDouble,
1144        re: SpiceDouble,
1145        f: SpiceDouble,
1146        jacobi: *mut [SpiceDouble; 3usize],
1147    );
1148}
1149extern "C" {
1150    pub fn drdazl_c(
1151        range: SpiceDouble,
1152        az: SpiceDouble,
1153        el: SpiceDouble,
1154        azccw: SpiceBoolean,
1155        elplsz: SpiceBoolean,
1156        jacobi: *mut [SpiceDouble; 3usize],
1157    );
1158}
1159extern "C" {
1160    pub fn dpmax_c() -> SpiceDouble;
1161}
1162extern "C" {
1163    pub fn dpmax_() -> SpiceDouble;
1164}
1165extern "C" {
1166    pub fn dpmin_c() -> SpiceDouble;
1167}
1168extern "C" {
1169    pub fn dpmin_() -> SpiceDouble;
1170}
1171extern "C" {
1172    pub fn dpr_c() -> SpiceDouble;
1173}
1174extern "C" {
1175    pub fn drdcyl_c(
1176        r: SpiceDouble,
1177        lon: SpiceDouble,
1178        z: SpiceDouble,
1179        jacobi: *mut [SpiceDouble; 3usize],
1180    );
1181}
1182extern "C" {
1183    pub fn drdgeo_c(
1184        lon: SpiceDouble,
1185        lat: SpiceDouble,
1186        alt: SpiceDouble,
1187        re: SpiceDouble,
1188        f: SpiceDouble,
1189        jacobi: *mut [SpiceDouble; 3usize],
1190    );
1191}
1192extern "C" {
1193    pub fn drdlat_c(
1194        r: SpiceDouble,
1195        lon: SpiceDouble,
1196        lat: SpiceDouble,
1197        jacobi: *mut [SpiceDouble; 3usize],
1198    );
1199}
1200extern "C" {
1201    pub fn drdpgr_c(
1202        body: *mut ConstSpiceChar,
1203        lon: SpiceDouble,
1204        lat: SpiceDouble,
1205        alt: SpiceDouble,
1206        re: SpiceDouble,
1207        f: SpiceDouble,
1208        jacobi: *mut [SpiceDouble; 3usize],
1209    );
1210}
1211extern "C" {
1212    pub fn drdsph_c(
1213        r: SpiceDouble,
1214        colat: SpiceDouble,
1215        lon: SpiceDouble,
1216        jacobi: *mut [SpiceDouble; 3usize],
1217    );
1218}
1219extern "C" {
1220    pub fn dskb02_c(
1221        handle: SpiceInt,
1222        dladsc: *mut ConstSpiceDLADescr,
1223        nv: *mut SpiceInt,
1224        np: *mut SpiceInt,
1225        nvxtot: *mut SpiceInt,
1226        vtxbds: *mut [SpiceDouble; 2usize],
1227        voxsiz: *mut SpiceDouble,
1228        voxori: *mut SpiceDouble,
1229        vgrext: *mut SpiceInt,
1230        cgscal: *mut SpiceInt,
1231        vtxnpl: *mut SpiceInt,
1232        voxnpt: *mut SpiceInt,
1233        voxnpl: *mut SpiceInt,
1234    );
1235}
1236extern "C" {
1237    pub fn dskcls_c(handle: SpiceInt, optmiz: SpiceBoolean);
1238}
1239extern "C" {
1240    pub fn dskd02_c(
1241        handle: SpiceInt,
1242        dladsc: *mut ConstSpiceDLADescr,
1243        item: SpiceInt,
1244        start: SpiceInt,
1245        room: SpiceInt,
1246        n: *mut SpiceInt,
1247        values: *mut SpiceDouble,
1248    );
1249}
1250extern "C" {
1251    pub fn dskgd_c(handle: SpiceInt, dladsc: *mut ConstSpiceDLADescr, dskdsc: *mut SpiceDSKDescr);
1252}
1253extern "C" {
1254    pub fn dskgtl_c(keywrd: SpiceInt, dpval: *mut SpiceDouble);
1255}
1256extern "C" {
1257    pub fn dski02_c(
1258        handle: SpiceInt,
1259        dladsc: *mut ConstSpiceDLADescr,
1260        item: SpiceInt,
1261        start: SpiceInt,
1262        room: SpiceInt,
1263        n: *mut SpiceInt,
1264        values: *mut SpiceInt,
1265    );
1266}
1267extern "C" {
1268    pub fn dskobj_c(dsk: *mut ConstSpiceChar, bodids: *mut SpiceCell);
1269}
1270extern "C" {
1271    pub fn dskopn_c(
1272        fname: *mut ConstSpiceChar,
1273        ifname: *mut ConstSpiceChar,
1274        ncomch: SpiceInt,
1275        handle: *mut SpiceInt,
1276    );
1277}
1278extern "C" {
1279    pub fn dskn02_c(
1280        handle: SpiceInt,
1281        dladsc: *mut ConstSpiceDLADescr,
1282        plid: SpiceInt,
1283        normal: *mut SpiceDouble,
1284    );
1285}
1286extern "C" {
1287    pub fn dskmi2_c(
1288        nv: SpiceInt,
1289        vrtces: *mut [ConstSpiceDouble; 3usize],
1290        np: SpiceInt,
1291        plates: *mut [ConstSpiceInt; 3usize],
1292        finscl: SpiceDouble,
1293        corscl: SpiceInt,
1294        worksz: SpiceInt,
1295        voxpsz: SpiceInt,
1296        voxlsz: SpiceInt,
1297        makvtl: SpiceBoolean,
1298        spxisz: SpiceInt,
1299        work: *mut [SpiceInt; 2usize],
1300        spaixd: *mut SpiceDouble,
1301        spaixi: *mut SpiceInt,
1302    );
1303}
1304extern "C" {
1305    pub fn dskp02_c(
1306        handle: SpiceInt,
1307        dladsc: *mut ConstSpiceDLADescr,
1308        start: SpiceInt,
1309        room: SpiceInt,
1310        n: *mut SpiceInt,
1311        plates: *mut [SpiceInt; 3usize],
1312    );
1313}
1314extern "C" {
1315    pub fn dskrb2_c(
1316        nv: SpiceInt,
1317        vrtces: *mut [ConstSpiceDouble; 3usize],
1318        np: SpiceInt,
1319        plates: *mut [ConstSpiceInt; 3usize],
1320        corsys: SpiceInt,
1321        corpar: *mut ConstSpiceDouble,
1322        mncor3: *mut SpiceDouble,
1323        mxcor3: *mut SpiceDouble,
1324    );
1325}
1326extern "C" {
1327    pub fn dsksrf_c(dsk: *mut ConstSpiceChar, bodyid: SpiceInt, srfids: *mut SpiceCell);
1328}
1329extern "C" {
1330    pub fn dskstl_c(keywrd: SpiceInt, dpval: SpiceDouble);
1331}
1332extern "C" {
1333    pub fn dskv02_c(
1334        handle: SpiceInt,
1335        dladsc: *mut ConstSpiceDLADescr,
1336        start: SpiceInt,
1337        room: SpiceInt,
1338        n: *mut SpiceInt,
1339        vrtces: *mut [SpiceDouble; 3usize],
1340    );
1341}
1342extern "C" {
1343    pub fn dskw02_c(
1344        handle: SpiceInt,
1345        center: SpiceInt,
1346        surfce: SpiceInt,
1347        dclass: SpiceInt,
1348        frame: *mut ConstSpiceChar,
1349        corsys: SpiceInt,
1350        corpar: *mut ConstSpiceDouble,
1351        mncor1: SpiceDouble,
1352        mxcor1: SpiceDouble,
1353        mncor2: SpiceDouble,
1354        mxcor2: SpiceDouble,
1355        mncor3: SpiceDouble,
1356        mxcor3: SpiceDouble,
1357        first: SpiceDouble,
1358        last: SpiceDouble,
1359        nv: SpiceInt,
1360        vrtces: *mut [ConstSpiceDouble; 3usize],
1361        np: SpiceInt,
1362        plates: *mut [ConstSpiceInt; 3usize],
1363        spaixd: *mut ConstSpiceDouble,
1364        spaixi: *mut ConstSpiceInt,
1365    );
1366}
1367extern "C" {
1368    pub fn dskx02_c(
1369        handle: SpiceInt,
1370        dladsc: *mut ConstSpiceDLADescr,
1371        vertex: *mut ConstSpiceDouble,
1372        raydir: *mut ConstSpiceDouble,
1373        plid: *mut SpiceInt,
1374        xpt: *mut SpiceDouble,
1375        found: *mut SpiceBoolean,
1376    );
1377}
1378extern "C" {
1379    pub fn dskxsi_c(
1380        pri: SpiceBoolean,
1381        target: *mut ConstSpiceChar,
1382        nsurf: SpiceInt,
1383        srflst: *mut ConstSpiceInt,
1384        et: SpiceDouble,
1385        fixref: *mut ConstSpiceChar,
1386        vertex: *mut ConstSpiceDouble,
1387        raydir: *mut ConstSpiceDouble,
1388        maxd: SpiceInt,
1389        maxi: SpiceInt,
1390        xpt: *mut SpiceDouble,
1391        handle: *mut SpiceInt,
1392        dladsc: *mut SpiceDLADescr,
1393        dskdsc: *mut SpiceDSKDescr,
1394        dc: *mut SpiceDouble,
1395        ic: *mut SpiceInt,
1396        found: *mut SpiceBoolean,
1397    );
1398}
1399extern "C" {
1400    pub fn dskxv_c(
1401        pri: SpiceBoolean,
1402        target: *mut ConstSpiceChar,
1403        nsurf: SpiceInt,
1404        srflst: *mut ConstSpiceInt,
1405        et: SpiceDouble,
1406        fixref: *mut ConstSpiceChar,
1407        nrays: SpiceInt,
1408        vtxarr: *mut [ConstSpiceDouble; 3usize],
1409        dirarr: *mut [ConstSpiceDouble; 3usize],
1410        xptarr: *mut [SpiceDouble; 3usize],
1411        fndarr: *mut SpiceBoolean,
1412    );
1413}
1414extern "C" {
1415    pub fn dskz02_c(
1416        handle: SpiceInt,
1417        dladsc: *mut ConstSpiceDLADescr,
1418        nv: *mut SpiceInt,
1419        np: *mut SpiceInt,
1420    );
1421}
1422extern "C" {
1423    pub fn dsphdr_c(
1424        x: SpiceDouble,
1425        y: SpiceDouble,
1426        z: SpiceDouble,
1427        jacobi: *mut [SpiceDouble; 3usize],
1428    );
1429}
1430extern "C" {
1431    pub fn dtpool_c(
1432        name: *mut ConstSpiceChar,
1433        found: *mut SpiceBoolean,
1434        n: *mut SpiceInt,
1435        type_: *mut SpiceChar,
1436    );
1437}
1438extern "C" {
1439    pub fn ducrss_c(s1: *mut ConstSpiceDouble, s2: *mut ConstSpiceDouble, sout: *mut SpiceDouble);
1440}
1441extern "C" {
1442    pub fn dvcrss_c(s1: *mut ConstSpiceDouble, s2: *mut ConstSpiceDouble, sout: *mut SpiceDouble);
1443}
1444extern "C" {
1445    pub fn dvdot_c(s1: *mut ConstSpiceDouble, s2: *mut ConstSpiceDouble) -> SpiceDouble;
1446}
1447extern "C" {
1448    pub fn dvhat_c(s1: *mut ConstSpiceDouble, sout: *mut SpiceDouble);
1449}
1450extern "C" {
1451    pub fn dvnorm_c(state: *mut ConstSpiceDouble) -> SpiceDouble;
1452}
1453extern "C" {
1454    pub fn dvpool_c(name: *mut ConstSpiceChar);
1455}
1456extern "C" {
1457    pub fn dvsep_c(s1: *mut ConstSpiceDouble, s2: *mut ConstSpiceDouble) -> SpiceDouble;
1458}
1459extern "C" {
1460    pub fn edlimb_c(
1461        a: SpiceDouble,
1462        b: SpiceDouble,
1463        c: SpiceDouble,
1464        viewpt: *mut ConstSpiceDouble,
1465        limb: *mut SpiceEllipse,
1466    );
1467}
1468extern "C" {
1469    pub fn ednmpt_c(
1470        a: SpiceDouble,
1471        b: SpiceDouble,
1472        c: SpiceDouble,
1473        normal: *mut ConstSpiceDouble,
1474        point: *mut SpiceDouble,
1475    );
1476}
1477extern "C" {
1478    pub fn edpnt_c(
1479        p: *mut ConstSpiceDouble,
1480        a: SpiceDouble,
1481        b: SpiceDouble,
1482        c: SpiceDouble,
1483        ep: *mut SpiceDouble,
1484    );
1485}
1486extern "C" {
1487    pub fn edterm_c(
1488        trmtyp: *mut ConstSpiceChar,
1489        source: *mut ConstSpiceChar,
1490        target: *mut ConstSpiceChar,
1491        et: SpiceDouble,
1492        fixfrm: *mut ConstSpiceChar,
1493        abcorr: *mut ConstSpiceChar,
1494        obsrvr: *mut ConstSpiceChar,
1495        npts: SpiceInt,
1496        trgepc: *mut SpiceDouble,
1497        obspos: *mut SpiceDouble,
1498        termpts: *mut [SpiceDouble; 3usize],
1499    );
1500}
1501extern "C" {
1502    pub fn ekacec_c(
1503        handle: SpiceInt,
1504        segno: SpiceInt,
1505        recno: SpiceInt,
1506        column: *mut ConstSpiceChar,
1507        nvals: SpiceInt,
1508        vallen: SpiceInt,
1509        cvals: *const ::std::os::raw::c_void,
1510        isnull: SpiceBoolean,
1511    );
1512}
1513extern "C" {
1514    pub fn ekaced_c(
1515        handle: SpiceInt,
1516        segno: SpiceInt,
1517        recno: SpiceInt,
1518        column: *mut ConstSpiceChar,
1519        nvals: SpiceInt,
1520        dvals: *mut ConstSpiceDouble,
1521        isnull: SpiceBoolean,
1522    );
1523}
1524extern "C" {
1525    pub fn ekacei_c(
1526        handle: SpiceInt,
1527        segno: SpiceInt,
1528        recno: SpiceInt,
1529        column: *mut ConstSpiceChar,
1530        nvals: SpiceInt,
1531        ivals: *mut ConstSpiceInt,
1532        isnull: SpiceBoolean,
1533    );
1534}
1535extern "C" {
1536    pub fn ekaclc_c(
1537        handle: SpiceInt,
1538        segno: SpiceInt,
1539        column: *mut ConstSpiceChar,
1540        vallen: SpiceInt,
1541        cvals: *const ::std::os::raw::c_void,
1542        entszs: *mut ConstSpiceInt,
1543        nlflgs: *mut ConstSpiceBoolean,
1544        rcptrs: *mut ConstSpiceInt,
1545        wkindx: *mut SpiceInt,
1546    );
1547}
1548extern "C" {
1549    pub fn ekacld_c(
1550        handle: SpiceInt,
1551        segno: SpiceInt,
1552        column: *mut ConstSpiceChar,
1553        dvals: *mut ConstSpiceDouble,
1554        entszs: *mut ConstSpiceInt,
1555        nlflgs: *mut ConstSpiceBoolean,
1556        rcptrs: *mut ConstSpiceInt,
1557        wkindx: *mut SpiceInt,
1558    );
1559}
1560extern "C" {
1561    pub fn ekacli_c(
1562        handle: SpiceInt,
1563        segno: SpiceInt,
1564        column: *mut ConstSpiceChar,
1565        ivals: *mut ConstSpiceInt,
1566        entszs: *mut ConstSpiceInt,
1567        nlflgs: *mut ConstSpiceBoolean,
1568        rcptrs: *mut ConstSpiceInt,
1569        wkindx: *mut SpiceInt,
1570    );
1571}
1572extern "C" {
1573    pub fn ekappr_c(handle: SpiceInt, segno: SpiceInt, recno: *mut SpiceInt);
1574}
1575extern "C" {
1576    pub fn ekbseg_c(
1577        handle: SpiceInt,
1578        tabnam: *mut ConstSpiceChar,
1579        ncols: SpiceInt,
1580        cnmlen: SpiceInt,
1581        cnames: *const ::std::os::raw::c_void,
1582        declen: SpiceInt,
1583        decls: *const ::std::os::raw::c_void,
1584        segno: *mut SpiceInt,
1585    );
1586}
1587extern "C" {
1588    pub fn ekccnt_c(table: *mut ConstSpiceChar, ccount: *mut SpiceInt);
1589}
1590extern "C" {
1591    pub fn ekcii_c(
1592        table: *mut ConstSpiceChar,
1593        cindex: SpiceInt,
1594        lenout: SpiceInt,
1595        column: *mut SpiceChar,
1596        attdsc: *mut SpiceEKAttDsc,
1597    );
1598}
1599extern "C" {
1600    pub fn ekcls_c(handle: SpiceInt);
1601}
1602extern "C" {
1603    pub fn ekdelr_c(handle: SpiceInt, segno: SpiceInt, recno: SpiceInt);
1604}
1605extern "C" {
1606    pub fn ekffld_c(handle: SpiceInt, segno: SpiceInt, rcptrs: *mut SpiceInt);
1607}
1608extern "C" {
1609    pub fn ekfind_c(
1610        query: *mut ConstSpiceChar,
1611        lenout: SpiceInt,
1612        nmrows: *mut SpiceInt,
1613        error: *mut SpiceBoolean,
1614        errmsg: *mut SpiceChar,
1615    );
1616}
1617extern "C" {
1618    pub fn ekgc_c(
1619        selidx: SpiceInt,
1620        row: SpiceInt,
1621        elment: SpiceInt,
1622        lenout: SpiceInt,
1623        cdata: *mut SpiceChar,
1624        null: *mut SpiceBoolean,
1625        found: *mut SpiceBoolean,
1626    );
1627}
1628extern "C" {
1629    pub fn ekgd_c(
1630        selidx: SpiceInt,
1631        row: SpiceInt,
1632        elment: SpiceInt,
1633        ddata: *mut SpiceDouble,
1634        null: *mut SpiceBoolean,
1635        found: *mut SpiceBoolean,
1636    );
1637}
1638extern "C" {
1639    pub fn ekgi_c(
1640        selidx: SpiceInt,
1641        row: SpiceInt,
1642        elment: SpiceInt,
1643        idata: *mut SpiceInt,
1644        null: *mut SpiceBoolean,
1645        found: *mut SpiceBoolean,
1646    );
1647}
1648extern "C" {
1649    pub fn ekifld_c(
1650        handle: SpiceInt,
1651        tabnam: *mut ConstSpiceChar,
1652        ncols: SpiceInt,
1653        nrows: SpiceInt,
1654        cnmlen: SpiceInt,
1655        cnames: *const ::std::os::raw::c_void,
1656        declen: SpiceInt,
1657        decls: *const ::std::os::raw::c_void,
1658        segno: *mut SpiceInt,
1659        rcptrs: *mut SpiceInt,
1660    );
1661}
1662extern "C" {
1663    pub fn ekinsr_c(handle: SpiceInt, segno: SpiceInt, recno: SpiceInt);
1664}
1665extern "C" {
1666    pub fn eklef_c(fname: *mut ConstSpiceChar, handle: *mut SpiceInt);
1667}
1668extern "C" {
1669    pub fn eknelt_c(selidx: SpiceInt, row: SpiceInt) -> SpiceInt;
1670}
1671extern "C" {
1672    pub fn eknseg_c(handle: SpiceInt) -> SpiceInt;
1673}
1674extern "C" {
1675    pub fn ekntab_c(n: *mut SpiceInt);
1676}
1677extern "C" {
1678    pub fn ekopn_c(
1679        fname: *mut ConstSpiceChar,
1680        ifname: *mut ConstSpiceChar,
1681        ncomch: SpiceInt,
1682        handle: *mut SpiceInt,
1683    );
1684}
1685extern "C" {
1686    pub fn ekopr_c(fname: *mut ConstSpiceChar, handle: *mut SpiceInt);
1687}
1688extern "C" {
1689    pub fn ekops_c(handle: *mut SpiceInt);
1690}
1691extern "C" {
1692    pub fn ekopw_c(fname: *mut ConstSpiceChar, handle: *mut SpiceInt);
1693}
1694extern "C" {
1695    pub fn ekpsel_c(
1696        query: *mut ConstSpiceChar,
1697        msglen: SpiceInt,
1698        tablen: SpiceInt,
1699        collen: SpiceInt,
1700        n: *mut SpiceInt,
1701        xbegs: *mut SpiceInt,
1702        xends: *mut SpiceInt,
1703        xtypes: *mut SpiceEKDataType,
1704        xclass: *mut SpiceEKExprClass,
1705        tabs: *mut ::std::os::raw::c_void,
1706        cols: *mut ::std::os::raw::c_void,
1707        error: *mut SpiceBoolean,
1708        errmsg: *mut SpiceChar,
1709    );
1710}
1711extern "C" {
1712    pub fn ekrcec_c(
1713        handle: SpiceInt,
1714        segno: SpiceInt,
1715        recno: SpiceInt,
1716        column: *mut ConstSpiceChar,
1717        lenout: SpiceInt,
1718        nvals: *mut SpiceInt,
1719        cvals: *mut ::std::os::raw::c_void,
1720        isnull: *mut SpiceBoolean,
1721    );
1722}
1723extern "C" {
1724    pub fn ekrced_c(
1725        handle: SpiceInt,
1726        segno: SpiceInt,
1727        recno: SpiceInt,
1728        column: *mut ConstSpiceChar,
1729        nvals: *mut SpiceInt,
1730        dvals: *mut SpiceDouble,
1731        isnull: *mut SpiceBoolean,
1732    );
1733}
1734extern "C" {
1735    pub fn ekrcei_c(
1736        handle: SpiceInt,
1737        segno: SpiceInt,
1738        recno: SpiceInt,
1739        column: *mut ConstSpiceChar,
1740        nvals: *mut SpiceInt,
1741        ivals: *mut SpiceInt,
1742        isnull: *mut SpiceBoolean,
1743    );
1744}
1745extern "C" {
1746    pub fn ekssum_c(handle: SpiceInt, segno: SpiceInt, segsum: *mut SpiceEKSegSum);
1747}
1748extern "C" {
1749    pub fn ektnam_c(n: SpiceInt, lenout: SpiceInt, table: *mut SpiceChar);
1750}
1751extern "C" {
1752    pub fn ekucec_c(
1753        handle: SpiceInt,
1754        segno: SpiceInt,
1755        recno: SpiceInt,
1756        column: *mut ConstSpiceChar,
1757        nvals: SpiceInt,
1758        vallen: SpiceInt,
1759        cvals: *const ::std::os::raw::c_void,
1760        isnull: SpiceBoolean,
1761    );
1762}
1763extern "C" {
1764    pub fn ekuced_c(
1765        handle: SpiceInt,
1766        segno: SpiceInt,
1767        recno: SpiceInt,
1768        column: *mut ConstSpiceChar,
1769        nvals: SpiceInt,
1770        dvals: *mut ConstSpiceDouble,
1771        isnull: SpiceBoolean,
1772    );
1773}
1774extern "C" {
1775    pub fn ekucei_c(
1776        handle: SpiceInt,
1777        segno: SpiceInt,
1778        recno: SpiceInt,
1779        column: *mut ConstSpiceChar,
1780        nvals: SpiceInt,
1781        ivals: *mut ConstSpiceInt,
1782        isnull: SpiceBoolean,
1783    );
1784}
1785extern "C" {
1786    pub fn ekuef_c(handle: SpiceInt);
1787}
1788extern "C" {
1789    pub fn elemc_c(item: *mut ConstSpiceChar, set: *mut SpiceCell) -> SpiceBoolean;
1790}
1791extern "C" {
1792    pub fn elemd_c(item: SpiceDouble, set: *mut SpiceCell) -> SpiceBoolean;
1793}
1794extern "C" {
1795    pub fn elemi_c(item: SpiceInt, set: *mut SpiceCell) -> SpiceBoolean;
1796}
1797extern "C" {
1798    pub fn eqncpv_c(
1799        et: SpiceDouble,
1800        epoch: SpiceDouble,
1801        eqel: *mut ConstSpiceDouble,
1802        rapol: SpiceDouble,
1803        decpol: SpiceDouble,
1804        state: *mut SpiceDouble,
1805    );
1806}
1807extern "C" {
1808    pub fn eqstr_c(a: *mut ConstSpiceChar, b: *mut ConstSpiceChar) -> SpiceBoolean;
1809}
1810extern "C" {
1811    pub fn el2cgv_c(
1812        ellipse: *mut ConstSpiceEllipse,
1813        center: *mut SpiceDouble,
1814        smajor: *mut SpiceDouble,
1815        sminor: *mut SpiceDouble,
1816    );
1817}
1818extern "C" {
1819    pub fn erract_c(operation: *mut ConstSpiceChar, lenout: SpiceInt, action: *mut SpiceChar);
1820}
1821extern "C" {
1822    pub fn errch_c(marker: *mut ConstSpiceChar, string: *mut ConstSpiceChar);
1823}
1824extern "C" {
1825    pub fn errdev_c(operation: *mut ConstSpiceChar, lenout: SpiceInt, device: *mut SpiceChar);
1826}
1827extern "C" {
1828    pub fn errdp_c(marker: *mut ConstSpiceChar, number: SpiceDouble);
1829}
1830extern "C" {
1831    pub fn errint_c(marker: *mut ConstSpiceChar, number: SpiceInt);
1832}
1833extern "C" {
1834    pub fn errprt_c(operation: *mut ConstSpiceChar, lenout: SpiceInt, list: *mut SpiceChar);
1835}
1836extern "C" {
1837    pub fn esrchc_c(
1838        value: *mut ConstSpiceChar,
1839        ndim: SpiceInt,
1840        lenvals: SpiceInt,
1841        array: *const ::std::os::raw::c_void,
1842    ) -> SpiceInt;
1843}
1844extern "C" {
1845    pub fn etcal_c(et: SpiceDouble, lenout: SpiceInt, string: *mut SpiceChar);
1846}
1847extern "C" {
1848    pub fn et2lst_c(
1849        et: SpiceDouble,
1850        body: SpiceInt,
1851        lon: SpiceDouble,
1852        type_: *mut ConstSpiceChar,
1853        timlen: SpiceInt,
1854        ampmlen: SpiceInt,
1855        hr: *mut SpiceInt,
1856        mn: *mut SpiceInt,
1857        sc: *mut SpiceInt,
1858        time: *mut SpiceChar,
1859        ampm: *mut SpiceChar,
1860    );
1861}
1862extern "C" {
1863    pub fn et2utc_c(
1864        et: SpiceDouble,
1865        format: *mut ConstSpiceChar,
1866        prec: SpiceInt,
1867        lenout: SpiceInt,
1868        utcstr: *mut SpiceChar,
1869    );
1870}
1871extern "C" {
1872    pub fn eul2m_c(
1873        angle3: SpiceDouble,
1874        angle2: SpiceDouble,
1875        angle1: SpiceDouble,
1876        axis3: SpiceInt,
1877        axis2: SpiceInt,
1878        axis1: SpiceInt,
1879        r: *mut [SpiceDouble; 3usize],
1880    );
1881}
1882extern "C" {
1883    pub fn eul2xf_c(
1884        eulang: *mut ConstSpiceDouble,
1885        axisa: SpiceInt,
1886        axisb: SpiceInt,
1887        axisc: SpiceInt,
1888        xform: *mut [SpiceDouble; 6usize],
1889    );
1890}
1891extern "C" {
1892    pub fn evsgp4_c(
1893        et: SpiceDouble,
1894        geophs: *mut ConstSpiceDouble,
1895        elems: *mut ConstSpiceDouble,
1896        state: *mut SpiceDouble,
1897    );
1898}
1899extern "C" {
1900    pub fn exists_c(name: *mut ConstSpiceChar) -> SpiceBoolean;
1901}
1902extern "C" {
1903    pub fn expool_c(name: *mut ConstSpiceChar, found: *mut SpiceBoolean);
1904}
1905extern "C" {
1906    pub fn failed_c() -> SpiceBoolean;
1907}
1908extern "C" {
1909    pub fn fovray_c(
1910        inst: *mut ConstSpiceChar,
1911        raydir: *mut ConstSpiceDouble,
1912        rframe: *mut ConstSpiceChar,
1913        abcorr: *mut ConstSpiceChar,
1914        obsrvr: *mut ConstSpiceChar,
1915        et: *mut SpiceDouble,
1916        visible: *mut SpiceBoolean,
1917    );
1918}
1919extern "C" {
1920    pub fn fovtrg_c(
1921        inst: *mut ConstSpiceChar,
1922        target: *mut ConstSpiceChar,
1923        tshape: *mut ConstSpiceChar,
1924        tframe: *mut ConstSpiceChar,
1925        abcorr: *mut ConstSpiceChar,
1926        obsrvr: *mut ConstSpiceChar,
1927        et: *mut SpiceDouble,
1928        visible: *mut SpiceBoolean,
1929    );
1930}
1931extern "C" {
1932    pub fn filli_c(value: SpiceInt, ndim: SpiceInt, array: *mut SpiceInt);
1933}
1934extern "C" {
1935    pub fn filld_c(value: SpiceDouble, ndim: SpiceInt, array: *mut SpiceDouble);
1936}
1937extern "C" {
1938    pub fn frame_c(x: *mut SpiceDouble, y: *mut SpiceDouble, z: *mut SpiceDouble);
1939}
1940extern "C" {
1941    pub fn frinfo_c(
1942        frcode: SpiceInt,
1943        cent: *mut SpiceInt,
1944        clss: *mut SpiceInt,
1945        clssid: *mut SpiceInt,
1946        found: *mut SpiceBoolean,
1947    );
1948}
1949extern "C" {
1950    pub fn frmnam_c(frcode: SpiceInt, lenout: SpiceInt, frname: *mut SpiceChar);
1951}
1952extern "C" {
1953    pub fn ftncls_c(unit: SpiceInt);
1954}
1955extern "C" {
1956    pub fn furnsh_c(file: *mut ConstSpiceChar);
1957}
1958extern "C" {
1959    pub fn gcpool_c(
1960        name: *mut ConstSpiceChar,
1961        start: SpiceInt,
1962        room: SpiceInt,
1963        lenout: SpiceInt,
1964        n: *mut SpiceInt,
1965        cvals: *mut ::std::os::raw::c_void,
1966        found: *mut SpiceBoolean,
1967    );
1968}
1969extern "C" {
1970    pub fn gdpool_c(
1971        name: *mut ConstSpiceChar,
1972        start: SpiceInt,
1973        room: SpiceInt,
1974        n: *mut SpiceInt,
1975        values: *mut SpiceDouble,
1976        found: *mut SpiceBoolean,
1977    );
1978}
1979extern "C" {
1980    pub fn georec_c(
1981        lon: SpiceDouble,
1982        lat: SpiceDouble,
1983        alt: SpiceDouble,
1984        re: SpiceDouble,
1985        f: SpiceDouble,
1986        rectan: *mut SpiceDouble,
1987    );
1988}
1989extern "C" {
1990    pub fn getcml_c(argc: *mut SpiceInt, argv: *mut *mut *mut SpiceChar);
1991}
1992extern "C" {
1993    pub fn getelm_c(
1994        frstyr: SpiceInt,
1995        lineln: SpiceInt,
1996        lines: *const ::std::os::raw::c_void,
1997        epoch: *mut SpiceDouble,
1998        elems: *mut SpiceDouble,
1999    );
2000}
2001extern "C" {
2002    pub fn getfat_c(
2003        file: *mut ConstSpiceChar,
2004        arclen: SpiceInt,
2005        typlen: SpiceInt,
2006        arch: *mut SpiceChar,
2007        type_: *mut SpiceChar,
2008    );
2009}
2010extern "C" {
2011    pub fn getfov_c(
2012        instid: SpiceInt,
2013        room: SpiceInt,
2014        shapelen: SpiceInt,
2015        framelen: SpiceInt,
2016        shape: *mut SpiceChar,
2017        frame: *mut SpiceChar,
2018        bsight: *mut SpiceDouble,
2019        n: *mut SpiceInt,
2020        bounds: *mut [SpiceDouble; 3usize],
2021    );
2022}
2023extern "C" {
2024    pub fn getfvn_c(
2025        inst: *mut ConstSpiceChar,
2026        room: SpiceInt,
2027        shalen: SpiceInt,
2028        fralen: SpiceInt,
2029        shape: *mut SpiceChar,
2030        frame: *mut SpiceChar,
2031        bsight: *mut SpiceDouble,
2032        n: *mut SpiceInt,
2033        bounds: *mut [SpiceDouble; 3usize],
2034    );
2035}
2036extern "C" {
2037    pub fn getmsg_c(option: *mut ConstSpiceChar, lenout: SpiceInt, msg: *mut SpiceChar);
2038}
2039extern "C" {
2040    pub fn gfbail_c() -> SpiceBoolean;
2041}
2042extern "C" {
2043    pub fn gfclrh_c();
2044}
2045extern "C" {
2046    pub fn gfdist_c(
2047        target: *mut ConstSpiceChar,
2048        abcorr: *mut ConstSpiceChar,
2049        obsrvr: *mut ConstSpiceChar,
2050        relate: *mut ConstSpiceChar,
2051        refval: SpiceDouble,
2052        adjust: SpiceDouble,
2053        step: SpiceDouble,
2054        nintvls: SpiceInt,
2055        cnfine: *mut SpiceCell,
2056        result: *mut SpiceCell,
2057    );
2058}
2059extern "C" {
2060    pub fn gfevnt_c(
2061        udstep: ::std::option::Option<
2062            unsafe extern "C" fn(et: SpiceDouble, step: *mut SpiceDouble),
2063        >,
2064        udrefn: ::std::option::Option<
2065            unsafe extern "C" fn(
2066                t1: SpiceDouble,
2067                t2: SpiceDouble,
2068                s1: SpiceBoolean,
2069                s2: SpiceBoolean,
2070                t: *mut SpiceDouble,
2071            ),
2072        >,
2073        gquant: *mut ConstSpiceChar,
2074        qnpars: SpiceInt,
2075        lenvals: SpiceInt,
2076        qpnams: *const ::std::os::raw::c_void,
2077        qcpars: *const ::std::os::raw::c_void,
2078        qdpars: *mut ConstSpiceDouble,
2079        qipars: *mut ConstSpiceInt,
2080        qlpars: *mut ConstSpiceBoolean,
2081        op: *mut ConstSpiceChar,
2082        refval: SpiceDouble,
2083        tol: SpiceDouble,
2084        adjust: SpiceDouble,
2085        rpt: SpiceBoolean,
2086        udrepi: ::std::option::Option<
2087            unsafe extern "C" fn(
2088                cnfine: *mut SpiceCell,
2089                srcpre: *mut ConstSpiceChar,
2090                srcsuf: *mut ConstSpiceChar,
2091            ),
2092        >,
2093        udrepu: ::std::option::Option<
2094            unsafe extern "C" fn(ivbeg: SpiceDouble, ivend: SpiceDouble, et: SpiceDouble),
2095        >,
2096        udrepf: ::std::option::Option<unsafe extern "C" fn()>,
2097        nintvls: SpiceInt,
2098        bail: SpiceBoolean,
2099        udbail: ::std::option::Option<unsafe extern "C" fn() -> SpiceBoolean>,
2100        cnfine: *mut SpiceCell,
2101        result: *mut SpiceCell,
2102    );
2103}
2104extern "C" {
2105    pub fn gffove_c(
2106        inst: *mut ConstSpiceChar,
2107        tshape: *mut ConstSpiceChar,
2108        raydir: *mut ConstSpiceDouble,
2109        target: *mut ConstSpiceChar,
2110        tframe: *mut ConstSpiceChar,
2111        abcorr: *mut ConstSpiceChar,
2112        obsrvr: *mut ConstSpiceChar,
2113        tol: SpiceDouble,
2114        udstep: ::std::option::Option<
2115            unsafe extern "C" fn(et: SpiceDouble, step: *mut SpiceDouble),
2116        >,
2117        udrefn: ::std::option::Option<
2118            unsafe extern "C" fn(
2119                t1: SpiceDouble,
2120                t2: SpiceDouble,
2121                s1: SpiceBoolean,
2122                s2: SpiceBoolean,
2123                t: *mut SpiceDouble,
2124            ),
2125        >,
2126        rpt: SpiceBoolean,
2127        udrepi: ::std::option::Option<
2128            unsafe extern "C" fn(
2129                cnfine: *mut SpiceCell,
2130                srcpre: *mut ConstSpiceChar,
2131                srcsuf: *mut ConstSpiceChar,
2132            ),
2133        >,
2134        udrepu: ::std::option::Option<
2135            unsafe extern "C" fn(ivbeg: SpiceDouble, ivend: SpiceDouble, et: SpiceDouble),
2136        >,
2137        udrepf: ::std::option::Option<unsafe extern "C" fn()>,
2138        bail: SpiceBoolean,
2139        udbail: ::std::option::Option<unsafe extern "C" fn() -> SpiceBoolean>,
2140        cnfine: *mut SpiceCell,
2141        result: *mut SpiceCell,
2142    );
2143}
2144extern "C" {
2145    pub fn gfilum_c(
2146        method: *mut ConstSpiceChar,
2147        angtyp: *mut ConstSpiceChar,
2148        target: *mut ConstSpiceChar,
2149        illum: *mut ConstSpiceChar,
2150        fixref: *mut ConstSpiceChar,
2151        abcorr: *mut ConstSpiceChar,
2152        obsrvr: *mut ConstSpiceChar,
2153        spoint: *mut ConstSpiceDouble,
2154        relate: *mut ConstSpiceChar,
2155        refval: SpiceDouble,
2156        adjust: SpiceDouble,
2157        step: SpiceDouble,
2158        nintvls: SpiceInt,
2159        cnfine: *mut SpiceCell,
2160        result: *mut SpiceCell,
2161    );
2162}
2163extern "C" {
2164    pub fn gfinth_c(sigcode: ::std::os::raw::c_int);
2165}
2166extern "C" {
2167    pub fn gfocce_c(
2168        occtyp: *mut ConstSpiceChar,
2169        front: *mut ConstSpiceChar,
2170        fshape: *mut ConstSpiceChar,
2171        fframe: *mut ConstSpiceChar,
2172        back: *mut ConstSpiceChar,
2173        bshape: *mut ConstSpiceChar,
2174        bframe: *mut ConstSpiceChar,
2175        obsrvr: *mut ConstSpiceChar,
2176        abcorr: *mut ConstSpiceChar,
2177        tol: SpiceDouble,
2178        udstep: ::std::option::Option<
2179            unsafe extern "C" fn(et: SpiceDouble, step: *mut SpiceDouble),
2180        >,
2181        udrefn: ::std::option::Option<
2182            unsafe extern "C" fn(
2183                t1: SpiceDouble,
2184                t2: SpiceDouble,
2185                s1: SpiceBoolean,
2186                s2: SpiceBoolean,
2187                t: *mut SpiceDouble,
2188            ),
2189        >,
2190        rpt: SpiceBoolean,
2191        udrepi: ::std::option::Option<
2192            unsafe extern "C" fn(
2193                cnfine: *mut SpiceCell,
2194                srcpre: *mut ConstSpiceChar,
2195                srcsuf: *mut ConstSpiceChar,
2196            ),
2197        >,
2198        udrepu: ::std::option::Option<
2199            unsafe extern "C" fn(ivbeg: SpiceDouble, ivend: SpiceDouble, et: SpiceDouble),
2200        >,
2201        udrepf: ::std::option::Option<unsafe extern "C" fn()>,
2202        bail: SpiceBoolean,
2203        udbail: ::std::option::Option<unsafe extern "C" fn() -> SpiceBoolean>,
2204        cnfine: *mut SpiceCell,
2205        result: *mut SpiceCell,
2206    );
2207}
2208extern "C" {
2209    pub fn gfoclt_c(
2210        occtyp: *mut ConstSpiceChar,
2211        front: *mut ConstSpiceChar,
2212        fshape: *mut ConstSpiceChar,
2213        fframe: *mut ConstSpiceChar,
2214        back: *mut ConstSpiceChar,
2215        bshape: *mut ConstSpiceChar,
2216        bframe: *mut ConstSpiceChar,
2217        abcorr: *mut ConstSpiceChar,
2218        obsrvr: *mut ConstSpiceChar,
2219        step: SpiceDouble,
2220        cnfine: *mut SpiceCell,
2221        result: *mut SpiceCell,
2222    );
2223}
2224extern "C" {
2225    pub fn gfpa_c(
2226        target: *mut ConstSpiceChar,
2227        illum: *mut ConstSpiceChar,
2228        abcorr: *mut ConstSpiceChar,
2229        obsrvr: *mut ConstSpiceChar,
2230        relate: *mut ConstSpiceChar,
2231        refval: SpiceDouble,
2232        adjust: SpiceDouble,
2233        step: SpiceDouble,
2234        nintvls: SpiceInt,
2235        cnfine: *mut SpiceCell,
2236        result: *mut SpiceCell,
2237    );
2238}
2239extern "C" {
2240    pub fn gfposc_c(
2241        target: *mut ConstSpiceChar,
2242        frame: *mut ConstSpiceChar,
2243        abcorr: *mut ConstSpiceChar,
2244        obsrvr: *mut ConstSpiceChar,
2245        crdsys: *mut ConstSpiceChar,
2246        coord: *mut ConstSpiceChar,
2247        relate: *mut ConstSpiceChar,
2248        refval: SpiceDouble,
2249        adjust: SpiceDouble,
2250        step: SpiceDouble,
2251        nintvls: SpiceInt,
2252        cnfine: *mut SpiceCell,
2253        result: *mut SpiceCell,
2254    );
2255}
2256extern "C" {
2257    pub fn gfrefn_c(
2258        t1: SpiceDouble,
2259        t2: SpiceDouble,
2260        s1: SpiceBoolean,
2261        s2: SpiceBoolean,
2262        t: *mut SpiceDouble,
2263    );
2264}
2265extern "C" {
2266    pub fn gfrepf_c();
2267}
2268extern "C" {
2269    pub fn gfrepi_c(
2270        window: *mut SpiceCell,
2271        begmss: *mut ConstSpiceChar,
2272        endmss: *mut ConstSpiceChar,
2273    );
2274}
2275extern "C" {
2276    pub fn gfrepu_c(ivbeg: SpiceDouble, ivend: SpiceDouble, time: SpiceDouble);
2277}
2278extern "C" {
2279    pub fn gfrfov_c(
2280        inst: *mut ConstSpiceChar,
2281        raydir: *mut ConstSpiceDouble,
2282        rframe: *mut ConstSpiceChar,
2283        abcorr: *mut ConstSpiceChar,
2284        obsrvr: *mut ConstSpiceChar,
2285        step: SpiceDouble,
2286        cnfine: *mut SpiceCell,
2287        result: *mut SpiceCell,
2288    );
2289}
2290extern "C" {
2291    pub fn gfrr_c(
2292        target: *mut ConstSpiceChar,
2293        abcorr: *mut ConstSpiceChar,
2294        obsrvr: *mut ConstSpiceChar,
2295        relate: *mut ConstSpiceChar,
2296        refval: SpiceDouble,
2297        adjust: SpiceDouble,
2298        step: SpiceDouble,
2299        nintvls: SpiceInt,
2300        cnfine: *mut SpiceCell,
2301        result: *mut SpiceCell,
2302    );
2303}
2304extern "C" {
2305    pub fn gfsep_c(
2306        targ1: *mut ConstSpiceChar,
2307        shape1: *mut ConstSpiceChar,
2308        frame1: *mut ConstSpiceChar,
2309        targ2: *mut ConstSpiceChar,
2310        shape2: *mut ConstSpiceChar,
2311        frame2: *mut ConstSpiceChar,
2312        abcorr: *mut ConstSpiceChar,
2313        obsrvr: *mut ConstSpiceChar,
2314        relate: *mut ConstSpiceChar,
2315        refval: SpiceDouble,
2316        adjust: SpiceDouble,
2317        step: SpiceDouble,
2318        nintvls: SpiceInt,
2319        cnfine: *mut SpiceCell,
2320        result: *mut SpiceCell,
2321    );
2322}
2323extern "C" {
2324    pub fn gfsntc_c(
2325        target: *mut ConstSpiceChar,
2326        fixref: *mut ConstSpiceChar,
2327        method: *mut ConstSpiceChar,
2328        abcorr: *mut ConstSpiceChar,
2329        obsrvr: *mut ConstSpiceChar,
2330        dref: *mut ConstSpiceChar,
2331        dvec: *mut ConstSpiceDouble,
2332        crdsys: *mut ConstSpiceChar,
2333        coord: *mut ConstSpiceChar,
2334        relate: *mut ConstSpiceChar,
2335        refval: SpiceDouble,
2336        adjust: SpiceDouble,
2337        step: SpiceDouble,
2338        nintvls: SpiceInt,
2339        cnfine: *mut SpiceCell,
2340        result: *mut SpiceCell,
2341    );
2342}
2343extern "C" {
2344    pub fn gfsstp_c(step: SpiceDouble);
2345}
2346extern "C" {
2347    pub fn gfstep_c(time: SpiceDouble, step: *mut SpiceDouble);
2348}
2349extern "C" {
2350    pub fn gfstol_c(value: SpiceDouble);
2351}
2352extern "C" {
2353    pub fn gfsubc_c(
2354        target: *mut ConstSpiceChar,
2355        fixref: *mut ConstSpiceChar,
2356        method: *mut ConstSpiceChar,
2357        abcorr: *mut ConstSpiceChar,
2358        obsrvr: *mut ConstSpiceChar,
2359        crdsys: *mut ConstSpiceChar,
2360        coord: *mut ConstSpiceChar,
2361        relate: *mut ConstSpiceChar,
2362        refval: SpiceDouble,
2363        adjust: SpiceDouble,
2364        step: SpiceDouble,
2365        nintvls: SpiceInt,
2366        cnfine: *mut SpiceCell,
2367        result: *mut SpiceCell,
2368    );
2369}
2370extern "C" {
2371    pub fn gftfov_c(
2372        inst: *mut ConstSpiceChar,
2373        target: *mut ConstSpiceChar,
2374        tshape: *mut ConstSpiceChar,
2375        tframe: *mut ConstSpiceChar,
2376        abcorr: *mut ConstSpiceChar,
2377        obsrvr: *mut ConstSpiceChar,
2378        step: SpiceDouble,
2379        cnfine: *mut SpiceCell,
2380        result: *mut SpiceCell,
2381    );
2382}
2383extern "C" {
2384    pub fn gfudb_c(
2385        udfuns: ::std::option::Option<
2386            unsafe extern "C" fn(et: SpiceDouble, value: *mut SpiceDouble),
2387        >,
2388        udfunb: ::std::option::Option<
2389            unsafe extern "C" fn(
2390                udfuns: ::std::option::Option<
2391                    unsafe extern "C" fn(et: SpiceDouble, value: *mut SpiceDouble),
2392                >,
2393                et: SpiceDouble,
2394                xbool: *mut SpiceBoolean,
2395            ),
2396        >,
2397        step: SpiceDouble,
2398        cnfine: *mut SpiceCell,
2399        result: *mut SpiceCell,
2400    );
2401}
2402extern "C" {
2403    pub fn gfuds_c(
2404        udfuns: ::std::option::Option<
2405            unsafe extern "C" fn(et: SpiceDouble, value: *mut SpiceDouble),
2406        >,
2407        udfunb: ::std::option::Option<
2408            unsafe extern "C" fn(
2409                udfuns: ::std::option::Option<
2410                    unsafe extern "C" fn(et: SpiceDouble, value: *mut SpiceDouble),
2411                >,
2412                x: SpiceDouble,
2413                xbool: *mut SpiceBoolean,
2414            ),
2415        >,
2416        relate: *mut ConstSpiceChar,
2417        refval: SpiceDouble,
2418        adjust: SpiceDouble,
2419        step: SpiceDouble,
2420        nintvls: SpiceInt,
2421        cnfine: *mut SpiceCell,
2422        result: *mut SpiceCell,
2423    );
2424}
2425extern "C" {
2426    pub fn gipool_c(
2427        name: *mut ConstSpiceChar,
2428        start: SpiceInt,
2429        room: SpiceInt,
2430        n: *mut SpiceInt,
2431        ivals: *mut SpiceInt,
2432        found: *mut SpiceBoolean,
2433    );
2434}
2435extern "C" {
2436    pub fn gnpool_c(
2437        name: *mut ConstSpiceChar,
2438        start: SpiceInt,
2439        room: SpiceInt,
2440        lenout: SpiceInt,
2441        n: *mut SpiceInt,
2442        kvars: *mut ::std::os::raw::c_void,
2443        found: *mut SpiceBoolean,
2444    );
2445}
2446extern "C" {
2447    pub fn hrmesp_c(
2448        n: SpiceInt,
2449        first: SpiceDouble,
2450        step: SpiceDouble,
2451        yvals: *mut ConstSpiceDouble,
2452        x: SpiceDouble,
2453        f: *mut SpiceDouble,
2454        df: *mut SpiceDouble,
2455    );
2456}
2457extern "C" {
2458    pub fn hrmint_c(
2459        n: SpiceInt,
2460        xvals: *mut ConstSpiceDouble,
2461        yvals: *mut ConstSpiceDouble,
2462        x: SpiceDouble,
2463        work: *mut SpiceDouble,
2464        f: *mut SpiceDouble,
2465        df: *mut SpiceDouble,
2466    );
2467}
2468extern "C" {
2469    pub fn halfpi_c() -> SpiceDouble;
2470}
2471extern "C" {
2472    pub fn hx2dp_c(
2473        string: *mut ConstSpiceChar,
2474        lenout: SpiceInt,
2475        number: *mut SpiceDouble,
2476        error: *mut SpiceBoolean,
2477        errmsg: *mut SpiceChar,
2478    );
2479}
2480extern "C" {
2481    pub fn ident_c(matrix: *mut [SpiceDouble; 3usize]);
2482}
2483extern "C" {
2484    pub fn ilumin_c(
2485        method: *mut ConstSpiceChar,
2486        target: *mut ConstSpiceChar,
2487        et: SpiceDouble,
2488        fixref: *mut ConstSpiceChar,
2489        abcorr: *mut ConstSpiceChar,
2490        obsrvr: *mut ConstSpiceChar,
2491        spoint: *mut ConstSpiceDouble,
2492        trgepc: *mut SpiceDouble,
2493        srfvec: *mut SpiceDouble,
2494        phase: *mut SpiceDouble,
2495        solar: *mut SpiceDouble,
2496        emissn: *mut SpiceDouble,
2497    );
2498}
2499extern "C" {
2500    pub fn illum_c(
2501        target: *mut ConstSpiceChar,
2502        et: SpiceDouble,
2503        abcorr: *mut ConstSpiceChar,
2504        obsrvr: *mut ConstSpiceChar,
2505        spoint: *mut ConstSpiceDouble,
2506        phase: *mut SpiceDouble,
2507        solar: *mut SpiceDouble,
2508        emissn: *mut SpiceDouble,
2509    );
2510}
2511extern "C" {
2512    pub fn illum_pl02(
2513        handle: SpiceInt,
2514        dladsc: *mut ConstSpiceDLADescr,
2515        target: *mut ConstSpiceChar,
2516        et: SpiceDouble,
2517        abcorr: *mut ConstSpiceChar,
2518        obsrvr: *mut ConstSpiceChar,
2519        spoint: *mut SpiceDouble,
2520        phase: *mut SpiceDouble,
2521        solar: *mut SpiceDouble,
2522        emissn: *mut SpiceDouble,
2523    );
2524}
2525extern "C" {
2526    pub fn illum_plid_pl02(
2527        handle: SpiceInt,
2528        dladsc: *mut ConstSpiceDLADescr,
2529        target: *mut ConstSpiceChar,
2530        et: SpiceDouble,
2531        abcorr: *mut ConstSpiceChar,
2532        obsrvr: *mut ConstSpiceChar,
2533        spoint: *mut SpiceDouble,
2534        plid: SpiceInt,
2535        trgepc: *mut SpiceDouble,
2536        srfvec: *mut SpiceDouble,
2537        phase: *mut SpiceDouble,
2538        solar: *mut SpiceDouble,
2539        emissn: *mut SpiceDouble,
2540        visible: *mut SpiceBoolean,
2541        lit: *mut SpiceBoolean,
2542    );
2543}
2544extern "C" {
2545    pub fn illumf_c(
2546        method: *mut ConstSpiceChar,
2547        target: *mut ConstSpiceChar,
2548        ilusrc: *mut ConstSpiceChar,
2549        et: SpiceDouble,
2550        fixref: *mut ConstSpiceChar,
2551        abcorr: *mut ConstSpiceChar,
2552        obsrvr: *mut ConstSpiceChar,
2553        spoint: *mut ConstSpiceDouble,
2554        trgepc: *mut SpiceDouble,
2555        srfvec: *mut SpiceDouble,
2556        phase: *mut SpiceDouble,
2557        incdnc: *mut SpiceDouble,
2558        emissn: *mut SpiceDouble,
2559        visibl: *mut SpiceBoolean,
2560        lit: *mut SpiceBoolean,
2561    );
2562}
2563extern "C" {
2564    pub fn illumg_c(
2565        method: *mut ConstSpiceChar,
2566        target: *mut ConstSpiceChar,
2567        illum: *mut ConstSpiceChar,
2568        et: SpiceDouble,
2569        fixref: *mut ConstSpiceChar,
2570        abcorr: *mut ConstSpiceChar,
2571        obsrvr: *mut ConstSpiceChar,
2572        spoint: *mut ConstSpiceDouble,
2573        trgepc: *mut SpiceDouble,
2574        srfvec: *mut SpiceDouble,
2575        phase: *mut SpiceDouble,
2576        solar: *mut SpiceDouble,
2577        emissn: *mut SpiceDouble,
2578    );
2579}
2580extern "C" {
2581    pub fn inedpl_c(
2582        a: SpiceDouble,
2583        b: SpiceDouble,
2584        c: SpiceDouble,
2585        plane: *mut ConstSpicePlane,
2586        ellipse: *mut SpiceEllipse,
2587        found: *mut SpiceBoolean,
2588    );
2589}
2590extern "C" {
2591    pub fn inelpl_c(
2592        ellips: *mut ConstSpiceEllipse,
2593        plane: *mut ConstSpicePlane,
2594        nxpts: *mut SpiceInt,
2595        xpt1: *mut SpiceDouble,
2596        xpt2: *mut SpiceDouble,
2597    );
2598}
2599extern "C" {
2600    pub fn insrtc_c(item: *mut ConstSpiceChar, set: *mut SpiceCell);
2601}
2602extern "C" {
2603    pub fn insrtd_c(item: SpiceDouble, set: *mut SpiceCell);
2604}
2605extern "C" {
2606    pub fn insrti_c(item: SpiceInt, set: *mut SpiceCell);
2607}
2608extern "C" {
2609    pub fn inter_c(a: *mut SpiceCell, b: *mut SpiceCell, c: *mut SpiceCell);
2610}
2611extern "C" {
2612    pub fn inrypl_c(
2613        vertex: *mut ConstSpiceDouble,
2614        dir: *mut ConstSpiceDouble,
2615        plane: *mut ConstSpicePlane,
2616        nxpts: *mut SpiceInt,
2617        xpt: *mut SpiceDouble,
2618    );
2619}
2620extern "C" {
2621    pub fn intmax_c() -> SpiceInt;
2622}
2623extern "C" {
2624    pub fn intmax_() -> SpiceInt;
2625}
2626extern "C" {
2627    pub fn intmin_c() -> SpiceInt;
2628}
2629extern "C" {
2630    pub fn intmin_() -> SpiceInt;
2631}
2632extern "C" {
2633    pub fn invert_c(m1: *mut [ConstSpiceDouble; 3usize], m2: *mut [SpiceDouble; 3usize]);
2634}
2635extern "C" {
2636    pub fn invort_c(m: *mut [ConstSpiceDouble; 3usize], mit: *mut [SpiceDouble; 3usize]);
2637}
2638extern "C" {
2639    pub fn invstm_c(mat: *mut [ConstSpiceDouble; 6usize], invmat: *mut [SpiceDouble; 6usize]);
2640}
2641extern "C" {
2642    pub fn isordv_c(array: *mut ConstSpiceInt, n: SpiceInt) -> SpiceBoolean;
2643}
2644extern "C" {
2645    pub fn isrot_c(
2646        m: *mut [ConstSpiceDouble; 3usize],
2647        ntol: SpiceDouble,
2648        dtol: SpiceDouble,
2649    ) -> SpiceBoolean;
2650}
2651extern "C" {
2652    pub fn isrchc_c(
2653        value: *mut ConstSpiceChar,
2654        ndim: SpiceInt,
2655        lenvals: SpiceInt,
2656        array: *const ::std::os::raw::c_void,
2657    ) -> SpiceInt;
2658}
2659extern "C" {
2660    pub fn isrchd_c(value: SpiceDouble, ndim: SpiceInt, array: *mut ConstSpiceDouble) -> SpiceInt;
2661}
2662extern "C" {
2663    pub fn isrchi_c(value: SpiceInt, ndim: SpiceInt, array: *mut ConstSpiceInt) -> SpiceInt;
2664}
2665extern "C" {
2666    pub fn iswhsp_c(string: *mut ConstSpiceChar) -> SpiceBoolean;
2667}
2668extern "C" {
2669    pub fn j1900_c() -> SpiceDouble;
2670}
2671extern "C" {
2672    pub fn j1950_c() -> SpiceDouble;
2673}
2674extern "C" {
2675    pub fn j2000_c() -> SpiceDouble;
2676}
2677extern "C" {
2678    pub fn j2100_c() -> SpiceDouble;
2679}
2680extern "C" {
2681    pub fn jyear_c() -> SpiceDouble;
2682}
2683extern "C" {
2684    pub fn kclear_c();
2685}
2686extern "C" {
2687    pub fn kdata_c(
2688        which: SpiceInt,
2689        kind: *mut ConstSpiceChar,
2690        fillen: SpiceInt,
2691        typlen: SpiceInt,
2692        srclen: SpiceInt,
2693        file: *mut SpiceChar,
2694        filtyp: *mut SpiceChar,
2695        source: *mut SpiceChar,
2696        handle: *mut SpiceInt,
2697        found: *mut SpiceBoolean,
2698    );
2699}
2700extern "C" {
2701    pub fn kinfo_c(
2702        file: *mut ConstSpiceChar,
2703        typlen: SpiceInt,
2704        srclen: SpiceInt,
2705        filtyp: *mut SpiceChar,
2706        source: *mut SpiceChar,
2707        handle: *mut SpiceInt,
2708        found: *mut SpiceBoolean,
2709    );
2710}
2711extern "C" {
2712    pub fn kplfrm_c(frmcls: SpiceInt, idset: *mut SpiceCell);
2713}
2714extern "C" {
2715    pub fn ktotal_c(kind: *mut ConstSpiceChar, count: *mut SpiceInt);
2716}
2717extern "C" {
2718    pub fn kxtrct_c(
2719        keywd: *mut ConstSpiceChar,
2720        termlen: SpiceInt,
2721        terms: *const ::std::os::raw::c_void,
2722        nterms: SpiceInt,
2723        stringlen: SpiceInt,
2724        substrlen: SpiceInt,
2725        string: *mut SpiceChar,
2726        found: *mut SpiceBoolean,
2727        substr: *mut SpiceChar,
2728    );
2729}
2730extern "C" {
2731    pub fn lastnb_c(string: *mut ConstSpiceChar) -> SpiceInt;
2732}
2733extern "C" {
2734    pub fn latcyl_c(
2735        radius: SpiceDouble,
2736        lon: SpiceDouble,
2737        lat: SpiceDouble,
2738        r: *mut SpiceDouble,
2739        lonc: *mut SpiceDouble,
2740        z: *mut SpiceDouble,
2741    );
2742}
2743extern "C" {
2744    pub fn latrec_c(
2745        radius: SpiceDouble,
2746        longitude: SpiceDouble,
2747        latitude: SpiceDouble,
2748        rectan: *mut SpiceDouble,
2749    );
2750}
2751extern "C" {
2752    pub fn latsph_c(
2753        radius: SpiceDouble,
2754        lon: SpiceDouble,
2755        lat: SpiceDouble,
2756        rho: *mut SpiceDouble,
2757        colat: *mut SpiceDouble,
2758        lons: *mut SpiceDouble,
2759    );
2760}
2761extern "C" {
2762    pub fn latsrf_c(
2763        method: *mut ConstSpiceChar,
2764        target: *mut ConstSpiceChar,
2765        et: SpiceDouble,
2766        fixref: *mut ConstSpiceChar,
2767        npts: SpiceInt,
2768        lonlat: *mut [ConstSpiceDouble; 2usize],
2769        srfpts: *mut [SpiceDouble; 3usize],
2770    );
2771}
2772extern "C" {
2773    pub fn lcase_c(in_: *mut SpiceChar, lenout: SpiceInt, out: *mut SpiceChar);
2774}
2775extern "C" {
2776    pub fn ldpool_c(filename: *mut ConstSpiceChar);
2777}
2778extern "C" {
2779    pub fn lgresp_c(
2780        n: SpiceInt,
2781        first: SpiceDouble,
2782        step: SpiceDouble,
2783        yvals: *mut ConstSpiceDouble,
2784        x: SpiceDouble,
2785    ) -> SpiceDouble;
2786}
2787extern "C" {
2788    pub fn lgrind_c(
2789        n: SpiceInt,
2790        xvals: *mut ConstSpiceDouble,
2791        yvals: *mut ConstSpiceDouble,
2792        work: *mut SpiceDouble,
2793        x: SpiceDouble,
2794        p: *mut SpiceDouble,
2795        dp: *mut SpiceDouble,
2796    );
2797}
2798extern "C" {
2799    pub fn lgrint_c(
2800        n: SpiceInt,
2801        xvals: *mut ConstSpiceDouble,
2802        yvals: *mut ConstSpiceDouble,
2803        x: SpiceDouble,
2804    ) -> SpiceDouble;
2805}
2806extern "C" {
2807    pub fn limb_pl02(
2808        handle: SpiceInt,
2809        dladsc: *mut ConstSpiceDLADescr,
2810        target: *mut ConstSpiceChar,
2811        et: SpiceDouble,
2812        fixref: *mut ConstSpiceChar,
2813        abcorr: *mut ConstSpiceChar,
2814        obsrvr: *mut ConstSpiceChar,
2815        npoints: SpiceInt,
2816        trgepc: *mut SpiceDouble,
2817        obspos: *mut SpiceDouble,
2818        limbpts: *mut [SpiceDouble; 3usize],
2819        plateIDs: *mut SpiceInt,
2820    );
2821}
2822extern "C" {
2823    pub fn limbpt_c(
2824        method: *mut ConstSpiceChar,
2825        target: *mut ConstSpiceChar,
2826        et: SpiceDouble,
2827        fixref: *mut ConstSpiceChar,
2828        abcorr: *mut ConstSpiceChar,
2829        corloc: *mut ConstSpiceChar,
2830        obsrvr: *mut ConstSpiceChar,
2831        refvec: *mut ConstSpiceDouble,
2832        rolstp: SpiceDouble,
2833        ncuts: SpiceInt,
2834        schstp: SpiceDouble,
2835        soltol: SpiceDouble,
2836        maxn: SpiceInt,
2837        npts: *mut SpiceInt,
2838        points: *mut [SpiceDouble; 3usize],
2839        epochs: *mut SpiceDouble,
2840        tangts: *mut [SpiceDouble; 3usize],
2841    );
2842}
2843extern "C" {
2844    pub fn llgrid_pl02(
2845        handle: SpiceInt,
2846        dladsc: *mut ConstSpiceDLADescr,
2847        npoints: SpiceInt,
2848        grid: *mut [ConstSpiceDouble; 2usize],
2849        spoints: *mut [SpiceDouble; 3usize],
2850        plateIDs: *mut SpiceInt,
2851    );
2852}
2853extern "C" {
2854    pub fn lmpool_c(cvals: *const ::std::os::raw::c_void, lenvals: SpiceInt, n: SpiceInt);
2855}
2856extern "C" {
2857    pub fn lparse_c(
2858        list: *mut ConstSpiceChar,
2859        delim: *mut ConstSpiceChar,
2860        nmax: SpiceInt,
2861        lenout: SpiceInt,
2862        n: *mut SpiceInt,
2863        items: *mut ::std::os::raw::c_void,
2864    );
2865}
2866extern "C" {
2867    pub fn lparsm_c(
2868        list: *mut ConstSpiceChar,
2869        delims: *mut ConstSpiceChar,
2870        nmax: SpiceInt,
2871        lenout: SpiceInt,
2872        n: *mut SpiceInt,
2873        items: *mut ::std::os::raw::c_void,
2874    );
2875}
2876extern "C" {
2877    pub fn lparss_c(list: *mut ConstSpiceChar, delims: *mut ConstSpiceChar, set: *mut SpiceCell);
2878}
2879extern "C" {
2880    pub fn lspcn_c(
2881        body: *mut ConstSpiceChar,
2882        et: SpiceDouble,
2883        abcorr: *mut ConstSpiceChar,
2884    ) -> SpiceDouble;
2885}
2886extern "C" {
2887    pub fn lstlec_c(
2888        string: *mut ConstSpiceChar,
2889        n: SpiceInt,
2890        lenvals: SpiceInt,
2891        array: *const ::std::os::raw::c_void,
2892    ) -> SpiceInt;
2893}
2894extern "C" {
2895    pub fn lstled_c(x: SpiceDouble, n: SpiceInt, array: *mut ConstSpiceDouble) -> SpiceInt;
2896}
2897extern "C" {
2898    pub fn lstlei_c(x: SpiceInt, n: SpiceInt, array: *mut ConstSpiceInt) -> SpiceInt;
2899}
2900extern "C" {
2901    pub fn lstltc_c(
2902        string: *mut ConstSpiceChar,
2903        n: SpiceInt,
2904        lenvals: SpiceInt,
2905        array: *const ::std::os::raw::c_void,
2906    ) -> SpiceInt;
2907}
2908extern "C" {
2909    pub fn lstltd_c(x: SpiceDouble, n: SpiceInt, array: *mut ConstSpiceDouble) -> SpiceInt;
2910}
2911extern "C" {
2912    pub fn lstlti_c(x: SpiceInt, n: SpiceInt, array: *mut ConstSpiceInt) -> SpiceInt;
2913}
2914extern "C" {
2915    pub fn ltime_c(
2916        etobs: SpiceDouble,
2917        obs: SpiceInt,
2918        dir: *mut ConstSpiceChar,
2919        targ: SpiceInt,
2920        ettarg: *mut SpiceDouble,
2921        elapsd: *mut SpiceDouble,
2922    );
2923}
2924extern "C" {
2925    pub fn lx4dec_c(
2926        string: *mut ConstSpiceChar,
2927        first: SpiceInt,
2928        last: *mut SpiceInt,
2929        nchar: *mut SpiceInt,
2930    );
2931}
2932extern "C" {
2933    pub fn lx4num_c(
2934        string: *mut ConstSpiceChar,
2935        first: SpiceInt,
2936        last: *mut SpiceInt,
2937        nchar: *mut SpiceInt,
2938    );
2939}
2940extern "C" {
2941    pub fn lx4sgn_c(
2942        string: *mut ConstSpiceChar,
2943        first: SpiceInt,
2944        last: *mut SpiceInt,
2945        nchar: *mut SpiceInt,
2946    );
2947}
2948extern "C" {
2949    pub fn lx4uns_c(
2950        string: *mut ConstSpiceChar,
2951        first: SpiceInt,
2952        last: *mut SpiceInt,
2953        nchar: *mut SpiceInt,
2954    );
2955}
2956extern "C" {
2957    pub fn lxqstr_c(
2958        string: *mut ConstSpiceChar,
2959        qchar: SpiceChar,
2960        first: SpiceInt,
2961        last: *mut SpiceInt,
2962        nchar: *mut SpiceInt,
2963    );
2964}
2965extern "C" {
2966    pub fn m2eul_c(
2967        r: *mut [ConstSpiceDouble; 3usize],
2968        axis3: SpiceInt,
2969        axis2: SpiceInt,
2970        axis1: SpiceInt,
2971        angle3: *mut SpiceDouble,
2972        angle2: *mut SpiceDouble,
2973        angle1: *mut SpiceDouble,
2974    );
2975}
2976extern "C" {
2977    pub fn m2q_c(r: *mut [ConstSpiceDouble; 3usize], q: *mut SpiceDouble);
2978}
2979extern "C" {
2980    pub fn matchi_c(
2981        string: *mut ConstSpiceChar,
2982        templ: *mut ConstSpiceChar,
2983        wstr: SpiceChar,
2984        wchr: SpiceChar,
2985    ) -> SpiceBoolean;
2986}
2987extern "C" {
2988    pub fn matchw_c(
2989        string: *mut ConstSpiceChar,
2990        templ: *mut ConstSpiceChar,
2991        wstr: SpiceChar,
2992        wchr: SpiceChar,
2993    ) -> SpiceBoolean;
2994}
2995extern "C" {
2996    pub fn maxd_c(n: SpiceInt, ...) -> SpiceDouble;
2997}
2998extern "C" {
2999    pub fn maxi_c(n: SpiceInt, ...) -> SpiceInt;
3000}
3001extern "C" {
3002    pub fn mequ_c(m1: *mut [ConstSpiceDouble; 3usize], mout: *mut [SpiceDouble; 3usize]);
3003}
3004extern "C" {
3005    pub fn mequg_c(
3006        m1: *const ::std::os::raw::c_void,
3007        nr: SpiceInt,
3008        nc: SpiceInt,
3009        mout: *mut ::std::os::raw::c_void,
3010    );
3011}
3012extern "C" {
3013    pub fn mind_c(n: SpiceInt, ...) -> SpiceDouble;
3014}
3015extern "C" {
3016    pub fn mini_c(n: SpiceInt, ...) -> SpiceInt;
3017}
3018extern "C" {
3019    pub fn moved_(
3020        arrfrm: *mut SpiceDouble,
3021        ndim: *mut SpiceInt,
3022        arrto: *mut SpiceDouble,
3023    ) -> ::std::os::raw::c_int;
3024}
3025extern "C" {
3026    pub fn moved_c(arrfrm: *mut ConstSpiceDouble, ndim: SpiceInt, arrto: *mut SpiceDouble);
3027}
3028extern "C" {
3029    pub fn mtxm_c(
3030        m1: *mut [ConstSpiceDouble; 3usize],
3031        m2: *mut [ConstSpiceDouble; 3usize],
3032        mout: *mut [SpiceDouble; 3usize],
3033    );
3034}
3035extern "C" {
3036    pub fn mtxmg_c(
3037        m1: *const ::std::os::raw::c_void,
3038        m2: *const ::std::os::raw::c_void,
3039        row1: SpiceInt,
3040        col1: SpiceInt,
3041        col2: SpiceInt,
3042        mout: *mut ::std::os::raw::c_void,
3043    );
3044}
3045extern "C" {
3046    pub fn mtxv_c(
3047        m1: *mut [ConstSpiceDouble; 3usize],
3048        vin: *mut ConstSpiceDouble,
3049        vout: *mut SpiceDouble,
3050    );
3051}
3052extern "C" {
3053    pub fn mtxvg_c(
3054        m1: *const ::std::os::raw::c_void,
3055        v2: *const ::std::os::raw::c_void,
3056        ncol1: SpiceInt,
3057        nr1r2: SpiceInt,
3058        vout: *mut ::std::os::raw::c_void,
3059    );
3060}
3061extern "C" {
3062    pub fn mxm_c(
3063        m1: *mut [ConstSpiceDouble; 3usize],
3064        m2: *mut [ConstSpiceDouble; 3usize],
3065        mout: *mut [SpiceDouble; 3usize],
3066    );
3067}
3068extern "C" {
3069    pub fn mxmg_c(
3070        m1: *const ::std::os::raw::c_void,
3071        m2: *const ::std::os::raw::c_void,
3072        row1: SpiceInt,
3073        col1: SpiceInt,
3074        col2: SpiceInt,
3075        mout: *mut ::std::os::raw::c_void,
3076    );
3077}
3078extern "C" {
3079    pub fn mxmt_c(
3080        m1: *mut [ConstSpiceDouble; 3usize],
3081        m2: *mut [ConstSpiceDouble; 3usize],
3082        mout: *mut [SpiceDouble; 3usize],
3083    );
3084}
3085extern "C" {
3086    pub fn mxmtg_c(
3087        m1: *const ::std::os::raw::c_void,
3088        m2: *const ::std::os::raw::c_void,
3089        nrow1: SpiceInt,
3090        nc1c2: SpiceInt,
3091        nrow2: SpiceInt,
3092        mout: *mut ::std::os::raw::c_void,
3093    );
3094}
3095extern "C" {
3096    pub fn mxv_c(
3097        m1: *mut [ConstSpiceDouble; 3usize],
3098        vin: *mut ConstSpiceDouble,
3099        vout: *mut SpiceDouble,
3100    );
3101}
3102extern "C" {
3103    pub fn mxvg_c(
3104        m1: *const ::std::os::raw::c_void,
3105        v2: *const ::std::os::raw::c_void,
3106        nrow1: SpiceInt,
3107        nc1r2: SpiceInt,
3108        vout: *mut ::std::os::raw::c_void,
3109    );
3110}
3111extern "C" {
3112    pub fn namfrm_c(frname: *mut ConstSpiceChar, frcode: *mut SpiceInt);
3113}
3114extern "C" {
3115    pub fn ncpos_c(
3116        str_: *mut ConstSpiceChar,
3117        chars: *mut ConstSpiceChar,
3118        start: SpiceInt,
3119    ) -> SpiceInt;
3120}
3121extern "C" {
3122    pub fn ncposr_c(
3123        str_: *mut ConstSpiceChar,
3124        chars: *mut ConstSpiceChar,
3125        start: SpiceInt,
3126    ) -> SpiceInt;
3127}
3128extern "C" {
3129    pub fn nearpt_c(
3130        positn: *mut ConstSpiceDouble,
3131        a: SpiceDouble,
3132        b: SpiceDouble,
3133        c: SpiceDouble,
3134        npoint: *mut SpiceDouble,
3135        alt: *mut SpiceDouble,
3136    );
3137}
3138extern "C" {
3139    pub fn nextwd_c(
3140        string: *mut ConstSpiceChar,
3141        nexlen: SpiceInt,
3142        reslen: SpiceInt,
3143        next: *mut SpiceChar,
3144        rest: *mut SpiceChar,
3145    );
3146}
3147extern "C" {
3148    pub fn npedln_c(
3149        a: SpiceDouble,
3150        b: SpiceDouble,
3151        c: SpiceDouble,
3152        linept: *mut ConstSpiceDouble,
3153        linedr: *mut ConstSpiceDouble,
3154        pnear: *mut SpiceDouble,
3155        dist: *mut SpiceDouble,
3156    );
3157}
3158extern "C" {
3159    pub fn npelpt_c(
3160        point: *mut ConstSpiceDouble,
3161        ellips: *mut ConstSpiceEllipse,
3162        pnear: *mut SpiceDouble,
3163        dist: *mut SpiceDouble,
3164    );
3165}
3166extern "C" {
3167    pub fn nplnpt_c(
3168        linpt: *mut ConstSpiceDouble,
3169        lindir: *mut ConstSpiceDouble,
3170        point: *mut ConstSpiceDouble,
3171        pnear: *mut SpiceDouble,
3172        dist: *mut SpiceDouble,
3173    );
3174}
3175extern "C" {
3176    pub fn nthwd_c(
3177        string: *mut ConstSpiceChar,
3178        nth: SpiceInt,
3179        worlen: SpiceInt,
3180        word: *mut SpiceChar,
3181        loc: *mut SpiceInt,
3182    );
3183}
3184extern "C" {
3185    pub fn nvc2pl_c(normal: *mut ConstSpiceDouble, constant: SpiceDouble, plane: *mut SpicePlane);
3186}
3187extern "C" {
3188    pub fn nvp2pl_c(
3189        normal: *mut ConstSpiceDouble,
3190        point: *mut ConstSpiceDouble,
3191        plane: *mut SpicePlane,
3192    );
3193}
3194extern "C" {
3195    pub fn occult_c(
3196        target1: *mut ConstSpiceChar,
3197        shape1: *mut ConstSpiceChar,
3198        frame1: *mut ConstSpiceChar,
3199        target2: *mut ConstSpiceChar,
3200        shape2: *mut ConstSpiceChar,
3201        frame2: *mut ConstSpiceChar,
3202        abcorr: *mut ConstSpiceChar,
3203        observer: *mut ConstSpiceChar,
3204        time: SpiceDouble,
3205        occult_code: *mut SpiceInt,
3206    );
3207}
3208extern "C" {
3209    pub fn ordc_c(item: *mut ConstSpiceChar, set: *mut SpiceCell) -> SpiceInt;
3210}
3211extern "C" {
3212    pub fn ordd_c(item: SpiceDouble, set: *mut SpiceCell) -> SpiceInt;
3213}
3214extern "C" {
3215    pub fn ordi_c(item: SpiceInt, set: *mut SpiceCell) -> SpiceInt;
3216}
3217extern "C" {
3218    pub fn orderc_c(
3219        lenvals: SpiceInt,
3220        array: *const ::std::os::raw::c_void,
3221        ndim: SpiceInt,
3222        iorder: *mut SpiceInt,
3223    );
3224}
3225extern "C" {
3226    pub fn orderd_c(array: *mut ConstSpiceDouble, ndim: SpiceInt, iorder: *mut SpiceInt);
3227}
3228extern "C" {
3229    pub fn orderi_c(array: *mut ConstSpiceInt, ndim: SpiceInt, iorder: *mut SpiceInt);
3230}
3231extern "C" {
3232    pub fn oscelt_c(
3233        state: *mut ConstSpiceDouble,
3234        et: SpiceDouble,
3235        mu: SpiceDouble,
3236        elts: *mut SpiceDouble,
3237    );
3238}
3239extern "C" {
3240    pub fn oscltx_c(
3241        state: *mut ConstSpiceDouble,
3242        et: SpiceDouble,
3243        mu: SpiceDouble,
3244        elts: *mut SpiceDouble,
3245    );
3246}
3247extern "C" {
3248    pub fn pckcls_c(handle: SpiceInt);
3249}
3250extern "C" {
3251    pub fn pckcov_c(pck: *mut ConstSpiceChar, idcode: SpiceInt, cover: *mut SpiceCell);
3252}
3253extern "C" {
3254    pub fn pckfrm_c(pck: *mut ConstSpiceChar, ids: *mut SpiceCell);
3255}
3256extern "C" {
3257    pub fn pcklof_c(fname: *mut ConstSpiceChar, handle: *mut SpiceInt);
3258}
3259extern "C" {
3260    pub fn pckopn_c(
3261        name: *mut ConstSpiceChar,
3262        ifname: *mut ConstSpiceChar,
3263        ncomch: SpiceInt,
3264        handle: *mut SpiceInt,
3265    );
3266}
3267extern "C" {
3268    pub fn pckuof_c(handle: SpiceInt);
3269}
3270extern "C" {
3271    pub fn pckw02_c(
3272        handle: SpiceInt,
3273        clssid: SpiceInt,
3274        frame: *mut ConstSpiceChar,
3275        first: SpiceDouble,
3276        last: SpiceDouble,
3277        segid: *mut ConstSpiceChar,
3278        intlen: SpiceDouble,
3279        n: SpiceInt,
3280        polydg: SpiceInt,
3281        cdata: *mut SpiceDouble,
3282        btime: SpiceDouble,
3283    );
3284}
3285extern "C" {
3286    pub fn pcpool_c(
3287        name: *mut ConstSpiceChar,
3288        n: SpiceInt,
3289        lenvals: SpiceInt,
3290        cvals: *const ::std::os::raw::c_void,
3291    );
3292}
3293extern "C" {
3294    pub fn pdpool_c(name: *mut ConstSpiceChar, n: SpiceInt, dvals: *mut ConstSpiceDouble);
3295}
3296extern "C" {
3297    pub fn pgrrec_c(
3298        body: *mut ConstSpiceChar,
3299        lon: SpiceDouble,
3300        lat: SpiceDouble,
3301        alt: SpiceDouble,
3302        re: SpiceDouble,
3303        f: SpiceDouble,
3304        rectan: *mut SpiceDouble,
3305    );
3306}
3307extern "C" {
3308    pub fn phaseq_c(
3309        et: SpiceDouble,
3310        target: *mut ConstSpiceChar,
3311        illumn: *mut ConstSpiceChar,
3312        obsrvr: *mut ConstSpiceChar,
3313        abcorr: *mut ConstSpiceChar,
3314    ) -> SpiceDouble;
3315}
3316extern "C" {
3317    pub fn pi_c() -> SpiceDouble;
3318}
3319extern "C" {
3320    pub fn pipool_c(name: *mut ConstSpiceChar, n: SpiceInt, ivals: *mut ConstSpiceInt);
3321}
3322extern "C" {
3323    pub fn pjelpl_c(
3324        elin: *mut ConstSpiceEllipse,
3325        plane: *mut ConstSpicePlane,
3326        elout: *mut SpiceEllipse,
3327    );
3328}
3329extern "C" {
3330    pub fn pl2nvc_c(
3331        plane: *mut ConstSpicePlane,
3332        normal: *mut SpiceDouble,
3333        constant: *mut SpiceDouble,
3334    );
3335}
3336extern "C" {
3337    pub fn pl2nvp_c(plane: *mut ConstSpicePlane, normal: *mut SpiceDouble, point: *mut SpiceDouble);
3338}
3339extern "C" {
3340    pub fn pl2psv_c(
3341        plane: *mut ConstSpicePlane,
3342        point: *mut SpiceDouble,
3343        span1: *mut SpiceDouble,
3344        span2: *mut SpiceDouble,
3345    );
3346}
3347extern "C" {
3348    pub fn pltar_c(
3349        nv: SpiceInt,
3350        vrtces: *mut [ConstSpiceDouble; 3usize],
3351        np: SpiceInt,
3352        plates: *mut [ConstSpiceInt; 3usize],
3353    ) -> SpiceDouble;
3354}
3355extern "C" {
3356    pub fn pltexp_c(
3357        iverts: *mut [ConstSpiceDouble; 3usize],
3358        delta: SpiceDouble,
3359        overts: *mut [SpiceDouble; 3usize],
3360    );
3361}
3362extern "C" {
3363    pub fn pltnp_c(
3364        point: *mut ConstSpiceDouble,
3365        v1: *mut ConstSpiceDouble,
3366        v2: *mut ConstSpiceDouble,
3367        v3: *mut ConstSpiceDouble,
3368        pnear: *mut SpiceDouble,
3369        dist: *mut SpiceDouble,
3370    );
3371}
3372extern "C" {
3373    pub fn pltnrm_c(
3374        v1: *mut ConstSpiceDouble,
3375        v2: *mut ConstSpiceDouble,
3376        v3: *mut ConstSpiceDouble,
3377        normal: *mut SpiceDouble,
3378    );
3379}
3380extern "C" {
3381    pub fn pltvol_c(
3382        nv: SpiceInt,
3383        vrtces: *mut [ConstSpiceDouble; 3usize],
3384        np: SpiceInt,
3385        plates: *mut [ConstSpiceInt; 3usize],
3386    ) -> SpiceDouble;
3387}
3388extern "C" {
3389    pub fn polyds_c(
3390        coeffs: *mut ConstSpiceDouble,
3391        deg: SpiceInt,
3392        nderiv: SpiceInt,
3393        t: SpiceDouble,
3394        p: *mut SpiceDouble,
3395    );
3396}
3397extern "C" {
3398    pub fn pos_c(
3399        str_: *mut ConstSpiceChar,
3400        substr: *mut ConstSpiceChar,
3401        start: SpiceInt,
3402    ) -> SpiceInt;
3403}
3404extern "C" {
3405    pub fn posr_c(
3406        str_: *mut ConstSpiceChar,
3407        substr: *mut ConstSpiceChar,
3408        start: SpiceInt,
3409    ) -> SpiceInt;
3410}
3411extern "C" {
3412    pub fn prefix_c(
3413        pref: *mut ConstSpiceChar,
3414        spaces: SpiceInt,
3415        lenout: SpiceInt,
3416        string: *mut SpiceChar,
3417    );
3418}
3419extern "C" {
3420    pub fn prompt_c(
3421        prmptStr: *mut ConstSpiceChar,
3422        lenout: SpiceInt,
3423        buffer: *mut SpiceChar,
3424    ) -> *mut SpiceChar;
3425}
3426extern "C" {
3427    pub fn prop2b_c(
3428        gm: SpiceDouble,
3429        pvinit: *mut ConstSpiceDouble,
3430        dt: SpiceDouble,
3431        pvprop: *mut SpiceDouble,
3432    );
3433}
3434extern "C" {
3435    pub fn prsdp_c(string: *mut ConstSpiceChar, dpval: *mut SpiceDouble);
3436}
3437extern "C" {
3438    pub fn prsint_c(string: *mut ConstSpiceChar, intval: *mut SpiceInt);
3439}
3440extern "C" {
3441    pub fn psv2pl_c(
3442        point: *mut ConstSpiceDouble,
3443        span1: *mut ConstSpiceDouble,
3444        span2: *mut ConstSpiceDouble,
3445        plane: *mut SpicePlane,
3446    );
3447}
3448extern "C" {
3449    pub fn putcml_c(argc: SpiceInt, argv: *mut *mut SpiceChar);
3450}
3451extern "C" {
3452    pub fn pxform_c(
3453        from: *mut ConstSpiceChar,
3454        to: *mut ConstSpiceChar,
3455        et: SpiceDouble,
3456        rotate: *mut [SpiceDouble; 3usize],
3457    );
3458}
3459extern "C" {
3460    pub fn pxfrm2_c(
3461        from: *mut ConstSpiceChar,
3462        to: *mut ConstSpiceChar,
3463        etfrom: SpiceDouble,
3464        etto: SpiceDouble,
3465        rotate: *mut [SpiceDouble; 3usize],
3466    );
3467}
3468extern "C" {
3469    pub fn q2m_c(q: *mut ConstSpiceDouble, r: *mut [SpiceDouble; 3usize]);
3470}
3471extern "C" {
3472    pub fn qcktrc_c(tracelen: SpiceInt, trace: *mut SpiceChar);
3473}
3474extern "C" {
3475    pub fn qderiv_c(
3476        ndim: SpiceInt,
3477        f0: *mut ConstSpiceDouble,
3478        f2: *mut ConstSpiceDouble,
3479        delta: SpiceDouble,
3480        dfdt: *mut SpiceDouble,
3481    );
3482}
3483extern "C" {
3484    pub fn qdq2av_c(q: *mut ConstSpiceDouble, dq: *mut ConstSpiceDouble, av: *mut SpiceDouble);
3485}
3486extern "C" {
3487    pub fn qxq_c(q1: *mut ConstSpiceDouble, q2: *mut ConstSpiceDouble, qout: *mut SpiceDouble);
3488}
3489extern "C" {
3490    pub fn radrec_c(
3491        range: SpiceDouble,
3492        ra: SpiceDouble,
3493        dec: SpiceDouble,
3494        rectan: *mut SpiceDouble,
3495    );
3496}
3497extern "C" {
3498    pub fn rav2xf_c(
3499        rot: *mut [ConstSpiceDouble; 3usize],
3500        av: *mut ConstSpiceDouble,
3501        xform: *mut [SpiceDouble; 6usize],
3502    );
3503}
3504extern "C" {
3505    pub fn raxisa_c(
3506        matrix: *mut [ConstSpiceDouble; 3usize],
3507        axis: *mut SpiceDouble,
3508        angle: *mut SpiceDouble,
3509    );
3510}
3511extern "C" {
3512    pub fn rdtext_c(
3513        file: *mut ConstSpiceChar,
3514        lenout: SpiceInt,
3515        line: *mut SpiceChar,
3516        eof: *mut SpiceBoolean,
3517    );
3518}
3519extern "C" {
3520    pub fn recazl_c(
3521        rectan: *mut ConstSpiceDouble,
3522        azccw: SpiceBoolean,
3523        elplsz: SpiceBoolean,
3524        range: *mut SpiceDouble,
3525        az: *mut SpiceDouble,
3526        el: *mut SpiceDouble,
3527    );
3528}
3529extern "C" {
3530    pub fn reccyl_c(
3531        rectan: *mut ConstSpiceDouble,
3532        r: *mut SpiceDouble,
3533        lon: *mut SpiceDouble,
3534        z: *mut SpiceDouble,
3535    );
3536}
3537extern "C" {
3538    pub fn recgeo_c(
3539        rectan: *mut ConstSpiceDouble,
3540        re: SpiceDouble,
3541        f: SpiceDouble,
3542        lon: *mut SpiceDouble,
3543        lat: *mut SpiceDouble,
3544        alt: *mut SpiceDouble,
3545    );
3546}
3547extern "C" {
3548    pub fn reclat_c(
3549        rectan: *mut ConstSpiceDouble,
3550        radius: *mut SpiceDouble,
3551        longitude: *mut SpiceDouble,
3552        latitude: *mut SpiceDouble,
3553    );
3554}
3555extern "C" {
3556    pub fn recpgr_c(
3557        body: *mut ConstSpiceChar,
3558        rectan: *mut SpiceDouble,
3559        re: SpiceDouble,
3560        f: SpiceDouble,
3561        lon: *mut SpiceDouble,
3562        lat: *mut SpiceDouble,
3563        alt: *mut SpiceDouble,
3564    );
3565}
3566extern "C" {
3567    pub fn recrad_c(
3568        rectan: *mut ConstSpiceDouble,
3569        radius: *mut SpiceDouble,
3570        ra: *mut SpiceDouble,
3571        dec: *mut SpiceDouble,
3572    );
3573}
3574extern "C" {
3575    pub fn reordc_c(
3576        iorder: *mut ConstSpiceInt,
3577        ndim: SpiceInt,
3578        lenvals: SpiceInt,
3579        array: *mut ::std::os::raw::c_void,
3580    );
3581}
3582extern "C" {
3583    pub fn reordd_c(iorder: *mut ConstSpiceInt, ndim: SpiceInt, array: *mut SpiceDouble);
3584}
3585extern "C" {
3586    pub fn reordi_c(iorder: *mut ConstSpiceInt, ndim: SpiceInt, array: *mut SpiceInt);
3587}
3588extern "C" {
3589    pub fn reordl_c(iorder: *mut ConstSpiceInt, ndim: SpiceInt, array: *mut SpiceBoolean);
3590}
3591extern "C" {
3592    pub fn removc_c(item: *mut ConstSpiceChar, set: *mut SpiceCell);
3593}
3594extern "C" {
3595    pub fn removd_c(item: SpiceDouble, set: *mut SpiceCell);
3596}
3597extern "C" {
3598    pub fn removi_c(item: SpiceInt, set: *mut SpiceCell);
3599}
3600extern "C" {
3601    pub fn repmc_c(
3602        in_: *mut ConstSpiceChar,
3603        marker: *mut ConstSpiceChar,
3604        value: *mut ConstSpiceChar,
3605        lenout: SpiceInt,
3606        out: *mut SpiceChar,
3607    );
3608}
3609extern "C" {
3610    pub fn repmct_c(
3611        in_: *mut ConstSpiceChar,
3612        marker: *mut ConstSpiceChar,
3613        value: SpiceInt,
3614        strCase: SpiceChar,
3615        lenout: SpiceInt,
3616        out: *mut SpiceChar,
3617    );
3618}
3619extern "C" {
3620    pub fn repml_c(
3621        in_: *mut ConstSpiceChar,
3622        marker: *mut ConstSpiceChar,
3623        value: SpiceBoolean,
3624        rtcase: SpiceChar,
3625        outlen: SpiceInt,
3626        out: *mut SpiceChar,
3627    );
3628}
3629extern "C" {
3630    pub fn repmd_c(
3631        in_: *mut ConstSpiceChar,
3632        marker: *mut ConstSpiceChar,
3633        value: SpiceDouble,
3634        sigdig: SpiceInt,
3635        lenout: SpiceInt,
3636        out: *mut SpiceChar,
3637    );
3638}
3639extern "C" {
3640    pub fn repmf_c(
3641        in_: *mut ConstSpiceChar,
3642        marker: *mut ConstSpiceChar,
3643        value: SpiceDouble,
3644        sigdig: SpiceInt,
3645        format: SpiceChar,
3646        lenout: SpiceInt,
3647        out: *mut SpiceChar,
3648    );
3649}
3650extern "C" {
3651    pub fn repmi_c(
3652        in_: *mut ConstSpiceChar,
3653        marker: *mut ConstSpiceChar,
3654        value: SpiceInt,
3655        lenout: SpiceInt,
3656        out: *mut SpiceChar,
3657    );
3658}
3659extern "C" {
3660    pub fn repmot_c(
3661        in_: *mut ConstSpiceChar,
3662        marker: *mut ConstSpiceChar,
3663        value: SpiceInt,
3664        strCase: SpiceChar,
3665        lenout: SpiceInt,
3666        out: *mut SpiceChar,
3667    );
3668}
3669extern "C" {
3670    pub fn reset_c();
3671}
3672extern "C" {
3673    pub fn return_c() -> SpiceBoolean;
3674}
3675extern "C" {
3676    pub fn recsph_c(
3677        rectan: *mut ConstSpiceDouble,
3678        r: *mut SpiceDouble,
3679        colat: *mut SpiceDouble,
3680        lon: *mut SpiceDouble,
3681    );
3682}
3683extern "C" {
3684    pub fn rotate_c(angle: SpiceDouble, iaxis: SpiceInt, mout: *mut [SpiceDouble; 3usize]);
3685}
3686extern "C" {
3687    pub fn rotmat_c(
3688        m1: *mut [ConstSpiceDouble; 3usize],
3689        angle: SpiceDouble,
3690        iaxis: SpiceInt,
3691        mout: *mut [SpiceDouble; 3usize],
3692    );
3693}
3694extern "C" {
3695    pub fn rotvec_c(
3696        v1: *mut ConstSpiceDouble,
3697        angle: SpiceDouble,
3698        iaxis: SpiceInt,
3699        vout: *mut SpiceDouble,
3700    );
3701}
3702extern "C" {
3703    pub fn rpd_c() -> SpiceDouble;
3704}
3705extern "C" {
3706    pub fn rquad_c(
3707        a: SpiceDouble,
3708        b: SpiceDouble,
3709        c: SpiceDouble,
3710        root1: *mut SpiceDouble,
3711        root2: *mut SpiceDouble,
3712    );
3713}
3714extern "C" {
3715    pub fn saelgv_c(
3716        vec1: *mut ConstSpiceDouble,
3717        vec2: *mut ConstSpiceDouble,
3718        smajor: *mut SpiceDouble,
3719        sminor: *mut SpiceDouble,
3720    );
3721}
3722extern "C" {
3723    pub fn scard_c(card: SpiceInt, cell: *mut SpiceCell);
3724}
3725extern "C" {
3726    pub fn scdecd_c(sc: SpiceInt, sclkdp: SpiceDouble, sclklen: SpiceInt, sclkch: *mut SpiceChar);
3727}
3728extern "C" {
3729    pub fn sce2s_c(sc: SpiceInt, et: SpiceDouble, sclklen: SpiceInt, sclkch: *mut SpiceChar);
3730}
3731extern "C" {
3732    pub fn sce2c_c(sc: SpiceInt, et: SpiceDouble, sclkdp: *mut SpiceDouble);
3733}
3734extern "C" {
3735    pub fn sce2t_c(sc: SpiceInt, et: SpiceDouble, sclkdp: *mut SpiceDouble);
3736}
3737extern "C" {
3738    pub fn scencd_c(sc: SpiceInt, sclkch: *mut ConstSpiceChar, sclkdp: *mut SpiceDouble);
3739}
3740extern "C" {
3741    pub fn scfmt_c(sc: SpiceInt, ticks: SpiceDouble, clkstrlen: SpiceInt, clkstr: *mut SpiceChar);
3742}
3743extern "C" {
3744    pub fn scpart_c(
3745        sc: SpiceInt,
3746        nparts: *mut SpiceInt,
3747        pstart: *mut SpiceDouble,
3748        pstop: *mut SpiceDouble,
3749    );
3750}
3751extern "C" {
3752    pub fn scs2e_c(sc: SpiceInt, sclkch: *mut ConstSpiceChar, et: *mut SpiceDouble);
3753}
3754extern "C" {
3755    pub fn sct2e_c(sc: SpiceInt, sclkdp: SpiceDouble, et: *mut SpiceDouble);
3756}
3757extern "C" {
3758    pub fn sctiks_c(sc: SpiceInt, clkstr: *mut ConstSpiceChar, ticks: *mut SpiceDouble);
3759}
3760extern "C" {
3761    pub fn sdiff_c(a: *mut SpiceCell, b: *mut SpiceCell, c: *mut SpiceCell);
3762}
3763extern "C" {
3764    pub fn set_c(a: *mut SpiceCell, op: *mut ConstSpiceChar, b: *mut SpiceCell) -> SpiceBoolean;
3765}
3766extern "C" {
3767    pub fn setmsg_c(msg: *mut ConstSpiceChar);
3768}
3769extern "C" {
3770    pub fn shellc_c(ndim: SpiceInt, lenvals: SpiceInt, array: *mut ::std::os::raw::c_void);
3771}
3772extern "C" {
3773    pub fn shelld_c(ndim: SpiceInt, array: *mut SpiceDouble);
3774}
3775extern "C" {
3776    pub fn shelli_c(ndim: SpiceInt, array: *mut SpiceInt);
3777}
3778extern "C" {
3779    pub fn sigerr_c(message: *mut ConstSpiceChar);
3780}
3781extern "C" {
3782    pub fn sincpt_c(
3783        method: *mut ConstSpiceChar,
3784        target: *mut ConstSpiceChar,
3785        et: SpiceDouble,
3786        fixref: *mut ConstSpiceChar,
3787        abcorr: *mut ConstSpiceChar,
3788        obsrvr: *mut ConstSpiceChar,
3789        dref: *mut ConstSpiceChar,
3790        dvec: *mut ConstSpiceDouble,
3791        spoint: *mut SpiceDouble,
3792        trgepc: *mut SpiceDouble,
3793        srfvec: *mut SpiceDouble,
3794        found: *mut SpiceBoolean,
3795    );
3796}
3797extern "C" {
3798    pub fn size_c(size: *mut SpiceCell) -> SpiceInt;
3799}
3800extern "C" {
3801    pub fn spd_c() -> SpiceDouble;
3802}
3803extern "C" {
3804    pub fn sphcyl_c(
3805        radius: SpiceDouble,
3806        colat: SpiceDouble,
3807        slon: SpiceDouble,
3808        r: *mut SpiceDouble,
3809        lon: *mut SpiceDouble,
3810        z: *mut SpiceDouble,
3811    );
3812}
3813extern "C" {
3814    pub fn sphlat_c(
3815        r: SpiceDouble,
3816        colat: SpiceDouble,
3817        lons: SpiceDouble,
3818        radius: *mut SpiceDouble,
3819        lon: *mut SpiceDouble,
3820        lat: *mut SpiceDouble,
3821    );
3822}
3823extern "C" {
3824    pub fn sphrec_c(r: SpiceDouble, colat: SpiceDouble, lon: SpiceDouble, rectan: *mut SpiceDouble);
3825}
3826extern "C" {
3827    pub fn spk14a_c(
3828        handle: SpiceInt,
3829        ncsets: SpiceInt,
3830        coeffs: *mut ConstSpiceDouble,
3831        epochs: *mut ConstSpiceDouble,
3832    );
3833}
3834extern "C" {
3835    pub fn spk14b_c(
3836        handle: SpiceInt,
3837        segid: *mut ConstSpiceChar,
3838        body: SpiceInt,
3839        center: SpiceInt,
3840        frame: *mut ConstSpiceChar,
3841        first: SpiceDouble,
3842        last: SpiceDouble,
3843        chbdeg: SpiceInt,
3844    );
3845}
3846extern "C" {
3847    pub fn spk14e_c(handle: SpiceInt);
3848}
3849extern "C" {
3850    pub fn spkapo_c(
3851        targ: SpiceInt,
3852        et: SpiceDouble,
3853        ref_: *mut ConstSpiceChar,
3854        sobs: *mut ConstSpiceDouble,
3855        abcorr: *mut ConstSpiceChar,
3856        ptarg: *mut SpiceDouble,
3857        lt: *mut SpiceDouble,
3858    );
3859}
3860extern "C" {
3861    pub fn spkapp_c(
3862        targ: SpiceInt,
3863        et: SpiceDouble,
3864        ref_: *mut ConstSpiceChar,
3865        sobs: *mut ConstSpiceDouble,
3866        abcorr: *mut ConstSpiceChar,
3867        starg: *mut SpiceDouble,
3868        lt: *mut SpiceDouble,
3869    );
3870}
3871extern "C" {
3872    pub fn spkacs_c(
3873        targ: SpiceInt,
3874        et: SpiceDouble,
3875        ref_: *mut ConstSpiceChar,
3876        abcorr: *mut ConstSpiceChar,
3877        obs: SpiceInt,
3878        starg: *mut SpiceDouble,
3879        lt: *mut SpiceDouble,
3880        dlt: *mut SpiceDouble,
3881    );
3882}
3883extern "C" {
3884    pub fn spkaps_c(
3885        targ: SpiceInt,
3886        et: SpiceDouble,
3887        ref_: *mut ConstSpiceChar,
3888        abcorr: *mut ConstSpiceChar,
3889        stobs: *mut ConstSpiceDouble,
3890        accobs: *mut ConstSpiceDouble,
3891        starg: *mut SpiceDouble,
3892        lt: *mut SpiceDouble,
3893        dlt: *mut SpiceDouble,
3894    );
3895}
3896extern "C" {
3897    pub fn spkcls_c(handle: SpiceInt);
3898}
3899extern "C" {
3900    pub fn spkcov_c(spk: *mut ConstSpiceChar, idcode: SpiceInt, cover: *mut SpiceCell);
3901}
3902extern "C" {
3903    pub fn spkcpo_c(
3904        target: *mut ConstSpiceChar,
3905        et: SpiceDouble,
3906        outref: *mut ConstSpiceChar,
3907        refloc: *mut ConstSpiceChar,
3908        abcorr: *mut ConstSpiceChar,
3909        obssta: *mut ConstSpiceDouble,
3910        obsctr: *mut ConstSpiceChar,
3911        obsref: *mut ConstSpiceChar,
3912        state: *mut SpiceDouble,
3913        lt: *mut SpiceDouble,
3914    );
3915}
3916extern "C" {
3917    pub fn spkcpt_c(
3918        trgpos: *mut ConstSpiceDouble,
3919        trgctr: *mut ConstSpiceChar,
3920        trgref: *mut ConstSpiceChar,
3921        et: SpiceDouble,
3922        outref: *mut ConstSpiceChar,
3923        refloc: *mut ConstSpiceChar,
3924        abcorr: *mut ConstSpiceChar,
3925        obsrvr: *mut ConstSpiceChar,
3926        state: *mut SpiceDouble,
3927        lt: *mut SpiceDouble,
3928    );
3929}
3930extern "C" {
3931    pub fn spkcvo_c(
3932        target: *mut ConstSpiceChar,
3933        et: SpiceDouble,
3934        outref: *mut ConstSpiceChar,
3935        refloc: *mut ConstSpiceChar,
3936        abcorr: *mut ConstSpiceChar,
3937        obssta: *mut ConstSpiceDouble,
3938        obsepc: SpiceDouble,
3939        obsctr: *mut ConstSpiceChar,
3940        obsref: *mut ConstSpiceChar,
3941        state: *mut SpiceDouble,
3942        lt: *mut SpiceDouble,
3943    );
3944}
3945extern "C" {
3946    pub fn spkcvt_c(
3947        trgsta: *mut ConstSpiceDouble,
3948        trgepc: SpiceDouble,
3949        trgctr: *mut ConstSpiceChar,
3950        trgref: *mut ConstSpiceChar,
3951        et: SpiceDouble,
3952        outref: *mut ConstSpiceChar,
3953        refloc: *mut ConstSpiceChar,
3954        abcorr: *mut ConstSpiceChar,
3955        obsrvr: *mut ConstSpiceChar,
3956        state: *mut SpiceDouble,
3957        lt: *mut SpiceDouble,
3958    );
3959}
3960extern "C" {
3961    pub fn spkez_c(
3962        target: SpiceInt,
3963        epoch: SpiceDouble,
3964        frame: *mut ConstSpiceChar,
3965        abcorr: *mut ConstSpiceChar,
3966        observer: SpiceInt,
3967        state: *mut SpiceDouble,
3968        lt: *mut SpiceDouble,
3969    );
3970}
3971extern "C" {
3972    pub fn spkezp_c(
3973        targ: SpiceInt,
3974        et: SpiceDouble,
3975        ref_: *mut ConstSpiceChar,
3976        abcorr: *mut ConstSpiceChar,
3977        obs: SpiceInt,
3978        ptarg: *mut SpiceDouble,
3979        lt: *mut SpiceDouble,
3980    );
3981}
3982extern "C" {
3983    pub fn spkezr_c(
3984        target: *mut ConstSpiceChar,
3985        epoch: SpiceDouble,
3986        frame: *mut ConstSpiceChar,
3987        abcorr: *mut ConstSpiceChar,
3988        observer: *mut ConstSpiceChar,
3989        state: *mut SpiceDouble,
3990        lt: *mut SpiceDouble,
3991    );
3992}
3993extern "C" {
3994    pub fn spkgeo_c(
3995        targ: SpiceInt,
3996        et: SpiceDouble,
3997        ref_: *mut ConstSpiceChar,
3998        obs: SpiceInt,
3999        state: *mut SpiceDouble,
4000        lt: *mut SpiceDouble,
4001    );
4002}
4003extern "C" {
4004    pub fn spkgps_c(
4005        targ: SpiceInt,
4006        et: SpiceDouble,
4007        ref_: *mut ConstSpiceChar,
4008        obs: SpiceInt,
4009        pos: *mut SpiceDouble,
4010        lt: *mut SpiceDouble,
4011    );
4012}
4013extern "C" {
4014    pub fn spklef_c(filename: *mut ConstSpiceChar, handle: *mut SpiceInt);
4015}
4016extern "C" {
4017    pub fn spkltc_c(
4018        targ: SpiceInt,
4019        et: SpiceDouble,
4020        ref_: *mut ConstSpiceChar,
4021        abcorr: *mut ConstSpiceChar,
4022        stobs: *mut ConstSpiceDouble,
4023        starg: *mut SpiceDouble,
4024        lt: *mut SpiceDouble,
4025        dlt: *mut SpiceDouble,
4026    );
4027}
4028extern "C" {
4029    pub fn spkobj_c(spk: *mut ConstSpiceChar, ids: *mut SpiceCell);
4030}
4031extern "C" {
4032    pub fn spkopa_c(file: *mut ConstSpiceChar, handle: *mut SpiceInt);
4033}
4034extern "C" {
4035    pub fn spkopn_c(
4036        name: *mut ConstSpiceChar,
4037        ifname: *mut ConstSpiceChar,
4038        ncomch: SpiceInt,
4039        handle: *mut SpiceInt,
4040    );
4041}
4042extern "C" {
4043    pub fn spkpds_c(
4044        body: SpiceInt,
4045        center: SpiceInt,
4046        frame: *mut ConstSpiceChar,
4047        type_: SpiceInt,
4048        first: SpiceDouble,
4049        last: SpiceDouble,
4050        descr: *mut SpiceDouble,
4051    );
4052}
4053extern "C" {
4054    pub fn spkpos_c(
4055        targ: *mut ConstSpiceChar,
4056        et: SpiceDouble,
4057        ref_: *mut ConstSpiceChar,
4058        abcorr: *mut ConstSpiceChar,
4059        obs: *mut ConstSpiceChar,
4060        ptarg: *mut SpiceDouble,
4061        lt: *mut SpiceDouble,
4062    );
4063}
4064extern "C" {
4065    pub fn spkpvn_c(
4066        handle: SpiceInt,
4067        descr: *mut ConstSpiceDouble,
4068        et: SpiceDouble,
4069        ref_: *mut SpiceInt,
4070        state: *mut SpiceDouble,
4071        center: *mut SpiceInt,
4072    );
4073}
4074extern "C" {
4075    pub fn spksfs_c(
4076        body: SpiceInt,
4077        et: SpiceDouble,
4078        idlen: SpiceInt,
4079        handle: *mut SpiceInt,
4080        descr: *mut SpiceDouble,
4081        ident: *mut SpiceChar,
4082        found: *mut SpiceBoolean,
4083    );
4084}
4085extern "C" {
4086    pub fn spkssb_c(
4087        targ: SpiceInt,
4088        et: SpiceDouble,
4089        ref_: *mut ConstSpiceChar,
4090        starg: *mut SpiceDouble,
4091    );
4092}
4093extern "C" {
4094    pub fn spksub_c(
4095        handle: SpiceInt,
4096        descr: *mut SpiceDouble,
4097        ident: *mut ConstSpiceChar,
4098        begin: SpiceDouble,
4099        end: SpiceDouble,
4100        newh: SpiceInt,
4101    );
4102}
4103extern "C" {
4104    pub fn spkuds_c(
4105        descr: *mut ConstSpiceDouble,
4106        body: *mut SpiceInt,
4107        center: *mut SpiceInt,
4108        frame: *mut SpiceInt,
4109        type_: *mut SpiceInt,
4110        first: *mut SpiceDouble,
4111        last: *mut SpiceDouble,
4112        begin: *mut SpiceInt,
4113        end: *mut SpiceInt,
4114    );
4115}
4116extern "C" {
4117    pub fn spkuef_c(handle: SpiceInt);
4118}
4119extern "C" {
4120    pub fn spkw02_c(
4121        handle: SpiceInt,
4122        body: SpiceInt,
4123        center: SpiceInt,
4124        frame: *mut ConstSpiceChar,
4125        first: SpiceDouble,
4126        last: SpiceDouble,
4127        segid: *mut ConstSpiceChar,
4128        intlen: SpiceDouble,
4129        n: SpiceInt,
4130        polydg: SpiceInt,
4131        cdata: *mut ConstSpiceDouble,
4132        btime: SpiceDouble,
4133    );
4134}
4135extern "C" {
4136    pub fn spkw03_c(
4137        handle: SpiceInt,
4138        body: SpiceInt,
4139        center: SpiceInt,
4140        frame: *mut ConstSpiceChar,
4141        first: SpiceDouble,
4142        last: SpiceDouble,
4143        segid: *mut ConstSpiceChar,
4144        intlen: SpiceDouble,
4145        n: SpiceInt,
4146        polydg: SpiceInt,
4147        cdata: *mut ConstSpiceDouble,
4148        btime: SpiceDouble,
4149    );
4150}
4151extern "C" {
4152    pub fn spkw05_c(
4153        handle: SpiceInt,
4154        body: SpiceInt,
4155        center: SpiceInt,
4156        frame: *mut ConstSpiceChar,
4157        first: SpiceDouble,
4158        last: SpiceDouble,
4159        segid: *mut ConstSpiceChar,
4160        gm: SpiceDouble,
4161        n: SpiceInt,
4162        states: *mut [ConstSpiceDouble; 6usize],
4163        epochs: *mut ConstSpiceDouble,
4164    );
4165}
4166extern "C" {
4167    pub fn spkw08_c(
4168        handle: SpiceInt,
4169        body: SpiceInt,
4170        center: SpiceInt,
4171        frame: *mut ConstSpiceChar,
4172        first: SpiceDouble,
4173        last: SpiceDouble,
4174        segid: *mut ConstSpiceChar,
4175        degree: SpiceInt,
4176        n: SpiceInt,
4177        states: *mut [ConstSpiceDouble; 6usize],
4178        epoch1: SpiceDouble,
4179        step: SpiceDouble,
4180    );
4181}
4182extern "C" {
4183    pub fn spkw09_c(
4184        handle: SpiceInt,
4185        body: SpiceInt,
4186        center: SpiceInt,
4187        frame: *mut ConstSpiceChar,
4188        first: SpiceDouble,
4189        last: SpiceDouble,
4190        segid: *mut ConstSpiceChar,
4191        degree: SpiceInt,
4192        n: SpiceInt,
4193        states: *mut [ConstSpiceDouble; 6usize],
4194        epochs: *mut ConstSpiceDouble,
4195    );
4196}
4197extern "C" {
4198    pub fn spkw10_c(
4199        handle: SpiceInt,
4200        body: SpiceInt,
4201        center: SpiceInt,
4202        frame: *mut ConstSpiceChar,
4203        first: SpiceDouble,
4204        last: SpiceDouble,
4205        segid: *mut ConstSpiceChar,
4206        consts: *mut ConstSpiceDouble,
4207        n: SpiceInt,
4208        elems: *mut ConstSpiceDouble,
4209        epochs: *mut ConstSpiceDouble,
4210    );
4211}
4212extern "C" {
4213    pub fn spkw12_c(
4214        handle: SpiceInt,
4215        body: SpiceInt,
4216        center: SpiceInt,
4217        frame: *mut ConstSpiceChar,
4218        first: SpiceDouble,
4219        last: SpiceDouble,
4220        segid: *mut ConstSpiceChar,
4221        degree: SpiceInt,
4222        n: SpiceInt,
4223        states: *mut [ConstSpiceDouble; 6usize],
4224        epoch0: SpiceDouble,
4225        step: SpiceDouble,
4226    );
4227}
4228extern "C" {
4229    pub fn spkw13_c(
4230        handle: SpiceInt,
4231        body: SpiceInt,
4232        center: SpiceInt,
4233        frame: *mut ConstSpiceChar,
4234        first: SpiceDouble,
4235        last: SpiceDouble,
4236        segid: *mut ConstSpiceChar,
4237        degree: SpiceInt,
4238        n: SpiceInt,
4239        states: *mut [ConstSpiceDouble; 6usize],
4240        epochs: *mut ConstSpiceDouble,
4241    );
4242}
4243extern "C" {
4244    pub fn spkw15_c(
4245        handle: SpiceInt,
4246        body: SpiceInt,
4247        center: SpiceInt,
4248        frame: *mut ConstSpiceChar,
4249        first: SpiceDouble,
4250        last: SpiceDouble,
4251        segid: *mut ConstSpiceChar,
4252        epoch: SpiceDouble,
4253        tp: *mut ConstSpiceDouble,
4254        pa: *mut ConstSpiceDouble,
4255        p: SpiceDouble,
4256        ecc: SpiceDouble,
4257        j2flg: SpiceDouble,
4258        pv: *mut ConstSpiceDouble,
4259        gm: SpiceDouble,
4260        j2: SpiceDouble,
4261        radius: SpiceDouble,
4262    );
4263}
4264extern "C" {
4265    pub fn spkw17_c(
4266        handle: SpiceInt,
4267        body: SpiceInt,
4268        center: SpiceInt,
4269        frame: *mut ConstSpiceChar,
4270        first: SpiceDouble,
4271        last: SpiceDouble,
4272        segid: *mut ConstSpiceChar,
4273        epoch: SpiceDouble,
4274        eqel: *mut ConstSpiceDouble,
4275        rapol: SpiceDouble,
4276        decpol: SpiceDouble,
4277    );
4278}
4279extern "C" {
4280    pub fn spkw18_c(
4281        handle: SpiceInt,
4282        subtyp: SpiceSPK18Subtype,
4283        body: SpiceInt,
4284        center: SpiceInt,
4285        frame: *mut ConstSpiceChar,
4286        first: SpiceDouble,
4287        last: SpiceDouble,
4288        segid: *mut ConstSpiceChar,
4289        degree: SpiceInt,
4290        n: SpiceInt,
4291        packts: *const ::std::os::raw::c_void,
4292        epochs: *mut ConstSpiceDouble,
4293    );
4294}
4295extern "C" {
4296    pub fn spkw20_c(
4297        handle: SpiceInt,
4298        body: SpiceInt,
4299        center: SpiceInt,
4300        frame: *mut ConstSpiceChar,
4301        first: SpiceDouble,
4302        last: SpiceDouble,
4303        segid: *mut ConstSpiceChar,
4304        intlen: SpiceDouble,
4305        n: SpiceInt,
4306        polydg: SpiceInt,
4307        cdata: *mut ConstSpiceDouble,
4308        dscale: SpiceDouble,
4309        tscale: SpiceDouble,
4310        initjd: SpiceDouble,
4311        initfr: SpiceDouble,
4312    );
4313}
4314extern "C" {
4315    pub fn srfrec_c(body: SpiceInt, lon: SpiceDouble, lat: SpiceDouble, rectan: *mut SpiceDouble);
4316}
4317extern "C" {
4318    pub fn srfc2s_c(
4319        code: SpiceInt,
4320        bodyid: SpiceInt,
4321        srflen: SpiceInt,
4322        srfstr: *mut SpiceChar,
4323        isname: *mut SpiceBoolean,
4324    );
4325}
4326extern "C" {
4327    pub fn srfcss_c(
4328        code: SpiceInt,
4329        bodstr: *mut ConstSpiceChar,
4330        srflen: SpiceInt,
4331        srfstr: *mut SpiceChar,
4332        isname: *mut SpiceBoolean,
4333    );
4334}
4335extern "C" {
4336    pub fn srfnrm_c(
4337        method: *mut ConstSpiceChar,
4338        target: *mut ConstSpiceChar,
4339        et: SpiceDouble,
4340        fixref: *mut ConstSpiceChar,
4341        npts: SpiceInt,
4342        srfpts: *mut [ConstSpiceDouble; 3usize],
4343        normls: *mut [SpiceDouble; 3usize],
4344    );
4345}
4346extern "C" {
4347    pub fn srfs2c_c(
4348        srfstr: *mut ConstSpiceChar,
4349        bodstr: *mut ConstSpiceChar,
4350        code: *mut SpiceInt,
4351        found: *mut SpiceBoolean,
4352    );
4353}
4354extern "C" {
4355    pub fn srfscc_c(
4356        surfce: *mut ConstSpiceChar,
4357        bodyid: SpiceInt,
4358        surfid: *mut SpiceInt,
4359        found: *mut SpiceBoolean,
4360    );
4361}
4362extern "C" {
4363    pub fn srfxpt_c(
4364        method: *mut ConstSpiceChar,
4365        target: *mut ConstSpiceChar,
4366        et: SpiceDouble,
4367        abcorr: *mut ConstSpiceChar,
4368        obsrvr: *mut ConstSpiceChar,
4369        dref: *mut ConstSpiceChar,
4370        dvec: *mut ConstSpiceDouble,
4371        spoint: *mut SpiceDouble,
4372        dist: *mut SpiceDouble,
4373        trgepc: *mut SpiceDouble,
4374        obspos: *mut SpiceDouble,
4375        found: *mut SpiceBoolean,
4376    );
4377}
4378extern "C" {
4379    pub fn ssize_c(size: SpiceInt, cell: *mut SpiceCell);
4380}
4381extern "C" {
4382    pub fn stelab_c(
4383        pobj: *mut ConstSpiceDouble,
4384        vobs: *mut ConstSpiceDouble,
4385        appobj: *mut SpiceDouble,
4386    );
4387}
4388extern "C" {
4389    pub fn stlabx_c(
4390        pobj: *mut ConstSpiceDouble,
4391        vobs: *mut ConstSpiceDouble,
4392        corpos: *mut SpiceDouble,
4393    );
4394}
4395extern "C" {
4396    pub fn stpool_c(
4397        item: *mut ConstSpiceChar,
4398        nth: SpiceInt,
4399        contin: *mut ConstSpiceChar,
4400        lenout: SpiceInt,
4401        string: *mut SpiceChar,
4402        size: *mut SpiceInt,
4403        found: *mut SpiceBoolean,
4404    );
4405}
4406extern "C" {
4407    pub fn str2et_c(date: *mut ConstSpiceChar, et: *mut SpiceDouble);
4408}
4409extern "C" {
4410    pub fn subpnt_c(
4411        method: *mut ConstSpiceChar,
4412        target: *mut ConstSpiceChar,
4413        et: SpiceDouble,
4414        fixref: *mut ConstSpiceChar,
4415        abcorr: *mut ConstSpiceChar,
4416        obsrvr: *mut ConstSpiceChar,
4417        spoint: *mut SpiceDouble,
4418        trgepc: *mut SpiceDouble,
4419        srfvec: *mut SpiceDouble,
4420    );
4421}
4422extern "C" {
4423    pub fn subpt_c(
4424        method: *mut ConstSpiceChar,
4425        target: *mut ConstSpiceChar,
4426        et: SpiceDouble,
4427        abcorr: *mut ConstSpiceChar,
4428        obsrvr: *mut ConstSpiceChar,
4429        spoint: *mut SpiceDouble,
4430        alt: *mut SpiceDouble,
4431    );
4432}
4433extern "C" {
4434    pub fn subpt_pl02(
4435        handle: SpiceInt,
4436        dladsc: *mut ConstSpiceDLADescr,
4437        method: *mut ConstSpiceChar,
4438        target: *mut ConstSpiceChar,
4439        et: SpiceDouble,
4440        abcorr: *mut ConstSpiceChar,
4441        obsrvr: *mut ConstSpiceChar,
4442        spoint: *mut SpiceDouble,
4443        alt: *mut SpiceDouble,
4444        plateID: *mut SpiceInt,
4445    );
4446}
4447extern "C" {
4448    pub fn subslr_c(
4449        method: *mut ConstSpiceChar,
4450        target: *mut ConstSpiceChar,
4451        et: SpiceDouble,
4452        fixref: *mut ConstSpiceChar,
4453        abcorr: *mut ConstSpiceChar,
4454        obsrvr: *mut ConstSpiceChar,
4455        spoint: *mut SpiceDouble,
4456        trgepc: *mut SpiceDouble,
4457        srfvec: *mut SpiceDouble,
4458    );
4459}
4460extern "C" {
4461    pub fn subsol_c(
4462        method: *mut ConstSpiceChar,
4463        target: *mut ConstSpiceChar,
4464        et: SpiceDouble,
4465        abcorr: *mut ConstSpiceChar,
4466        obsrvr: *mut ConstSpiceChar,
4467        spoint: *mut SpiceDouble,
4468    );
4469}
4470extern "C" {
4471    pub fn subsol_pl02(
4472        handle: SpiceInt,
4473        dladsc: *mut ConstSpiceDLADescr,
4474        method: *mut ConstSpiceChar,
4475        target: *mut ConstSpiceChar,
4476        et: SpiceDouble,
4477        abcorr: *mut ConstSpiceChar,
4478        obsrvr: *mut ConstSpiceChar,
4479        spoint: *mut SpiceDouble,
4480        dist: *mut SpiceDouble,
4481        plateID: *mut SpiceInt,
4482    );
4483}
4484extern "C" {
4485    pub fn sumad_c(array: *mut ConstSpiceDouble, n: SpiceInt) -> SpiceDouble;
4486}
4487extern "C" {
4488    pub fn sumai_c(array: *mut ConstSpiceInt, n: SpiceInt) -> SpiceInt;
4489}
4490extern "C" {
4491    pub fn surfnm_c(
4492        a: SpiceDouble,
4493        b: SpiceDouble,
4494        c: SpiceDouble,
4495        point: *mut ConstSpiceDouble,
4496        normal: *mut SpiceDouble,
4497    );
4498}
4499extern "C" {
4500    pub fn surfpt_c(
4501        positn: *mut ConstSpiceDouble,
4502        u: *mut ConstSpiceDouble,
4503        a: SpiceDouble,
4504        b: SpiceDouble,
4505        c: SpiceDouble,
4506        point: *mut SpiceDouble,
4507        found: *mut SpiceBoolean,
4508    );
4509}
4510extern "C" {
4511    pub fn surfpv_c(
4512        stvrtx: *mut ConstSpiceDouble,
4513        stdir: *mut ConstSpiceDouble,
4514        a: SpiceDouble,
4515        b: SpiceDouble,
4516        c: SpiceDouble,
4517        stx: *mut SpiceDouble,
4518        found: *mut SpiceBoolean,
4519    );
4520}
4521extern "C" {
4522    pub fn swpool_c(
4523        agent: *mut ConstSpiceChar,
4524        nnames: SpiceInt,
4525        lenvals: SpiceInt,
4526        names: *const ::std::os::raw::c_void,
4527    );
4528}
4529extern "C" {
4530    pub fn sxform_c(
4531        from: *mut ConstSpiceChar,
4532        to: *mut ConstSpiceChar,
4533        et: SpiceDouble,
4534        xform: *mut [SpiceDouble; 6usize],
4535    );
4536}
4537extern "C" {
4538    pub fn szpool_c(name: *mut ConstSpiceChar, n: *mut SpiceInt, found: *mut SpiceBoolean);
4539}
4540extern "C" {
4541    pub fn tangpt_c(
4542        method: *mut ConstSpiceChar,
4543        target: *mut ConstSpiceChar,
4544        et: SpiceDouble,
4545        fixref: *mut ConstSpiceChar,
4546        abcorr: *mut ConstSpiceChar,
4547        corloc: *mut ConstSpiceChar,
4548        obsrvr: *mut ConstSpiceChar,
4549        dref: *mut ConstSpiceChar,
4550        dvec: *mut ConstSpiceDouble,
4551        tanpt: *mut SpiceDouble,
4552        alt: *mut SpiceDouble,
4553        range: *mut SpiceDouble,
4554        srfpt: *mut SpiceDouble,
4555        trgepc: *mut SpiceDouble,
4556        srfvec: *mut SpiceDouble,
4557    );
4558}
4559extern "C" {
4560    pub fn term_pl02(
4561        handle: SpiceInt,
4562        dladsc: *mut ConstSpiceDLADescr,
4563        trmtyp: *mut ConstSpiceChar,
4564        source: *mut ConstSpiceChar,
4565        target: *mut ConstSpiceChar,
4566        et: SpiceDouble,
4567        fixref: *mut ConstSpiceChar,
4568        abcorr: *mut ConstSpiceChar,
4569        obsrvr: *mut ConstSpiceChar,
4570        npoints: SpiceInt,
4571        trgepc: *mut SpiceDouble,
4572        obspos: *mut SpiceDouble,
4573        trmpts: *mut [SpiceDouble; 3usize],
4574        plateIDs: *mut SpiceInt,
4575    );
4576}
4577extern "C" {
4578    pub fn termpt_c(
4579        method: *mut ConstSpiceChar,
4580        ilusrc: *mut ConstSpiceChar,
4581        target: *mut ConstSpiceChar,
4582        et: SpiceDouble,
4583        fixref: *mut ConstSpiceChar,
4584        abcorr: *mut ConstSpiceChar,
4585        corloc: *mut ConstSpiceChar,
4586        obsrvr: *mut ConstSpiceChar,
4587        refvec: *mut ConstSpiceDouble,
4588        rolstp: SpiceDouble,
4589        ncuts: SpiceInt,
4590        schstp: SpiceDouble,
4591        soltol: SpiceDouble,
4592        maxn: SpiceInt,
4593        npts: *mut SpiceInt,
4594        points: *mut [SpiceDouble; 3usize],
4595        epochs: *mut SpiceDouble,
4596        tangts: *mut [SpiceDouble; 3usize],
4597    );
4598}
4599extern "C" {
4600    pub fn timdef_c(
4601        action: *mut ConstSpiceChar,
4602        item: *mut ConstSpiceChar,
4603        lenout: SpiceInt,
4604        value: *mut SpiceChar,
4605    );
4606}
4607extern "C" {
4608    pub fn timout_c(
4609        et: SpiceDouble,
4610        pictur: *mut ConstSpiceChar,
4611        lenout: SpiceInt,
4612        output: *mut SpiceChar,
4613    );
4614}
4615extern "C" {
4616    pub fn tipbod_c(
4617        ref_: *mut ConstSpiceChar,
4618        body: SpiceInt,
4619        et: SpiceDouble,
4620        tipm: *mut [SpiceDouble; 3usize],
4621    );
4622}
4623extern "C" {
4624    pub fn tisbod_c(
4625        ref_: *mut ConstSpiceChar,
4626        body: SpiceInt,
4627        et: SpiceDouble,
4628        tsipm: *mut [SpiceDouble; 6usize],
4629    );
4630}
4631extern "C" {
4632    pub fn tkfram_c(
4633        frcode: SpiceInt,
4634        rot: *mut [SpiceDouble; 3usize],
4635        frame: *mut SpiceInt,
4636        found: *mut SpiceBoolean,
4637    );
4638}
4639extern "C" {
4640    pub fn tkvrsn_c(item: *mut ConstSpiceChar) -> *mut ConstSpiceChar;
4641}
4642extern "C" {
4643    pub fn tparch_c(type_: *mut ConstSpiceChar);
4644}
4645extern "C" {
4646    pub fn tparse_c(
4647        string: *mut ConstSpiceChar,
4648        lenout: SpiceInt,
4649        sp2000: *mut SpiceDouble,
4650        errmsg: *mut SpiceChar,
4651    );
4652}
4653extern "C" {
4654    pub fn tpictr_c(
4655        sample: *mut ConstSpiceChar,
4656        lenpictur: SpiceInt,
4657        lenerror: SpiceInt,
4658        pictur: *mut SpiceChar,
4659        ok: *mut SpiceBoolean,
4660        error: *mut SpiceChar,
4661    );
4662}
4663extern "C" {
4664    pub fn trace_c(matrix: *mut [ConstSpiceDouble; 3usize]) -> SpiceDouble;
4665}
4666extern "C" {
4667    pub fn trcdep_c(depth: *mut SpiceInt);
4668}
4669extern "C" {
4670    pub fn trcnam_c(index: SpiceInt, namelen: SpiceInt, name: *mut SpiceChar);
4671}
4672extern "C" {
4673    pub fn trcoff_c();
4674}
4675extern "C" {
4676    pub fn trgsep_c(
4677        et: SpiceDouble,
4678        targ1: *mut ConstSpiceChar,
4679        shape1: *mut ConstSpiceChar,
4680        frame1: *mut ConstSpiceChar,
4681        targ2: *mut ConstSpiceChar,
4682        shape2: *mut ConstSpiceChar,
4683        frame2: *mut ConstSpiceChar,
4684        obsrvr: *mut ConstSpiceChar,
4685        abcorr: *mut ConstSpiceChar,
4686    ) -> SpiceDouble;
4687}
4688extern "C" {
4689    pub fn tsetyr_c(year: SpiceInt);
4690}
4691extern "C" {
4692    pub fn twopi_c() -> SpiceDouble;
4693}
4694extern "C" {
4695    pub fn twovec_c(
4696        axdef: *mut ConstSpiceDouble,
4697        indexa: SpiceInt,
4698        plndef: *mut ConstSpiceDouble,
4699        indexp: SpiceInt,
4700        mout: *mut [SpiceDouble; 3usize],
4701    );
4702}
4703extern "C" {
4704    pub fn twovxf_c(
4705        axdef: *mut ConstSpiceDouble,
4706        indexa: SpiceInt,
4707        plndef: *mut ConstSpiceDouble,
4708        indexp: SpiceInt,
4709        xform: *mut [SpiceDouble; 6usize],
4710    );
4711}
4712extern "C" {
4713    pub fn tyear_c() -> SpiceDouble;
4714}
4715extern "C" {
4716    pub fn ucase_c(in_: *mut SpiceChar, lenout: SpiceInt, out: *mut SpiceChar);
4717}
4718extern "C" {
4719    pub fn ucrss_c(v1: *mut ConstSpiceDouble, v2: *mut ConstSpiceDouble, vout: *mut SpiceDouble);
4720}
4721extern "C" {
4722    pub fn uddc_c(
4723        udfunc: ::std::option::Option<
4724            unsafe extern "C" fn(x: SpiceDouble, value: *mut SpiceDouble),
4725        >,
4726        x: SpiceDouble,
4727        dx: SpiceDouble,
4728        isdecr: *mut SpiceBoolean,
4729    );
4730}
4731extern "C" {
4732    pub fn uddf_c(
4733        udfunc: ::std::option::Option<
4734            unsafe extern "C" fn(x: SpiceDouble, value: *mut SpiceDouble),
4735        >,
4736        x: SpiceDouble,
4737        dx: SpiceDouble,
4738        deriv: *mut SpiceDouble,
4739    );
4740}
4741extern "C" {
4742    pub fn udf_c(x: SpiceDouble, value: *mut SpiceDouble);
4743}
4744extern "C" {
4745    pub fn union_c(a: *mut SpiceCell, b: *mut SpiceCell, c: *mut SpiceCell);
4746}
4747extern "C" {
4748    pub fn unitim_c(
4749        epoch: SpiceDouble,
4750        insys: *mut ConstSpiceChar,
4751        outsys: *mut ConstSpiceChar,
4752    ) -> SpiceDouble;
4753}
4754extern "C" {
4755    pub fn unload_c(file: *mut ConstSpiceChar);
4756}
4757extern "C" {
4758    pub fn unorm_c(v1: *mut ConstSpiceDouble, vout: *mut SpiceDouble, vmag: *mut SpiceDouble);
4759}
4760extern "C" {
4761    pub fn unormg_c(
4762        v1: *mut ConstSpiceDouble,
4763        ndim: SpiceInt,
4764        vout: *mut SpiceDouble,
4765        vmag: *mut SpiceDouble,
4766    );
4767}
4768extern "C" {
4769    pub fn utc2et_c(utcstr: *mut ConstSpiceChar, et: *mut SpiceDouble);
4770}
4771extern "C" {
4772    pub fn vadd_c(v1: *mut ConstSpiceDouble, v2: *mut ConstSpiceDouble, vout: *mut SpiceDouble);
4773}
4774extern "C" {
4775    pub fn vaddg_c(
4776        v1: *mut ConstSpiceDouble,
4777        v2: *mut ConstSpiceDouble,
4778        ndim: SpiceInt,
4779        vout: *mut SpiceDouble,
4780    );
4781}
4782extern "C" {
4783    pub fn valid_c(size: SpiceInt, n: SpiceInt, a: *mut SpiceCell);
4784}
4785extern "C" {
4786    pub fn vcrss_c(v1: *mut ConstSpiceDouble, v2: *mut ConstSpiceDouble, vout: *mut SpiceDouble);
4787}
4788extern "C" {
4789    pub fn vdist_c(v1: *mut ConstSpiceDouble, v2: *mut ConstSpiceDouble) -> SpiceDouble;
4790}
4791extern "C" {
4792    pub fn vdistg_c(
4793        v1: *mut ConstSpiceDouble,
4794        v2: *mut ConstSpiceDouble,
4795        ndim: SpiceInt,
4796    ) -> SpiceDouble;
4797}
4798extern "C" {
4799    pub fn vdot_c(v1: *mut ConstSpiceDouble, v2: *mut ConstSpiceDouble) -> SpiceDouble;
4800}
4801extern "C" {
4802    pub fn vdotg_c(
4803        v1: *mut ConstSpiceDouble,
4804        v2: *mut ConstSpiceDouble,
4805        ndim: SpiceInt,
4806    ) -> SpiceDouble;
4807}
4808extern "C" {
4809    pub fn vequ_c(vin: *mut ConstSpiceDouble, vout: *mut SpiceDouble);
4810}
4811extern "C" {
4812    pub fn vequg_c(vin: *mut ConstSpiceDouble, ndim: SpiceInt, vout: *mut SpiceDouble);
4813}
4814extern "C" {
4815    pub fn vhat_c(v1: *mut ConstSpiceDouble, vout: *mut SpiceDouble);
4816}
4817extern "C" {
4818    pub fn vhatg_c(v1: *mut ConstSpiceDouble, ndim: SpiceInt, vout: *mut SpiceDouble);
4819}
4820extern "C" {
4821    pub fn vlcom_c(
4822        a: SpiceDouble,
4823        v1: *mut ConstSpiceDouble,
4824        b: SpiceDouble,
4825        v2: *mut ConstSpiceDouble,
4826        sum: *mut SpiceDouble,
4827    );
4828}
4829extern "C" {
4830    pub fn vlcom3_c(
4831        a: SpiceDouble,
4832        v1: *mut ConstSpiceDouble,
4833        b: SpiceDouble,
4834        v2: *mut ConstSpiceDouble,
4835        c: SpiceDouble,
4836        v3: *mut ConstSpiceDouble,
4837        sum: *mut SpiceDouble,
4838    );
4839}
4840extern "C" {
4841    pub fn vlcomg_c(
4842        n: SpiceInt,
4843        a: SpiceDouble,
4844        v1: *mut ConstSpiceDouble,
4845        b: SpiceDouble,
4846        v2: *mut ConstSpiceDouble,
4847        sum: *mut SpiceDouble,
4848    );
4849}
4850extern "C" {
4851    pub fn vminug_c(vin: *mut ConstSpiceDouble, ndim: SpiceInt, vout: *mut SpiceDouble);
4852}
4853extern "C" {
4854    pub fn vminus_c(v1: *mut ConstSpiceDouble, vout: *mut SpiceDouble);
4855}
4856extern "C" {
4857    pub fn vnorm_c(v1: *mut ConstSpiceDouble) -> SpiceDouble;
4858}
4859extern "C" {
4860    pub fn vnormg_c(v1: *mut ConstSpiceDouble, ndim: SpiceInt) -> SpiceDouble;
4861}
4862extern "C" {
4863    pub fn vpack_c(x: SpiceDouble, y: SpiceDouble, z: SpiceDouble, v: *mut SpiceDouble);
4864}
4865extern "C" {
4866    pub fn vperp_c(a: *mut ConstSpiceDouble, b: *mut ConstSpiceDouble, p: *mut SpiceDouble);
4867}
4868extern "C" {
4869    pub fn vprjp_c(vin: *mut ConstSpiceDouble, plane: *mut ConstSpicePlane, vout: *mut SpiceDouble);
4870}
4871extern "C" {
4872    pub fn vprjpi_c(
4873        vin: *mut ConstSpiceDouble,
4874        projpl: *mut ConstSpicePlane,
4875        invpl: *mut ConstSpicePlane,
4876        vout: *mut SpiceDouble,
4877        found: *mut SpiceBoolean,
4878    );
4879}
4880extern "C" {
4881    pub fn vprojg_c(
4882        a: *mut ConstSpiceDouble,
4883        b: *mut ConstSpiceDouble,
4884        ndim: SpiceInt,
4885        p: *mut SpiceDouble,
4886    );
4887}
4888extern "C" {
4889    pub fn vproj_c(a: *mut ConstSpiceDouble, b: *mut ConstSpiceDouble, p: *mut SpiceDouble);
4890}
4891extern "C" {
4892    pub fn vrel_c(v1: *mut ConstSpiceDouble, v2: *mut ConstSpiceDouble) -> SpiceDouble;
4893}
4894extern "C" {
4895    pub fn vrelg_c(
4896        v1: *mut ConstSpiceDouble,
4897        v2: *mut ConstSpiceDouble,
4898        ndim: SpiceInt,
4899    ) -> SpiceDouble;
4900}
4901extern "C" {
4902    pub fn vrotv_c(
4903        v: *mut ConstSpiceDouble,
4904        axis: *mut ConstSpiceDouble,
4905        theta: SpiceDouble,
4906        r: *mut SpiceDouble,
4907    );
4908}
4909extern "C" {
4910    pub fn vscl_c(s: SpiceDouble, v1: *mut ConstSpiceDouble, vout: *mut SpiceDouble);
4911}
4912extern "C" {
4913    pub fn vsclg_c(
4914        s: SpiceDouble,
4915        v1: *mut ConstSpiceDouble,
4916        ndim: SpiceInt,
4917        vout: *mut SpiceDouble,
4918    );
4919}
4920extern "C" {
4921    pub fn vsep_c(v1: *mut ConstSpiceDouble, v2: *mut ConstSpiceDouble) -> SpiceDouble;
4922}
4923extern "C" {
4924    pub fn vsub_c(v1: *mut ConstSpiceDouble, v2: *mut ConstSpiceDouble, vout: *mut SpiceDouble);
4925}
4926extern "C" {
4927    pub fn vsubg_c(
4928        v1: *mut ConstSpiceDouble,
4929        v2: *mut ConstSpiceDouble,
4930        ndim: SpiceInt,
4931        vout: *mut SpiceDouble,
4932    );
4933}
4934extern "C" {
4935    pub fn vsepg_c(
4936        v1: *mut ConstSpiceDouble,
4937        v2: *mut ConstSpiceDouble,
4938        ndim: SpiceInt,
4939    ) -> SpiceDouble;
4940}
4941extern "C" {
4942    pub fn vtmv_c(
4943        v1: *mut ConstSpiceDouble,
4944        matrix: *mut [ConstSpiceDouble; 3usize],
4945        v2: *mut ConstSpiceDouble,
4946    ) -> SpiceDouble;
4947}
4948extern "C" {
4949    pub fn vtmvg_c(
4950        v1: *const ::std::os::raw::c_void,
4951        matrix: *const ::std::os::raw::c_void,
4952        v2: *const ::std::os::raw::c_void,
4953        nrow: SpiceInt,
4954        ncol: SpiceInt,
4955    ) -> SpiceDouble;
4956}
4957extern "C" {
4958    pub fn vupack_c(
4959        v: *mut ConstSpiceDouble,
4960        x: *mut SpiceDouble,
4961        y: *mut SpiceDouble,
4962        z: *mut SpiceDouble,
4963    );
4964}
4965extern "C" {
4966    pub fn vzero_c(v: *mut ConstSpiceDouble) -> SpiceBoolean;
4967}
4968extern "C" {
4969    pub fn vzerog_c(v: *mut ConstSpiceDouble, ndim: SpiceInt) -> SpiceBoolean;
4970}
4971extern "C" {
4972    pub fn wncard_c(window: *mut SpiceCell) -> SpiceInt;
4973}
4974extern "C" {
4975    pub fn wncomd_c(
4976        left: SpiceDouble,
4977        right: SpiceDouble,
4978        window: *mut SpiceCell,
4979        result: *mut SpiceCell,
4980    );
4981}
4982extern "C" {
4983    pub fn wncond_c(left: SpiceDouble, right: SpiceDouble, window: *mut SpiceCell);
4984}
4985extern "C" {
4986    pub fn wndifd_c(a: *mut SpiceCell, b: *mut SpiceCell, c: *mut SpiceCell);
4987}
4988extern "C" {
4989    pub fn wnelmd_c(point: SpiceDouble, window: *mut SpiceCell) -> SpiceBoolean;
4990}
4991extern "C" {
4992    pub fn wnexpd_c(left: SpiceDouble, right: SpiceDouble, window: *mut SpiceCell);
4993}
4994extern "C" {
4995    pub fn wnextd_c(side: SpiceChar, window: *mut SpiceCell);
4996}
4997extern "C" {
4998    pub fn wnfetd_c(
4999        window: *mut SpiceCell,
5000        n: SpiceInt,
5001        left: *mut SpiceDouble,
5002        right: *mut SpiceDouble,
5003    );
5004}
5005extern "C" {
5006    pub fn wnfild_c(sml: SpiceDouble, window: *mut SpiceCell);
5007}
5008extern "C" {
5009    pub fn wnfltd_c(sml: SpiceDouble, window: *mut SpiceCell);
5010}
5011extern "C" {
5012    pub fn wnincd_c(left: SpiceDouble, right: SpiceDouble, window: *mut SpiceCell) -> SpiceBoolean;
5013}
5014extern "C" {
5015    pub fn wninsd_c(left: SpiceDouble, right: SpiceDouble, window: *mut SpiceCell);
5016}
5017extern "C" {
5018    pub fn wnintd_c(a: *mut SpiceCell, b: *mut SpiceCell, c: *mut SpiceCell);
5019}
5020extern "C" {
5021    pub fn wnreld_c(a: *mut SpiceCell, op: *mut ConstSpiceChar, b: *mut SpiceCell) -> SpiceBoolean;
5022}
5023extern "C" {
5024    pub fn wnsumd_c(
5025        window: *mut SpiceCell,
5026        meas: *mut SpiceDouble,
5027        avg: *mut SpiceDouble,
5028        stddev: *mut SpiceDouble,
5029        shortest: *mut SpiceInt,
5030        longest: *mut SpiceInt,
5031    );
5032}
5033extern "C" {
5034    pub fn wnunid_c(a: *mut SpiceCell, b: *mut SpiceCell, c: *mut SpiceCell);
5035}
5036extern "C" {
5037    pub fn wnvald_c(size: SpiceInt, n: SpiceInt, window: *mut SpiceCell);
5038}
5039extern "C" {
5040    pub fn xf2eul_c(
5041        xform: *mut [ConstSpiceDouble; 6usize],
5042        axisa: SpiceInt,
5043        axisb: SpiceInt,
5044        axisc: SpiceInt,
5045        eulang: *mut SpiceDouble,
5046        unique: *mut SpiceBoolean,
5047    );
5048}
5049extern "C" {
5050    pub fn xf2rav_c(
5051        xform: *mut [ConstSpiceDouble; 6usize],
5052        rot: *mut [SpiceDouble; 3usize],
5053        av: *mut SpiceDouble,
5054    );
5055}
5056extern "C" {
5057    pub fn xfmsta_c(
5058        input_state: *mut ConstSpiceDouble,
5059        input_coord_sys: *mut ConstSpiceChar,
5060        output_coord_sys: *mut ConstSpiceChar,
5061        body: *mut ConstSpiceChar,
5062        output_state: *mut SpiceDouble,
5063    );
5064}
5065extern "C" {
5066    pub fn xpose_c(m1: *mut [ConstSpiceDouble; 3usize], mout: *mut [SpiceDouble; 3usize]);
5067}
5068extern "C" {
5069    pub fn xpose6_c(m1: *mut [ConstSpiceDouble; 6usize], mout: *mut [SpiceDouble; 6usize]);
5070}
5071extern "C" {
5072    pub fn xposeg_c(
5073        matrix: *const ::std::os::raw::c_void,
5074        nrow: SpiceInt,
5075        ncol: SpiceInt,
5076        xposem: *mut ::std::os::raw::c_void,
5077    );
5078}
5079extern "C" {
5080    pub fn zzgetcml_c(argc: *mut SpiceInt, argv: *mut *mut *mut SpiceChar, init: SpiceBoolean);
5081}
5082extern "C" {
5083    pub fn zzgfgeth_c() -> SpiceBoolean;
5084}
5085extern "C" {
5086    pub fn zzgfsavh_c(status: SpiceBoolean);
5087}
5088extern "C" {
5089    pub fn zzsynccl_c(xdir: SpiceTransDir, cell: *mut SpiceCell);
5090}