/usr/include/wcslib-4.8.3/log.h is in wcslib-dev 4.8.3-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 | /*============================================================================
WCSLIB 4.8 - an implementation of the FITS WCS standard.
Copyright (C) 1995-2011, Mark Calabretta
This file is part of WCSLIB.
WCSLIB is free software: you can redistribute it and/or modify it under the
terms of the GNU Lesser General Public License as published by the Free
Software Foundation, either version 3 of the License, or (at your option)
any later version.
WCSLIB is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
more details.
You should have received a copy of the GNU Lesser General Public License
along with WCSLIB. If not, see <http://www.gnu.org/licenses/>.
Correspondence concerning WCSLIB may be directed to:
Internet email: mcalabre@atnf.csiro.au
Postal address: Dr. Mark Calabretta
Australia Telescope National Facility, CSIRO
PO Box 76
Epping NSW 1710
AUSTRALIA
Author: Mark Calabretta, Australia Telescope National Facility
http://www.atnf.csiro.au/~mcalabre/index.html
$Id: log.h,v 4.8.1.1 2011/08/15 08:07:06 cal103 Exp cal103 $
*=============================================================================
*
* WCSLIB 4.8 - C routines that implement logarithmic coordinate systems as
* defined by the FITS World Coordinate System (WCS) standard. Refer to
*
* "Representations of world coordinates in FITS",
* Greisen, E.W., & Calabretta, M.R. 2002, A&A, 395, 1061 (Paper I)
*
* "Representations of spectral coordinates in FITS",
* Greisen, E.W., Calabretta, M.R., Valdes, F.G., & Allen, S.L.
* 2006, A&A, 446, 747 (Paper III)
*
* Refer to the README file provided with WCSLIB for an overview of the
* library.
*
*
* Summary of the log routines
* ---------------------------
* These routines implement the part of the FITS WCS standard that deals with
* logarithmic coordinates. They define methods to be used for computing
* logarithmic world coordinates from intermediate world coordinates (a linear
* transformation of image pixel coordinates), and vice versa.
*
* logx2s() and logs2x() implement the WCS logarithmic coordinate
* transformations.
*
* Argument checking:
* ------------------
* The input log-coordinate values are only checked for values that would
* result in floating point exceptions and the same is true for the
* log-coordinate reference value.
*
* Accuracy:
* ---------
* No warranty is given for the accuracy of these routines (refer to the
* copyright notice); intending users must satisfy for themselves their
* adequacy for the intended purpose. However, closure effectively to within
* double precision rounding error was demonstrated by test routine tlog.c
* which accompanies this software.
*
*
* logx2s() - Transform to logarithmic coordinates
* -----------------------------------------------
* logx2s() transforms intermediate world coordinates to logarithmic
* coordinates.
*
* Given and returned:
* crval double Log-coordinate reference value (CRVALia).
*
* Given:
* nx int Vector length.
*
* sx int Vector stride.
*
* slogc int Vector stride.
*
* x const double[]
* Intermediate world coordinates, in SI units.
*
* Returned:
* logc double[] Logarithmic coordinates, in SI units.
*
* stat int[] Status return value status for each vector element:
* 0: Success.
*
* Function return value:
* int Status return value:
* 0: Success.
* 2: Invalid log-coordinate reference value.
*
*
* logs2x() - Transform logarithmic coordinates
* --------------------------------------------
* logs2x() transforms logarithmic world coordinates to intermediate world
* coordinates.
*
* Given and returned:
* crval double Log-coordinate reference value (CRVALia).
*
* Given:
* nlogc int Vector length.
*
* slogc int Vector stride.
*
* sx int Vector stride.
*
* logc const double[]
* Logarithmic coordinates, in SI units.
*
* Returned:
* x double[] Intermediate world coordinates, in SI units.
*
* stat int[] Status return value status for each vector element:
* 0: Success.
* 1: Invalid value of logc.
*
* Function return value:
* int Status return value:
* 0: Success.
* 2: Invalid log-coordinate reference value.
* 4: One or more of the world-coordinate values
* are incorrect, as indicated by the stat vector.
*
*
* Global variable: const char *log_errmsg[] - Status return messages
* ------------------------------------------------------------------
* Error messages to match the status value returned from each function.
*
*===========================================================================*/
#ifndef WCSLIB_LOG
#define WCSLIB_LOG
#ifdef __cplusplus
extern "C" {
#endif
extern const char *log_errmsg[];
enum log_errmsg_enum {
LOGERR_SUCCESS = 0, /* Success. */
LOGERR_NULL_POINTER = 1, /* Null pointer passed. */
LOGERR_BAD_LOG_REF_VAL = 2, /* Invalid log-coordinate reference value. */
LOGERR_BAD_X = 3, /* One or more of the x coordinates were
invalid. */
LOGERR_BAD_WORLD = 4 /* One or more of the world coordinates were
invalid. */
};
int logx2s(double crval, int nx, int sx, int slogc, const double x[],
double logc[], int stat[]);
int logs2x(double crval, int nlogc, int slogc, int sx, const double logc[],
double x[], int stat[]);
#ifdef __cplusplus
}
#endif
#endif /* WCSLIB_LOG */
|