WCSLIB 6.2

wtbarr.h
Go to the documentation of this file.
1 /*============================================================================
2
3 WCSLIB 6.2 - an implementation of the FITS WCS standard.
4 Copyright (C) 1995-2018, Mark Calabretta
5
6 This file is part of WCSLIB.
7
8 WCSLIB is free software: you can redistribute it and/or modify it under the
9 terms of the GNU Lesser General Public License as published by the Free
10 Software Foundation, either version 3 of the License, or (at your option)
11 any later version.
12
13 WCSLIB is distributed in the hope that it will be useful, but WITHOUT ANY
14 WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
15 FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
16 more details.
17
18 You should have received a copy of the GNU Lesser General Public License
19 along with WCSLIB. If not, see http://www.gnu.org/licenses.
20
21 Direct correspondence concerning WCSLIB to mark@calabretta.id.au
22
23 Author: Mark Calabretta, Australia Telescope National Facility, CSIRO.
24 http://www.atnf.csiro.au/people/Mark.Calabretta
25 $Id: wtbarr.h,v 6.2 2018/10/20 10:03:13 mcalabre Exp $
26 *=============================================================================
27 *
28 * WCSLIB 6.2 - C routines that implement the FITS World Coordinate System
29 * (WCS) standard. Refer to the README file provided with WCSLIB for an
30 * overview of the library.
31 *
32 *
33 * Summary of the wtbarr struct
34 * ----------------------------
35 * The wtbarr struct is used by wcstab() in extracting coordinate lookup tables
36 * from a binary table extension (BINTABLE) and copying them into the tabprm
37 * structs stored in wcsprm.
38 *
39 *
40 * wtbarr struct - Extraction of coordinate lookup tables from BINTABLE
41 * --------------------------------------------------------------------
42 * Function wcstab(), which is invoked automatically by wcspih(), sets up an
43 * array of wtbarr structs to assist in extracting coordinate lookup tables
44 * from a binary table extension (BINTABLE) and copying them into the tabprm
45 * structs stored in wcsprm. Refer to the usage notes for wcspih() and
46 * wcstab() in wcshdr.h, and also the prologue to tab.h.
47 *
48 * For C++ usage, because of a name space conflict with the wtbarr typedef
49 * defined in CFITSIO header fitsio.h, the wtbarr struct is renamed to wtbarr_s
50 * by preprocessor macro substitution with scope limited to wtbarr.h itself,
51 * and similarly in wcs.h.
52 *
53 * int i
54 * (Given) Image axis number.
55 *
56 * int m
57 * (Given) wcstab array axis number for index vectors.
58 *
59 * int kind
60 * (Given) Character identifying the wcstab array type:
61 * - c: coordinate array,
62 * - i: index vector.
63 *
64 * char extnam[72]
65 * (Given) EXTNAME identifying the binary table extension.
66 *
67 * int extver
68 * (Given) EXTVER identifying the binary table extension.
69 *
70 * int extlev
71 * (Given) EXTLEV identifying the binary table extension.
72 *
73 * char ttype[72]
74 * (Given) TTYPEn identifying the column of the binary table that contains
75 * the wcstab array.
76 *
77 * long row
78 * (Given) Table row number.
79 *
80 * int ndim
81 * (Given) Expected dimensionality of the wcstab array.
82 *
83 * int *dimlen
84 * (Given) Address of the first element of an array of int of length ndim
85 * into which the wcstab array axis lengths are to be written.
86 *
87 * double **arrayp
88 * (Given) Pointer to an array of double which is to be allocated by the
89 * user and into which the wcstab array is to be written.
90 *
91 *===========================================================================*/
92
93 #ifndef WCSLIB_WTBARR
94 #define WCSLIB_WTBARR
95
96 #ifdef __cplusplus
97 extern "C" {
98 #define wtbarr wtbarr_s /* See prologue above. */
99 #endif
100 /* For extracting wcstab arrays. Matches */
101 /* the wtbarr typedef defined in CFITSIO */
102 /* header fitsio.h. */
103 struct wtbarr {
104 int i; /* Image axis number. */
105 int m; /* Array axis number for index vectors. */
106 int kind; /* wcstab array type. */
107 char extnam[72]; /* EXTNAME of binary table extension. */
108 int extver; /* EXTVER of binary table extension. */
109 int extlev; /* EXTLEV of binary table extension. */
110 char ttype[72]; /* TTYPEn of column containing the array. */
111 long row; /* Table row number. */
112 int ndim; /* Expected wcstab array dimensionality. */
113 int *dimlen; /* Where to write the array axis lengths. */
114 double **arrayp; /* Where to write the address of the array */
115 /* allocated to store the wcstab array. */
116 };
117
118 #ifdef __cplusplus
119 #undef wtbarr
120 }
121 #endif
122
123 #endif /* WCSLIB_WTBARR */
wtbarr::kind
int kind
Definition: getwcstab.h:173
wtbarr::ttype
char ttype[72]
Definition: getwcstab.h:177
wtbarr::i
int i
Definition: getwcstab.h:171
wtbarr::m
int m
Definition: getwcstab.h:172
wtbarr::row
long row
Definition: getwcstab.h:178
wtbarr::arrayp
double ** arrayp
Definition: getwcstab.h:181
wtbarr
Extraction of coordinate lookup tables from BINTABLE.
Definition: getwcstab.h:170
wtbarr::extnam
char extnam[72]
Definition: getwcstab.h:174
wtbarr::ndim
int ndim
Definition: getwcstab.h:179
wtbarr::extver
int extver
Definition: getwcstab.h:175
wtbarr::dimlen
int * dimlen
Definition: getwcstab.h:180
wtbarr::extlev
int extlev
Definition: getwcstab.h:176