sofa_sys/
sofa_c.rs

1/* automatically generated by rust-bindgen 0.56.0 */
2
3#[repr(C)]
4#[derive(Debug, Copy, Clone)]
5pub struct iauASTROM {
6    pub pmt: f64,
7    pub eb: [f64; 3usize],
8    pub eh: [f64; 3usize],
9    pub em: f64,
10    pub v: [f64; 3usize],
11    pub bm1: f64,
12    pub bpn: [[f64; 3usize]; 3usize],
13    pub along: f64,
14    pub phi: f64,
15    pub xpl: f64,
16    pub ypl: f64,
17    pub sphi: f64,
18    pub cphi: f64,
19    pub diurab: f64,
20    pub eral: f64,
21    pub refa: f64,
22    pub refb: f64,
23}
24#[test]
25fn bindgen_test_layout_iauASTROM() {
26    assert_eq!(
27        ::std::mem::size_of::<iauASTROM>(),
28        248usize,
29        concat!("Size of: ", stringify!(iauASTROM))
30    );
31    assert_eq!(
32        ::std::mem::align_of::<iauASTROM>(),
33        8usize,
34        concat!("Alignment of ", stringify!(iauASTROM))
35    );
36    assert_eq!(
37        unsafe { &(*(::std::ptr::null::<iauASTROM>())).pmt as *const _ as usize },
38        0usize,
39        concat!(
40            "Offset of field: ",
41            stringify!(iauASTROM),
42            "::",
43            stringify!(pmt)
44        )
45    );
46    assert_eq!(
47        unsafe { &(*(::std::ptr::null::<iauASTROM>())).eb as *const _ as usize },
48        8usize,
49        concat!(
50            "Offset of field: ",
51            stringify!(iauASTROM),
52            "::",
53            stringify!(eb)
54        )
55    );
56    assert_eq!(
57        unsafe { &(*(::std::ptr::null::<iauASTROM>())).eh as *const _ as usize },
58        32usize,
59        concat!(
60            "Offset of field: ",
61            stringify!(iauASTROM),
62            "::",
63            stringify!(eh)
64        )
65    );
66    assert_eq!(
67        unsafe { &(*(::std::ptr::null::<iauASTROM>())).em as *const _ as usize },
68        56usize,
69        concat!(
70            "Offset of field: ",
71            stringify!(iauASTROM),
72            "::",
73            stringify!(em)
74        )
75    );
76    assert_eq!(
77        unsafe { &(*(::std::ptr::null::<iauASTROM>())).v as *const _ as usize },
78        64usize,
79        concat!(
80            "Offset of field: ",
81            stringify!(iauASTROM),
82            "::",
83            stringify!(v)
84        )
85    );
86    assert_eq!(
87        unsafe { &(*(::std::ptr::null::<iauASTROM>())).bm1 as *const _ as usize },
88        88usize,
89        concat!(
90            "Offset of field: ",
91            stringify!(iauASTROM),
92            "::",
93            stringify!(bm1)
94        )
95    );
96    assert_eq!(
97        unsafe { &(*(::std::ptr::null::<iauASTROM>())).bpn as *const _ as usize },
98        96usize,
99        concat!(
100            "Offset of field: ",
101            stringify!(iauASTROM),
102            "::",
103            stringify!(bpn)
104        )
105    );
106    assert_eq!(
107        unsafe { &(*(::std::ptr::null::<iauASTROM>())).along as *const _ as usize },
108        168usize,
109        concat!(
110            "Offset of field: ",
111            stringify!(iauASTROM),
112            "::",
113            stringify!(along)
114        )
115    );
116    assert_eq!(
117        unsafe { &(*(::std::ptr::null::<iauASTROM>())).phi as *const _ as usize },
118        176usize,
119        concat!(
120            "Offset of field: ",
121            stringify!(iauASTROM),
122            "::",
123            stringify!(phi)
124        )
125    );
126    assert_eq!(
127        unsafe { &(*(::std::ptr::null::<iauASTROM>())).xpl as *const _ as usize },
128        184usize,
129        concat!(
130            "Offset of field: ",
131            stringify!(iauASTROM),
132            "::",
133            stringify!(xpl)
134        )
135    );
136    assert_eq!(
137        unsafe { &(*(::std::ptr::null::<iauASTROM>())).ypl as *const _ as usize },
138        192usize,
139        concat!(
140            "Offset of field: ",
141            stringify!(iauASTROM),
142            "::",
143            stringify!(ypl)
144        )
145    );
146    assert_eq!(
147        unsafe { &(*(::std::ptr::null::<iauASTROM>())).sphi as *const _ as usize },
148        200usize,
149        concat!(
150            "Offset of field: ",
151            stringify!(iauASTROM),
152            "::",
153            stringify!(sphi)
154        )
155    );
156    assert_eq!(
157        unsafe { &(*(::std::ptr::null::<iauASTROM>())).cphi as *const _ as usize },
158        208usize,
159        concat!(
160            "Offset of field: ",
161            stringify!(iauASTROM),
162            "::",
163            stringify!(cphi)
164        )
165    );
166    assert_eq!(
167        unsafe { &(*(::std::ptr::null::<iauASTROM>())).diurab as *const _ as usize },
168        216usize,
169        concat!(
170            "Offset of field: ",
171            stringify!(iauASTROM),
172            "::",
173            stringify!(diurab)
174        )
175    );
176    assert_eq!(
177        unsafe { &(*(::std::ptr::null::<iauASTROM>())).eral as *const _ as usize },
178        224usize,
179        concat!(
180            "Offset of field: ",
181            stringify!(iauASTROM),
182            "::",
183            stringify!(eral)
184        )
185    );
186    assert_eq!(
187        unsafe { &(*(::std::ptr::null::<iauASTROM>())).refa as *const _ as usize },
188        232usize,
189        concat!(
190            "Offset of field: ",
191            stringify!(iauASTROM),
192            "::",
193            stringify!(refa)
194        )
195    );
196    assert_eq!(
197        unsafe { &(*(::std::ptr::null::<iauASTROM>())).refb as *const _ as usize },
198        240usize,
199        concat!(
200            "Offset of field: ",
201            stringify!(iauASTROM),
202            "::",
203            stringify!(refb)
204        )
205    );
206}
207#[repr(C)]
208#[derive(Debug, Copy, Clone)]
209pub struct iauLDBODY {
210    pub bm: f64,
211    pub dl: f64,
212    pub pv: [[f64; 3usize]; 2usize],
213}
214#[test]
215fn bindgen_test_layout_iauLDBODY() {
216    assert_eq!(
217        ::std::mem::size_of::<iauLDBODY>(),
218        64usize,
219        concat!("Size of: ", stringify!(iauLDBODY))
220    );
221    assert_eq!(
222        ::std::mem::align_of::<iauLDBODY>(),
223        8usize,
224        concat!("Alignment of ", stringify!(iauLDBODY))
225    );
226    assert_eq!(
227        unsafe { &(*(::std::ptr::null::<iauLDBODY>())).bm as *const _ as usize },
228        0usize,
229        concat!(
230            "Offset of field: ",
231            stringify!(iauLDBODY),
232            "::",
233            stringify!(bm)
234        )
235    );
236    assert_eq!(
237        unsafe { &(*(::std::ptr::null::<iauLDBODY>())).dl as *const _ as usize },
238        8usize,
239        concat!(
240            "Offset of field: ",
241            stringify!(iauLDBODY),
242            "::",
243            stringify!(dl)
244        )
245    );
246    assert_eq!(
247        unsafe { &(*(::std::ptr::null::<iauLDBODY>())).pv as *const _ as usize },
248        16usize,
249        concat!(
250            "Offset of field: ",
251            stringify!(iauLDBODY),
252            "::",
253            stringify!(pv)
254        )
255    );
256}
257extern "C" {
258    pub fn iauCal2jd(
259        iy: ::std::os::raw::c_int,
260        im: ::std::os::raw::c_int,
261        id: ::std::os::raw::c_int,
262        djm0: *mut f64,
263        djm: *mut f64,
264    ) -> ::std::os::raw::c_int;
265}
266extern "C" {
267    pub fn iauEpb(dj1: f64, dj2: f64) -> f64;
268}
269extern "C" {
270    pub fn iauEpb2jd(epb: f64, djm0: *mut f64, djm: *mut f64);
271}
272extern "C" {
273    pub fn iauEpj(dj1: f64, dj2: f64) -> f64;
274}
275extern "C" {
276    pub fn iauEpj2jd(epj: f64, djm0: *mut f64, djm: *mut f64);
277}
278extern "C" {
279    pub fn iauJd2cal(
280        dj1: f64,
281        dj2: f64,
282        iy: *mut ::std::os::raw::c_int,
283        im: *mut ::std::os::raw::c_int,
284        id: *mut ::std::os::raw::c_int,
285        fd: *mut f64,
286    ) -> ::std::os::raw::c_int;
287}
288extern "C" {
289    pub fn iauJdcalf(
290        ndp: ::std::os::raw::c_int,
291        dj1: f64,
292        dj2: f64,
293        iymdf: *mut ::std::os::raw::c_int,
294    ) -> ::std::os::raw::c_int;
295}
296extern "C" {
297    pub fn iauAb(pnat: *mut f64, v: *mut f64, s: f64, bm1: f64, ppr: *mut f64);
298}
299extern "C" {
300    pub fn iauApcg(
301        date1: f64,
302        date2: f64,
303        ebpv: *mut [f64; 3usize],
304        ehp: *mut f64,
305        astrom: *mut iauASTROM,
306    );
307}
308extern "C" {
309    pub fn iauApcg13(date1: f64, date2: f64, astrom: *mut iauASTROM);
310}
311extern "C" {
312    pub fn iauApci(
313        date1: f64,
314        date2: f64,
315        ebpv: *mut [f64; 3usize],
316        ehp: *mut f64,
317        x: f64,
318        y: f64,
319        s: f64,
320        astrom: *mut iauASTROM,
321    );
322}
323extern "C" {
324    pub fn iauApci13(date1: f64, date2: f64, astrom: *mut iauASTROM, eo: *mut f64);
325}
326extern "C" {
327    pub fn iauApco(
328        date1: f64,
329        date2: f64,
330        ebpv: *mut [f64; 3usize],
331        ehp: *mut f64,
332        x: f64,
333        y: f64,
334        s: f64,
335        theta: f64,
336        elong: f64,
337        phi: f64,
338        hm: f64,
339        xp: f64,
340        yp: f64,
341        sp: f64,
342        refa: f64,
343        refb: f64,
344        astrom: *mut iauASTROM,
345    );
346}
347extern "C" {
348    pub fn iauApco13(
349        utc1: f64,
350        utc2: f64,
351        dut1: f64,
352        elong: f64,
353        phi: f64,
354        hm: f64,
355        xp: f64,
356        yp: f64,
357        phpa: f64,
358        tc: f64,
359        rh: f64,
360        wl: f64,
361        astrom: *mut iauASTROM,
362        eo: *mut f64,
363    ) -> ::std::os::raw::c_int;
364}
365extern "C" {
366    pub fn iauApcs(
367        date1: f64,
368        date2: f64,
369        pv: *mut [f64; 3usize],
370        ebpv: *mut [f64; 3usize],
371        ehp: *mut f64,
372        astrom: *mut iauASTROM,
373    );
374}
375extern "C" {
376    pub fn iauApcs13(date1: f64, date2: f64, pv: *mut [f64; 3usize], astrom: *mut iauASTROM);
377}
378extern "C" {
379    pub fn iauAper(theta: f64, astrom: *mut iauASTROM);
380}
381extern "C" {
382    pub fn iauAper13(ut11: f64, ut12: f64, astrom: *mut iauASTROM);
383}
384extern "C" {
385    pub fn iauApio(
386        sp: f64,
387        theta: f64,
388        elong: f64,
389        phi: f64,
390        hm: f64,
391        xp: f64,
392        yp: f64,
393        refa: f64,
394        refb: f64,
395        astrom: *mut iauASTROM,
396    );
397}
398extern "C" {
399    pub fn iauApio13(
400        utc1: f64,
401        utc2: f64,
402        dut1: f64,
403        elong: f64,
404        phi: f64,
405        hm: f64,
406        xp: f64,
407        yp: f64,
408        phpa: f64,
409        tc: f64,
410        rh: f64,
411        wl: f64,
412        astrom: *mut iauASTROM,
413    ) -> ::std::os::raw::c_int;
414}
415extern "C" {
416    pub fn iauAtci13(
417        rc: f64,
418        dc: f64,
419        pr: f64,
420        pd: f64,
421        px: f64,
422        rv: f64,
423        date1: f64,
424        date2: f64,
425        ri: *mut f64,
426        di: *mut f64,
427        eo: *mut f64,
428    );
429}
430extern "C" {
431    pub fn iauAtciq(
432        rc: f64,
433        dc: f64,
434        pr: f64,
435        pd: f64,
436        px: f64,
437        rv: f64,
438        astrom: *mut iauASTROM,
439        ri: *mut f64,
440        di: *mut f64,
441    );
442}
443extern "C" {
444    pub fn iauAtciqn(
445        rc: f64,
446        dc: f64,
447        pr: f64,
448        pd: f64,
449        px: f64,
450        rv: f64,
451        astrom: *mut iauASTROM,
452        n: ::std::os::raw::c_int,
453        b: *mut iauLDBODY,
454        ri: *mut f64,
455        di: *mut f64,
456    );
457}
458extern "C" {
459    pub fn iauAtciqz(rc: f64, dc: f64, astrom: *mut iauASTROM, ri: *mut f64, di: *mut f64);
460}
461extern "C" {
462    pub fn iauAtco13(
463        rc: f64,
464        dc: f64,
465        pr: f64,
466        pd: f64,
467        px: f64,
468        rv: f64,
469        utc1: f64,
470        utc2: f64,
471        dut1: f64,
472        elong: f64,
473        phi: f64,
474        hm: f64,
475        xp: f64,
476        yp: f64,
477        phpa: f64,
478        tc: f64,
479        rh: f64,
480        wl: f64,
481        aob: *mut f64,
482        zob: *mut f64,
483        hob: *mut f64,
484        dob: *mut f64,
485        rob: *mut f64,
486        eo: *mut f64,
487    ) -> ::std::os::raw::c_int;
488}
489extern "C" {
490    pub fn iauAtic13(
491        ri: f64,
492        di: f64,
493        date1: f64,
494        date2: f64,
495        rc: *mut f64,
496        dc: *mut f64,
497        eo: *mut f64,
498    );
499}
500extern "C" {
501    pub fn iauAticq(ri: f64, di: f64, astrom: *mut iauASTROM, rc: *mut f64, dc: *mut f64);
502}
503extern "C" {
504    pub fn iauAticqn(
505        ri: f64,
506        di: f64,
507        astrom: *mut iauASTROM,
508        n: ::std::os::raw::c_int,
509        b: *mut iauLDBODY,
510        rc: *mut f64,
511        dc: *mut f64,
512    );
513}
514extern "C" {
515    pub fn iauAtio13(
516        ri: f64,
517        di: f64,
518        utc1: f64,
519        utc2: f64,
520        dut1: f64,
521        elong: f64,
522        phi: f64,
523        hm: f64,
524        xp: f64,
525        yp: f64,
526        phpa: f64,
527        tc: f64,
528        rh: f64,
529        wl: f64,
530        aob: *mut f64,
531        zob: *mut f64,
532        hob: *mut f64,
533        dob: *mut f64,
534        rob: *mut f64,
535    ) -> ::std::os::raw::c_int;
536}
537extern "C" {
538    pub fn iauAtioq(
539        ri: f64,
540        di: f64,
541        astrom: *mut iauASTROM,
542        aob: *mut f64,
543        zob: *mut f64,
544        hob: *mut f64,
545        dob: *mut f64,
546        rob: *mut f64,
547    );
548}
549extern "C" {
550    pub fn iauAtoc13(
551        type_: *const ::std::os::raw::c_char,
552        ob1: f64,
553        ob2: f64,
554        utc1: f64,
555        utc2: f64,
556        dut1: f64,
557        elong: f64,
558        phi: f64,
559        hm: f64,
560        xp: f64,
561        yp: f64,
562        phpa: f64,
563        tc: f64,
564        rh: f64,
565        wl: f64,
566        rc: *mut f64,
567        dc: *mut f64,
568    ) -> ::std::os::raw::c_int;
569}
570extern "C" {
571    pub fn iauAtoi13(
572        type_: *const ::std::os::raw::c_char,
573        ob1: f64,
574        ob2: f64,
575        utc1: f64,
576        utc2: f64,
577        dut1: f64,
578        elong: f64,
579        phi: f64,
580        hm: f64,
581        xp: f64,
582        yp: f64,
583        phpa: f64,
584        tc: f64,
585        rh: f64,
586        wl: f64,
587        ri: *mut f64,
588        di: *mut f64,
589    ) -> ::std::os::raw::c_int;
590}
591extern "C" {
592    pub fn iauAtoiq(
593        type_: *const ::std::os::raw::c_char,
594        ob1: f64,
595        ob2: f64,
596        astrom: *mut iauASTROM,
597        ri: *mut f64,
598        di: *mut f64,
599    );
600}
601extern "C" {
602    pub fn iauLd(bm: f64, p: *mut f64, q: *mut f64, e: *mut f64, em: f64, dlim: f64, p1: *mut f64);
603}
604extern "C" {
605    pub fn iauLdn(
606        n: ::std::os::raw::c_int,
607        b: *mut iauLDBODY,
608        ob: *mut f64,
609        sc: *mut f64,
610        sn: *mut f64,
611    );
612}
613extern "C" {
614    pub fn iauLdsun(p: *mut f64, e: *mut f64, em: f64, p1: *mut f64);
615}
616extern "C" {
617    pub fn iauPmpx(
618        rc: f64,
619        dc: f64,
620        pr: f64,
621        pd: f64,
622        px: f64,
623        rv: f64,
624        pmt: f64,
625        pob: *mut f64,
626        pco: *mut f64,
627    );
628}
629extern "C" {
630    pub fn iauPmsafe(
631        ra1: f64,
632        dec1: f64,
633        pmr1: f64,
634        pmd1: f64,
635        px1: f64,
636        rv1: f64,
637        ep1a: f64,
638        ep1b: f64,
639        ep2a: f64,
640        ep2b: f64,
641        ra2: *mut f64,
642        dec2: *mut f64,
643        pmr2: *mut f64,
644        pmd2: *mut f64,
645        px2: *mut f64,
646        rv2: *mut f64,
647    ) -> ::std::os::raw::c_int;
648}
649extern "C" {
650    pub fn iauPvtob(
651        elong: f64,
652        phi: f64,
653        height: f64,
654        xp: f64,
655        yp: f64,
656        sp: f64,
657        theta: f64,
658        pv: *mut [f64; 3usize],
659    );
660}
661extern "C" {
662    pub fn iauRefco(phpa: f64, tc: f64, rh: f64, wl: f64, refa: *mut f64, refb: *mut f64);
663}
664extern "C" {
665    pub fn iauEpv00(
666        date1: f64,
667        date2: f64,
668        pvh: *mut [f64; 3usize],
669        pvb: *mut [f64; 3usize],
670    ) -> ::std::os::raw::c_int;
671}
672extern "C" {
673    pub fn iauPlan94(
674        date1: f64,
675        date2: f64,
676        np: ::std::os::raw::c_int,
677        pv: *mut [f64; 3usize],
678    ) -> ::std::os::raw::c_int;
679}
680extern "C" {
681    pub fn iauFad03(t: f64) -> f64;
682}
683extern "C" {
684    pub fn iauFae03(t: f64) -> f64;
685}
686extern "C" {
687    pub fn iauFaf03(t: f64) -> f64;
688}
689extern "C" {
690    pub fn iauFaju03(t: f64) -> f64;
691}
692extern "C" {
693    pub fn iauFal03(t: f64) -> f64;
694}
695extern "C" {
696    pub fn iauFalp03(t: f64) -> f64;
697}
698extern "C" {
699    pub fn iauFama03(t: f64) -> f64;
700}
701extern "C" {
702    pub fn iauFame03(t: f64) -> f64;
703}
704extern "C" {
705    pub fn iauFane03(t: f64) -> f64;
706}
707extern "C" {
708    pub fn iauFaom03(t: f64) -> f64;
709}
710extern "C" {
711    pub fn iauFapa03(t: f64) -> f64;
712}
713extern "C" {
714    pub fn iauFasa03(t: f64) -> f64;
715}
716extern "C" {
717    pub fn iauFaur03(t: f64) -> f64;
718}
719extern "C" {
720    pub fn iauFave03(t: f64) -> f64;
721}
722extern "C" {
723    pub fn iauBi00(dpsibi: *mut f64, depsbi: *mut f64, dra: *mut f64);
724}
725extern "C" {
726    pub fn iauBp00(
727        date1: f64,
728        date2: f64,
729        rb: *mut [f64; 3usize],
730        rp: *mut [f64; 3usize],
731        rbp: *mut [f64; 3usize],
732    );
733}
734extern "C" {
735    pub fn iauBp06(
736        date1: f64,
737        date2: f64,
738        rb: *mut [f64; 3usize],
739        rp: *mut [f64; 3usize],
740        rbp: *mut [f64; 3usize],
741    );
742}
743extern "C" {
744    pub fn iauBpn2xy(rbpn: *mut [f64; 3usize], x: *mut f64, y: *mut f64);
745}
746extern "C" {
747    pub fn iauC2i00a(date1: f64, date2: f64, rc2i: *mut [f64; 3usize]);
748}
749extern "C" {
750    pub fn iauC2i00b(date1: f64, date2: f64, rc2i: *mut [f64; 3usize]);
751}
752extern "C" {
753    pub fn iauC2i06a(date1: f64, date2: f64, rc2i: *mut [f64; 3usize]);
754}
755extern "C" {
756    pub fn iauC2ibpn(date1: f64, date2: f64, rbpn: *mut [f64; 3usize], rc2i: *mut [f64; 3usize]);
757}
758extern "C" {
759    pub fn iauC2ixy(date1: f64, date2: f64, x: f64, y: f64, rc2i: *mut [f64; 3usize]);
760}
761extern "C" {
762    pub fn iauC2ixys(x: f64, y: f64, s: f64, rc2i: *mut [f64; 3usize]);
763}
764extern "C" {
765    pub fn iauC2t00a(
766        tta: f64,
767        ttb: f64,
768        uta: f64,
769        utb: f64,
770        xp: f64,
771        yp: f64,
772        rc2t: *mut [f64; 3usize],
773    );
774}
775extern "C" {
776    pub fn iauC2t00b(
777        tta: f64,
778        ttb: f64,
779        uta: f64,
780        utb: f64,
781        xp: f64,
782        yp: f64,
783        rc2t: *mut [f64; 3usize],
784    );
785}
786extern "C" {
787    pub fn iauC2t06a(
788        tta: f64,
789        ttb: f64,
790        uta: f64,
791        utb: f64,
792        xp: f64,
793        yp: f64,
794        rc2t: *mut [f64; 3usize],
795    );
796}
797extern "C" {
798    pub fn iauC2tcio(
799        rc2i: *mut [f64; 3usize],
800        era: f64,
801        rpom: *mut [f64; 3usize],
802        rc2t: *mut [f64; 3usize],
803    );
804}
805extern "C" {
806    pub fn iauC2teqx(
807        rbpn: *mut [f64; 3usize],
808        gst: f64,
809        rpom: *mut [f64; 3usize],
810        rc2t: *mut [f64; 3usize],
811    );
812}
813extern "C" {
814    pub fn iauC2tpe(
815        tta: f64,
816        ttb: f64,
817        uta: f64,
818        utb: f64,
819        dpsi: f64,
820        deps: f64,
821        xp: f64,
822        yp: f64,
823        rc2t: *mut [f64; 3usize],
824    );
825}
826extern "C" {
827    pub fn iauC2txy(
828        tta: f64,
829        ttb: f64,
830        uta: f64,
831        utb: f64,
832        x: f64,
833        y: f64,
834        xp: f64,
835        yp: f64,
836        rc2t: *mut [f64; 3usize],
837    );
838}
839extern "C" {
840    pub fn iauEo06a(date1: f64, date2: f64) -> f64;
841}
842extern "C" {
843    pub fn iauEors(rnpb: *mut [f64; 3usize], s: f64) -> f64;
844}
845extern "C" {
846    pub fn iauFw2m(gamb: f64, phib: f64, psi: f64, eps: f64, r: *mut [f64; 3usize]);
847}
848extern "C" {
849    pub fn iauFw2xy(gamb: f64, phib: f64, psi: f64, eps: f64, x: *mut f64, y: *mut f64);
850}
851extern "C" {
852    pub fn iauLtp(epj: f64, rp: *mut [f64; 3usize]);
853}
854extern "C" {
855    pub fn iauLtpb(epj: f64, rpb: *mut [f64; 3usize]);
856}
857extern "C" {
858    pub fn iauLtpecl(epj: f64, vec: *mut f64);
859}
860extern "C" {
861    pub fn iauLtpequ(epj: f64, veq: *mut f64);
862}
863extern "C" {
864    pub fn iauNum00a(date1: f64, date2: f64, rmatn: *mut [f64; 3usize]);
865}
866extern "C" {
867    pub fn iauNum00b(date1: f64, date2: f64, rmatn: *mut [f64; 3usize]);
868}
869extern "C" {
870    pub fn iauNum06a(date1: f64, date2: f64, rmatn: *mut [f64; 3usize]);
871}
872extern "C" {
873    pub fn iauNumat(epsa: f64, dpsi: f64, deps: f64, rmatn: *mut [f64; 3usize]);
874}
875extern "C" {
876    pub fn iauNut00a(date1: f64, date2: f64, dpsi: *mut f64, deps: *mut f64);
877}
878extern "C" {
879    pub fn iauNut00b(date1: f64, date2: f64, dpsi: *mut f64, deps: *mut f64);
880}
881extern "C" {
882    pub fn iauNut06a(date1: f64, date2: f64, dpsi: *mut f64, deps: *mut f64);
883}
884extern "C" {
885    pub fn iauNut80(date1: f64, date2: f64, dpsi: *mut f64, deps: *mut f64);
886}
887extern "C" {
888    pub fn iauNutm80(date1: f64, date2: f64, rmatn: *mut [f64; 3usize]);
889}
890extern "C" {
891    pub fn iauObl06(date1: f64, date2: f64) -> f64;
892}
893extern "C" {
894    pub fn iauObl80(date1: f64, date2: f64) -> f64;
895}
896extern "C" {
897    pub fn iauP06e(
898        date1: f64,
899        date2: f64,
900        eps0: *mut f64,
901        psia: *mut f64,
902        oma: *mut f64,
903        bpa: *mut f64,
904        bqa: *mut f64,
905        pia: *mut f64,
906        bpia: *mut f64,
907        epsa: *mut f64,
908        chia: *mut f64,
909        za: *mut f64,
910        zetaa: *mut f64,
911        thetaa: *mut f64,
912        pa: *mut f64,
913        gam: *mut f64,
914        phi: *mut f64,
915        psi: *mut f64,
916    );
917}
918extern "C" {
919    pub fn iauPb06(date1: f64, date2: f64, bzeta: *mut f64, bz: *mut f64, btheta: *mut f64);
920}
921extern "C" {
922    pub fn iauPfw06(
923        date1: f64,
924        date2: f64,
925        gamb: *mut f64,
926        phib: *mut f64,
927        psib: *mut f64,
928        epsa: *mut f64,
929    );
930}
931extern "C" {
932    pub fn iauPmat00(date1: f64, date2: f64, rbp: *mut [f64; 3usize]);
933}
934extern "C" {
935    pub fn iauPmat06(date1: f64, date2: f64, rbp: *mut [f64; 3usize]);
936}
937extern "C" {
938    pub fn iauPmat76(date1: f64, date2: f64, rmatp: *mut [f64; 3usize]);
939}
940extern "C" {
941    pub fn iauPn00(
942        date1: f64,
943        date2: f64,
944        dpsi: f64,
945        deps: f64,
946        epsa: *mut f64,
947        rb: *mut [f64; 3usize],
948        rp: *mut [f64; 3usize],
949        rbp: *mut [f64; 3usize],
950        rn: *mut [f64; 3usize],
951        rbpn: *mut [f64; 3usize],
952    );
953}
954extern "C" {
955    pub fn iauPn00a(
956        date1: f64,
957        date2: f64,
958        dpsi: *mut f64,
959        deps: *mut f64,
960        epsa: *mut f64,
961        rb: *mut [f64; 3usize],
962        rp: *mut [f64; 3usize],
963        rbp: *mut [f64; 3usize],
964        rn: *mut [f64; 3usize],
965        rbpn: *mut [f64; 3usize],
966    );
967}
968extern "C" {
969    pub fn iauPn00b(
970        date1: f64,
971        date2: f64,
972        dpsi: *mut f64,
973        deps: *mut f64,
974        epsa: *mut f64,
975        rb: *mut [f64; 3usize],
976        rp: *mut [f64; 3usize],
977        rbp: *mut [f64; 3usize],
978        rn: *mut [f64; 3usize],
979        rbpn: *mut [f64; 3usize],
980    );
981}
982extern "C" {
983    pub fn iauPn06(
984        date1: f64,
985        date2: f64,
986        dpsi: f64,
987        deps: f64,
988        epsa: *mut f64,
989        rb: *mut [f64; 3usize],
990        rp: *mut [f64; 3usize],
991        rbp: *mut [f64; 3usize],
992        rn: *mut [f64; 3usize],
993        rbpn: *mut [f64; 3usize],
994    );
995}
996extern "C" {
997    pub fn iauPn06a(
998        date1: f64,
999        date2: f64,
1000        dpsi: *mut f64,
1001        deps: *mut f64,
1002        epsa: *mut f64,
1003        rb: *mut [f64; 3usize],
1004        rp: *mut [f64; 3usize],
1005        rbp: *mut [f64; 3usize],
1006        rn: *mut [f64; 3usize],
1007        rbpn: *mut [f64; 3usize],
1008    );
1009}
1010extern "C" {
1011    pub fn iauPnm00a(date1: f64, date2: f64, rbpn: *mut [f64; 3usize]);
1012}
1013extern "C" {
1014    pub fn iauPnm00b(date1: f64, date2: f64, rbpn: *mut [f64; 3usize]);
1015}
1016extern "C" {
1017    pub fn iauPnm06a(date1: f64, date2: f64, rnpb: *mut [f64; 3usize]);
1018}
1019extern "C" {
1020    pub fn iauPnm80(date1: f64, date2: f64, rmatpn: *mut [f64; 3usize]);
1021}
1022extern "C" {
1023    pub fn iauPom00(xp: f64, yp: f64, sp: f64, rpom: *mut [f64; 3usize]);
1024}
1025extern "C" {
1026    pub fn iauPr00(date1: f64, date2: f64, dpsipr: *mut f64, depspr: *mut f64);
1027}
1028extern "C" {
1029    pub fn iauPrec76(
1030        date01: f64,
1031        date02: f64,
1032        date11: f64,
1033        date12: f64,
1034        zeta: *mut f64,
1035        z: *mut f64,
1036        theta: *mut f64,
1037    );
1038}
1039extern "C" {
1040    pub fn iauS00(date1: f64, date2: f64, x: f64, y: f64) -> f64;
1041}
1042extern "C" {
1043    pub fn iauS00a(date1: f64, date2: f64) -> f64;
1044}
1045extern "C" {
1046    pub fn iauS00b(date1: f64, date2: f64) -> f64;
1047}
1048extern "C" {
1049    pub fn iauS06(date1: f64, date2: f64, x: f64, y: f64) -> f64;
1050}
1051extern "C" {
1052    pub fn iauS06a(date1: f64, date2: f64) -> f64;
1053}
1054extern "C" {
1055    pub fn iauSp00(date1: f64, date2: f64) -> f64;
1056}
1057extern "C" {
1058    pub fn iauXy06(date1: f64, date2: f64, x: *mut f64, y: *mut f64);
1059}
1060extern "C" {
1061    pub fn iauXys00a(date1: f64, date2: f64, x: *mut f64, y: *mut f64, s: *mut f64);
1062}
1063extern "C" {
1064    pub fn iauXys00b(date1: f64, date2: f64, x: *mut f64, y: *mut f64, s: *mut f64);
1065}
1066extern "C" {
1067    pub fn iauXys06a(date1: f64, date2: f64, x: *mut f64, y: *mut f64, s: *mut f64);
1068}
1069extern "C" {
1070    pub fn iauEe00(date1: f64, date2: f64, epsa: f64, dpsi: f64) -> f64;
1071}
1072extern "C" {
1073    pub fn iauEe00a(date1: f64, date2: f64) -> f64;
1074}
1075extern "C" {
1076    pub fn iauEe00b(date1: f64, date2: f64) -> f64;
1077}
1078extern "C" {
1079    pub fn iauEe06a(date1: f64, date2: f64) -> f64;
1080}
1081extern "C" {
1082    pub fn iauEect00(date1: f64, date2: f64) -> f64;
1083}
1084extern "C" {
1085    pub fn iauEqeq94(date1: f64, date2: f64) -> f64;
1086}
1087extern "C" {
1088    pub fn iauEra00(dj1: f64, dj2: f64) -> f64;
1089}
1090extern "C" {
1091    pub fn iauGmst00(uta: f64, utb: f64, tta: f64, ttb: f64) -> f64;
1092}
1093extern "C" {
1094    pub fn iauGmst06(uta: f64, utb: f64, tta: f64, ttb: f64) -> f64;
1095}
1096extern "C" {
1097    pub fn iauGmst82(dj1: f64, dj2: f64) -> f64;
1098}
1099extern "C" {
1100    pub fn iauGst00a(uta: f64, utb: f64, tta: f64, ttb: f64) -> f64;
1101}
1102extern "C" {
1103    pub fn iauGst00b(uta: f64, utb: f64) -> f64;
1104}
1105extern "C" {
1106    pub fn iauGst06(uta: f64, utb: f64, tta: f64, ttb: f64, rnpb: *mut [f64; 3usize]) -> f64;
1107}
1108extern "C" {
1109    pub fn iauGst06a(uta: f64, utb: f64, tta: f64, ttb: f64) -> f64;
1110}
1111extern "C" {
1112    pub fn iauGst94(uta: f64, utb: f64) -> f64;
1113}
1114extern "C" {
1115    pub fn iauPvstar(
1116        pv: *mut [f64; 3usize],
1117        ra: *mut f64,
1118        dec: *mut f64,
1119        pmr: *mut f64,
1120        pmd: *mut f64,
1121        px: *mut f64,
1122        rv: *mut f64,
1123    ) -> ::std::os::raw::c_int;
1124}
1125extern "C" {
1126    pub fn iauStarpv(
1127        ra: f64,
1128        dec: f64,
1129        pmr: f64,
1130        pmd: f64,
1131        px: f64,
1132        rv: f64,
1133        pv: *mut [f64; 3usize],
1134    ) -> ::std::os::raw::c_int;
1135}
1136extern "C" {
1137    pub fn iauFk425(
1138        r1950: f64,
1139        d1950: f64,
1140        dr1950: f64,
1141        dd1950: f64,
1142        p1950: f64,
1143        v1950: f64,
1144        r2000: *mut f64,
1145        d2000: *mut f64,
1146        dr2000: *mut f64,
1147        dd2000: *mut f64,
1148        p2000: *mut f64,
1149        v2000: *mut f64,
1150    );
1151}
1152extern "C" {
1153    pub fn iauFk45z(r1950: f64, d1950: f64, bepoch: f64, r2000: *mut f64, d2000: *mut f64);
1154}
1155extern "C" {
1156    pub fn iauFk524(
1157        r2000: f64,
1158        d2000: f64,
1159        dr2000: f64,
1160        dd2000: f64,
1161        p2000: f64,
1162        v2000: f64,
1163        r1950: *mut f64,
1164        d1950: *mut f64,
1165        dr1950: *mut f64,
1166        dd1950: *mut f64,
1167        p1950: *mut f64,
1168        v1950: *mut f64,
1169    );
1170}
1171extern "C" {
1172    pub fn iauFk52h(
1173        r5: f64,
1174        d5: f64,
1175        dr5: f64,
1176        dd5: f64,
1177        px5: f64,
1178        rv5: f64,
1179        rh: *mut f64,
1180        dh: *mut f64,
1181        drh: *mut f64,
1182        ddh: *mut f64,
1183        pxh: *mut f64,
1184        rvh: *mut f64,
1185    );
1186}
1187extern "C" {
1188    pub fn iauFk54z(
1189        r2000: f64,
1190        d2000: f64,
1191        bepoch: f64,
1192        r1950: *mut f64,
1193        d1950: *mut f64,
1194        dr1950: *mut f64,
1195        dd1950: *mut f64,
1196    );
1197}
1198extern "C" {
1199    pub fn iauFk5hip(r5h: *mut [f64; 3usize], s5h: *mut f64);
1200}
1201extern "C" {
1202    pub fn iauFk5hz(r5: f64, d5: f64, date1: f64, date2: f64, rh: *mut f64, dh: *mut f64);
1203}
1204extern "C" {
1205    pub fn iauH2fk5(
1206        rh: f64,
1207        dh: f64,
1208        drh: f64,
1209        ddh: f64,
1210        pxh: f64,
1211        rvh: f64,
1212        r5: *mut f64,
1213        d5: *mut f64,
1214        dr5: *mut f64,
1215        dd5: *mut f64,
1216        px5: *mut f64,
1217        rv5: *mut f64,
1218    );
1219}
1220extern "C" {
1221    pub fn iauHfk5z(
1222        rh: f64,
1223        dh: f64,
1224        date1: f64,
1225        date2: f64,
1226        r5: *mut f64,
1227        d5: *mut f64,
1228        dr5: *mut f64,
1229        dd5: *mut f64,
1230    );
1231}
1232extern "C" {
1233    pub fn iauStarpm(
1234        ra1: f64,
1235        dec1: f64,
1236        pmr1: f64,
1237        pmd1: f64,
1238        px1: f64,
1239        rv1: f64,
1240        ep1a: f64,
1241        ep1b: f64,
1242        ep2a: f64,
1243        ep2b: f64,
1244        ra2: *mut f64,
1245        dec2: *mut f64,
1246        pmr2: *mut f64,
1247        pmd2: *mut f64,
1248        px2: *mut f64,
1249        rv2: *mut f64,
1250    ) -> ::std::os::raw::c_int;
1251}
1252extern "C" {
1253    pub fn iauEceq06(date1: f64, date2: f64, dl: f64, db: f64, dr: *mut f64, dd: *mut f64);
1254}
1255extern "C" {
1256    pub fn iauEcm06(date1: f64, date2: f64, rm: *mut [f64; 3usize]);
1257}
1258extern "C" {
1259    pub fn iauEqec06(date1: f64, date2: f64, dr: f64, dd: f64, dl: *mut f64, db: *mut f64);
1260}
1261extern "C" {
1262    pub fn iauLteceq(epj: f64, dl: f64, db: f64, dr: *mut f64, dd: *mut f64);
1263}
1264extern "C" {
1265    pub fn iauLtecm(epj: f64, rm: *mut [f64; 3usize]);
1266}
1267extern "C" {
1268    pub fn iauLteqec(epj: f64, dr: f64, dd: f64, dl: *mut f64, db: *mut f64);
1269}
1270extern "C" {
1271    pub fn iauG2icrs(dl: f64, db: f64, dr: *mut f64, dd: *mut f64);
1272}
1273extern "C" {
1274    pub fn iauIcrs2g(dr: f64, dd: f64, dl: *mut f64, db: *mut f64);
1275}
1276extern "C" {
1277    pub fn iauEform(n: ::std::os::raw::c_int, a: *mut f64, f: *mut f64) -> ::std::os::raw::c_int;
1278}
1279extern "C" {
1280    pub fn iauGc2gd(
1281        n: ::std::os::raw::c_int,
1282        xyz: *mut f64,
1283        elong: *mut f64,
1284        phi: *mut f64,
1285        height: *mut f64,
1286    ) -> ::std::os::raw::c_int;
1287}
1288extern "C" {
1289    pub fn iauGc2gde(
1290        a: f64,
1291        f: f64,
1292        xyz: *mut f64,
1293        elong: *mut f64,
1294        phi: *mut f64,
1295        height: *mut f64,
1296    ) -> ::std::os::raw::c_int;
1297}
1298extern "C" {
1299    pub fn iauGd2gc(
1300        n: ::std::os::raw::c_int,
1301        elong: f64,
1302        phi: f64,
1303        height: f64,
1304        xyz: *mut f64,
1305    ) -> ::std::os::raw::c_int;
1306}
1307extern "C" {
1308    pub fn iauGd2gce(
1309        a: f64,
1310        f: f64,
1311        elong: f64,
1312        phi: f64,
1313        height: f64,
1314        xyz: *mut f64,
1315    ) -> ::std::os::raw::c_int;
1316}
1317extern "C" {
1318    pub fn iauD2dtf(
1319        scale: *const ::std::os::raw::c_char,
1320        ndp: ::std::os::raw::c_int,
1321        d1: f64,
1322        d2: f64,
1323        iy: *mut ::std::os::raw::c_int,
1324        im: *mut ::std::os::raw::c_int,
1325        id: *mut ::std::os::raw::c_int,
1326        ihmsf: *mut ::std::os::raw::c_int,
1327    ) -> ::std::os::raw::c_int;
1328}
1329extern "C" {
1330    pub fn iauDat(
1331        iy: ::std::os::raw::c_int,
1332        im: ::std::os::raw::c_int,
1333        id: ::std::os::raw::c_int,
1334        fd: f64,
1335        deltat: *mut f64,
1336    ) -> ::std::os::raw::c_int;
1337}
1338extern "C" {
1339    pub fn iauDtdb(date1: f64, date2: f64, ut: f64, elong: f64, u: f64, v: f64) -> f64;
1340}
1341extern "C" {
1342    pub fn iauDtf2d(
1343        scale: *const ::std::os::raw::c_char,
1344        iy: ::std::os::raw::c_int,
1345        im: ::std::os::raw::c_int,
1346        id: ::std::os::raw::c_int,
1347        ihr: ::std::os::raw::c_int,
1348        imn: ::std::os::raw::c_int,
1349        sec: f64,
1350        d1: *mut f64,
1351        d2: *mut f64,
1352    ) -> ::std::os::raw::c_int;
1353}
1354extern "C" {
1355    pub fn iauTaitt(tai1: f64, tai2: f64, tt1: *mut f64, tt2: *mut f64) -> ::std::os::raw::c_int;
1356}
1357extern "C" {
1358    pub fn iauTaiut1(
1359        tai1: f64,
1360        tai2: f64,
1361        dta: f64,
1362        ut11: *mut f64,
1363        ut12: *mut f64,
1364    ) -> ::std::os::raw::c_int;
1365}
1366extern "C" {
1367    pub fn iauTaiutc(tai1: f64, tai2: f64, utc1: *mut f64, utc2: *mut f64)
1368        -> ::std::os::raw::c_int;
1369}
1370extern "C" {
1371    pub fn iauTcbtdb(tcb1: f64, tcb2: f64, tdb1: *mut f64, tdb2: *mut f64)
1372        -> ::std::os::raw::c_int;
1373}
1374extern "C" {
1375    pub fn iauTcgtt(tcg1: f64, tcg2: f64, tt1: *mut f64, tt2: *mut f64) -> ::std::os::raw::c_int;
1376}
1377extern "C" {
1378    pub fn iauTdbtcb(tdb1: f64, tdb2: f64, tcb1: *mut f64, tcb2: *mut f64)
1379        -> ::std::os::raw::c_int;
1380}
1381extern "C" {
1382    pub fn iauTdbtt(
1383        tdb1: f64,
1384        tdb2: f64,
1385        dtr: f64,
1386        tt1: *mut f64,
1387        tt2: *mut f64,
1388    ) -> ::std::os::raw::c_int;
1389}
1390extern "C" {
1391    pub fn iauTttai(tt1: f64, tt2: f64, tai1: *mut f64, tai2: *mut f64) -> ::std::os::raw::c_int;
1392}
1393extern "C" {
1394    pub fn iauTttcg(tt1: f64, tt2: f64, tcg1: *mut f64, tcg2: *mut f64) -> ::std::os::raw::c_int;
1395}
1396extern "C" {
1397    pub fn iauTttdb(
1398        tt1: f64,
1399        tt2: f64,
1400        dtr: f64,
1401        tdb1: *mut f64,
1402        tdb2: *mut f64,
1403    ) -> ::std::os::raw::c_int;
1404}
1405extern "C" {
1406    pub fn iauTtut1(
1407        tt1: f64,
1408        tt2: f64,
1409        dt: f64,
1410        ut11: *mut f64,
1411        ut12: *mut f64,
1412    ) -> ::std::os::raw::c_int;
1413}
1414extern "C" {
1415    pub fn iauUt1tai(
1416        ut11: f64,
1417        ut12: f64,
1418        dta: f64,
1419        tai1: *mut f64,
1420        tai2: *mut f64,
1421    ) -> ::std::os::raw::c_int;
1422}
1423extern "C" {
1424    pub fn iauUt1tt(
1425        ut11: f64,
1426        ut12: f64,
1427        dt: f64,
1428        tt1: *mut f64,
1429        tt2: *mut f64,
1430    ) -> ::std::os::raw::c_int;
1431}
1432extern "C" {
1433    pub fn iauUt1utc(
1434        ut11: f64,
1435        ut12: f64,
1436        dut1: f64,
1437        utc1: *mut f64,
1438        utc2: *mut f64,
1439    ) -> ::std::os::raw::c_int;
1440}
1441extern "C" {
1442    pub fn iauUtctai(utc1: f64, utc2: f64, tai1: *mut f64, tai2: *mut f64)
1443        -> ::std::os::raw::c_int;
1444}
1445extern "C" {
1446    pub fn iauUtcut1(
1447        utc1: f64,
1448        utc2: f64,
1449        dut1: f64,
1450        ut11: *mut f64,
1451        ut12: *mut f64,
1452    ) -> ::std::os::raw::c_int;
1453}
1454extern "C" {
1455    pub fn iauAe2hd(az: f64, el: f64, phi: f64, ha: *mut f64, dec: *mut f64);
1456}
1457extern "C" {
1458    pub fn iauHd2ae(ha: f64, dec: f64, phi: f64, az: *mut f64, el: *mut f64);
1459}
1460extern "C" {
1461    pub fn iauHd2pa(ha: f64, dec: f64, phi: f64) -> f64;
1462}
1463extern "C" {
1464    pub fn iauTpors(
1465        xi: f64,
1466        eta: f64,
1467        a: f64,
1468        b: f64,
1469        a01: *mut f64,
1470        b01: *mut f64,
1471        a02: *mut f64,
1472        b02: *mut f64,
1473    ) -> ::std::os::raw::c_int;
1474}
1475extern "C" {
1476    pub fn iauTporv(
1477        xi: f64,
1478        eta: f64,
1479        v: *mut f64,
1480        v01: *mut f64,
1481        v02: *mut f64,
1482    ) -> ::std::os::raw::c_int;
1483}
1484extern "C" {
1485    pub fn iauTpsts(xi: f64, eta: f64, a0: f64, b0: f64, a: *mut f64, b: *mut f64);
1486}
1487extern "C" {
1488    pub fn iauTpstv(xi: f64, eta: f64, v0: *mut f64, v: *mut f64);
1489}
1490extern "C" {
1491    pub fn iauTpxes(
1492        a: f64,
1493        b: f64,
1494        a0: f64,
1495        b0: f64,
1496        xi: *mut f64,
1497        eta: *mut f64,
1498    ) -> ::std::os::raw::c_int;
1499}
1500extern "C" {
1501    pub fn iauTpxev(
1502        v: *mut f64,
1503        v0: *mut f64,
1504        xi: *mut f64,
1505        eta: *mut f64,
1506    ) -> ::std::os::raw::c_int;
1507}
1508extern "C" {
1509    pub fn iauA2af(
1510        ndp: ::std::os::raw::c_int,
1511        angle: f64,
1512        sign: *mut ::std::os::raw::c_char,
1513        idmsf: *mut ::std::os::raw::c_int,
1514    );
1515}
1516extern "C" {
1517    pub fn iauA2tf(
1518        ndp: ::std::os::raw::c_int,
1519        angle: f64,
1520        sign: *mut ::std::os::raw::c_char,
1521        ihmsf: *mut ::std::os::raw::c_int,
1522    );
1523}
1524extern "C" {
1525    pub fn iauAf2a(
1526        s: ::std::os::raw::c_char,
1527        ideg: ::std::os::raw::c_int,
1528        iamin: ::std::os::raw::c_int,
1529        asec: f64,
1530        rad: *mut f64,
1531    ) -> ::std::os::raw::c_int;
1532}
1533extern "C" {
1534    pub fn iauAnp(a: f64) -> f64;
1535}
1536extern "C" {
1537    pub fn iauAnpm(a: f64) -> f64;
1538}
1539extern "C" {
1540    pub fn iauD2tf(
1541        ndp: ::std::os::raw::c_int,
1542        days: f64,
1543        sign: *mut ::std::os::raw::c_char,
1544        ihmsf: *mut ::std::os::raw::c_int,
1545    );
1546}
1547extern "C" {
1548    pub fn iauTf2a(
1549        s: ::std::os::raw::c_char,
1550        ihour: ::std::os::raw::c_int,
1551        imin: ::std::os::raw::c_int,
1552        sec: f64,
1553        rad: *mut f64,
1554    ) -> ::std::os::raw::c_int;
1555}
1556extern "C" {
1557    pub fn iauTf2d(
1558        s: ::std::os::raw::c_char,
1559        ihour: ::std::os::raw::c_int,
1560        imin: ::std::os::raw::c_int,
1561        sec: f64,
1562        days: *mut f64,
1563    ) -> ::std::os::raw::c_int;
1564}
1565extern "C" {
1566    pub fn iauRx(phi: f64, r: *mut [f64; 3usize]);
1567}
1568extern "C" {
1569    pub fn iauRy(theta: f64, r: *mut [f64; 3usize]);
1570}
1571extern "C" {
1572    pub fn iauRz(psi: f64, r: *mut [f64; 3usize]);
1573}
1574extern "C" {
1575    pub fn iauCp(p: *mut f64, c: *mut f64);
1576}
1577extern "C" {
1578    pub fn iauCpv(pv: *mut [f64; 3usize], c: *mut [f64; 3usize]);
1579}
1580extern "C" {
1581    pub fn iauCr(r: *mut [f64; 3usize], c: *mut [f64; 3usize]);
1582}
1583extern "C" {
1584    pub fn iauP2pv(p: *mut f64, pv: *mut [f64; 3usize]);
1585}
1586extern "C" {
1587    pub fn iauPv2p(pv: *mut [f64; 3usize], p: *mut f64);
1588}
1589extern "C" {
1590    pub fn iauIr(r: *mut [f64; 3usize]);
1591}
1592extern "C" {
1593    pub fn iauZp(p: *mut f64);
1594}
1595extern "C" {
1596    pub fn iauZpv(pv: *mut [f64; 3usize]);
1597}
1598extern "C" {
1599    pub fn iauZr(r: *mut [f64; 3usize]);
1600}
1601extern "C" {
1602    pub fn iauRxr(a: *mut [f64; 3usize], b: *mut [f64; 3usize], atb: *mut [f64; 3usize]);
1603}
1604extern "C" {
1605    pub fn iauTr(r: *mut [f64; 3usize], rt: *mut [f64; 3usize]);
1606}
1607extern "C" {
1608    pub fn iauRxp(r: *mut [f64; 3usize], p: *mut f64, rp: *mut f64);
1609}
1610extern "C" {
1611    pub fn iauRxpv(r: *mut [f64; 3usize], pv: *mut [f64; 3usize], rpv: *mut [f64; 3usize]);
1612}
1613extern "C" {
1614    pub fn iauTrxp(r: *mut [f64; 3usize], p: *mut f64, trp: *mut f64);
1615}
1616extern "C" {
1617    pub fn iauTrxpv(r: *mut [f64; 3usize], pv: *mut [f64; 3usize], trpv: *mut [f64; 3usize]);
1618}
1619extern "C" {
1620    pub fn iauRm2v(r: *mut [f64; 3usize], w: *mut f64);
1621}
1622extern "C" {
1623    pub fn iauRv2m(w: *mut f64, r: *mut [f64; 3usize]);
1624}
1625extern "C" {
1626    pub fn iauPap(a: *mut f64, b: *mut f64) -> f64;
1627}
1628extern "C" {
1629    pub fn iauPas(al: f64, ap: f64, bl: f64, bp: f64) -> f64;
1630}
1631extern "C" {
1632    pub fn iauSepp(a: *mut f64, b: *mut f64) -> f64;
1633}
1634extern "C" {
1635    pub fn iauSeps(al: f64, ap: f64, bl: f64, bp: f64) -> f64;
1636}
1637extern "C" {
1638    pub fn iauC2s(p: *mut f64, theta: *mut f64, phi: *mut f64);
1639}
1640extern "C" {
1641    pub fn iauP2s(p: *mut f64, theta: *mut f64, phi: *mut f64, r: *mut f64);
1642}
1643extern "C" {
1644    pub fn iauPv2s(
1645        pv: *mut [f64; 3usize],
1646        theta: *mut f64,
1647        phi: *mut f64,
1648        r: *mut f64,
1649        td: *mut f64,
1650        pd: *mut f64,
1651        rd: *mut f64,
1652    );
1653}
1654extern "C" {
1655    pub fn iauS2c(theta: f64, phi: f64, c: *mut f64);
1656}
1657extern "C" {
1658    pub fn iauS2p(theta: f64, phi: f64, r: f64, p: *mut f64);
1659}
1660extern "C" {
1661    pub fn iauS2pv(theta: f64, phi: f64, r: f64, td: f64, pd: f64, rd: f64, pv: *mut [f64; 3usize]);
1662}
1663extern "C" {
1664    pub fn iauPdp(a: *mut f64, b: *mut f64) -> f64;
1665}
1666extern "C" {
1667    pub fn iauPm(p: *mut f64) -> f64;
1668}
1669extern "C" {
1670    pub fn iauPmp(a: *mut f64, b: *mut f64, amb: *mut f64);
1671}
1672extern "C" {
1673    pub fn iauPn(p: *mut f64, r: *mut f64, u: *mut f64);
1674}
1675extern "C" {
1676    pub fn iauPpp(a: *mut f64, b: *mut f64, apb: *mut f64);
1677}
1678extern "C" {
1679    pub fn iauPpsp(a: *mut f64, s: f64, b: *mut f64, apsb: *mut f64);
1680}
1681extern "C" {
1682    pub fn iauPvdpv(a: *mut [f64; 3usize], b: *mut [f64; 3usize], adb: *mut f64);
1683}
1684extern "C" {
1685    pub fn iauPvm(pv: *mut [f64; 3usize], r: *mut f64, s: *mut f64);
1686}
1687extern "C" {
1688    pub fn iauPvmpv(a: *mut [f64; 3usize], b: *mut [f64; 3usize], amb: *mut [f64; 3usize]);
1689}
1690extern "C" {
1691    pub fn iauPvppv(a: *mut [f64; 3usize], b: *mut [f64; 3usize], apb: *mut [f64; 3usize]);
1692}
1693extern "C" {
1694    pub fn iauPvu(dt: f64, pv: *mut [f64; 3usize], upv: *mut [f64; 3usize]);
1695}
1696extern "C" {
1697    pub fn iauPvup(dt: f64, pv: *mut [f64; 3usize], p: *mut f64);
1698}
1699extern "C" {
1700    pub fn iauPvxpv(a: *mut [f64; 3usize], b: *mut [f64; 3usize], axb: *mut [f64; 3usize]);
1701}
1702extern "C" {
1703    pub fn iauPxp(a: *mut f64, b: *mut f64, axb: *mut f64);
1704}
1705extern "C" {
1706    pub fn iauS2xpv(s1: f64, s2: f64, pv: *mut [f64; 3usize], spv: *mut [f64; 3usize]);
1707}
1708extern "C" {
1709    pub fn iauSxp(s: f64, p: *mut f64, sp: *mut f64);
1710}
1711extern "C" {
1712    pub fn iauSxpv(s: f64, pv: *mut [f64; 3usize], spv: *mut [f64; 3usize]);
1713}