1 /*
2 *+
3 *  Name:
4 *     pal1sofa.h
5 
6 *  Purpose:
7 *     Mappings of ERFA names to SOFA names
8 
9 *  Language:
10 *     Starlink ANSI C
11 
12 *  Type of Module:
13 *     Include file
14 
15 *  Invocation:
16 *     #include "pal1sofa.h"
17 
18 *  Description:
19 *     PAL will work with both SOFA and ERFA libraries and the
20 *     difference is generally a change in prefix. This include
21 *     file maps the ERFA form of functions to the SOFA form
22 *     and includes the relevant sofa.h vs erfa.h file.
23 
24 *  Authors:
25 *     TIMJ: Tim Jenness (JAC, Hawaii)
26 *     {enter_new_authors_here}
27 
28 *  Notes:
29 *     - PAL uses the ERFA form by default.
30 
31 *  History:
32 *     2014-07-29 (TIMJ):
33 *        Initial version
34 *     {enter_further_changes_here}
35 
36 *  Copyright:
37 *     Copyright (C) 2014 Tim Jenness
38 *     All Rights Reserved.
39 
40 *  Licence:
41 *     This program is free software: you can redistribute it and/or
42 *     modify it under the terms of the GNU Lesser General Public
43 *     License as published by the Free Software Foundation, either
44 *     version 3 of the License, or (at your option) any later
45 *     version.
46 *
47 *     This program is distributed in the hope that it will be useful,
48 *     but WITHOUT ANY WARRANTY; without even the implied warranty of
49 *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
50 *     GNU Lesser General Public License for more details.
51 *
52 *     You should have received a copy of the GNU Lesser General
53 *     License along with this program.  If not, see
54 *     <http://www.gnu.org/licenses/>.
55 
56 *  Bugs:
57 *     {note_any_bugs_here}
58 *-
59 */
60 
61 #ifndef PAL1SOFAHDEF
62 #define PAL1SOFAHDEF
63 
64 #if HAVE_CONFIG_H
65 #  include <config.h>
66 #endif
67 
68 # if HAVE_SOFA_H
69 
70 #  include "sofa.h"
71 #  include "sofam.h"
72 
73    /* Must replace ERFA with SOFA */
74 
75 #  define eraA2af iauA2af
76 #  define eraA2tf iauA2tf
77 #  define eraAf2a iauAf2a
78 #  define eraAnp iauAnp
79 #  define eraAnpm iauAnpm
80 #  define eraC2s iauC2s
81 #  define eraCal2jd iauCal2jd
82 #  define eraD2tf iauD2tf
83 #  define eraDat iauDat
84 #  define eraEe06a iauEe06a
85 #  define eraEpb iauEpb
86 #  define eraEpb2jd iauEpb2jd
87 #  define eraEpj iauEpj
88 #  define eraEpj2jd iauEpj2jd
89 #  define eraEpv00 iauEpv00
90 #  define eraFk5hz iauFk5hz
91 #  define eraGd2gc iauGd2gc
92 #  define eraGmst06 iauGmst06
93 #  define eraHfk5z iauHfk5z
94 #  define eraIr iauIr
95 #  define eraJd2cal iauJd2cal
96 #  define eraNut06a iauNut06a
97 #  define eraObl06 iauObl06
98 #  define eraP06e iauP06e
99 #  define eraPap iauPap
100 #  define eraPas iauPas
101 #  define eraPdp iauPdp
102 #  define eraPlan94 iauPlan94
103 #  define eraPmat06 iauPmat06
104 #  define eraPn iauPn
105 #  define eraPnm06a iauPnm06a
106 #  define eraPxp iauPxp
107 #  define eraRefco iauRefco
108 #  define eraRm2v iauRm2v
109 #  define eraRv2m iauRv2m
110 #  define eraRx iauRx
111 #  define eraRxp iauRxp
112 #  define eraRxpv iauRxpv
113 #  define eraRxr iauRxr
114 #  define eraRy iauRy
115 #  define eraRz iauRz
116 #  define eraS2c iauS2c
117 #  define eraSepp iauSepp
118 #  define eraSeps iauSeps
119 #  define eraStarpm iauStarpm
120 #  define eraTf2a iauTf2a
121 #  define eraTf2d iauTf2d
122 #  define eraTr iauTr
123 #  define eraTrxp iauTrxp
124 
125 /* These are from sofam.h */
126 
127 #  define ERFA_WGS84 WGS84
128 
129 #  define ERFA_DJ00 DJ00
130 #  define ERFA_DJY DJY
131 #  define ERFA_DAU DAU
132 
133 # else
134 
135 #  include "erfa.h"
136 #  include "erfam.h"
137 
138 /* No further action required */
139 
140 # endif
141 
142 #endif
143