fitsfile.h | fitsfile.h | |||
---|---|---|---|---|
/*** File fitsfile.h FITS and IRAF file access subroutines | /*** File fitsfile.h FITS and IRAF file access subroutines | |||
*** September 25, 2009 | *** June 20, 2014 | |||
*** By Jessica Mink, jmink@cfa.harvard.edu | *** By Jessica Mink, jmink@cfa.harvard.edu | |||
*** Harvard-Smithsonian Center for Astrophysics | *** Harvard-Smithsonian Center for Astrophysics | |||
*** Copyright (C) 1996-2009 | *** Copyright (C) 1996-2014 | |||
*** Smithsonian Astrophysical Observatory, Cambridge, MA, USA | *** Smithsonian Astrophysical Observatory, Cambridge, MA, USA | |||
This library is free software; you can redistribute it and/or | This library is free software; you can redistribute it and/or | |||
modify it under the terms of the GNU Lesser General Public | modify it under the terms of the GNU Lesser General Public | |||
License as published by the Free Software Foundation; either | License as published by the Free Software Foundation; either | |||
version 2 of the License, or (at your option) any later version. | version 2 of the License, or (at your option) any later version. | |||
This library is distributed in the hope that it will be useful, | This library is distributed in the hope that it will be useful, | |||
but WITHOUT ANY WARRANTY; without even the implied warranty of | but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |||
skipping to change at line 413 | skipping to change at line 413 | |||
char *filename, /* Name of file to check */ | char *filename, /* Name of file to check */ | |||
char *rootdir); /* Name of root directory for files in list */ | char *rootdir); /* Name of root directory for files in list */ | |||
int isfile( /* Return 1 if file is a readable file, else 0 */ | int isfile( /* Return 1 if file is a readable file, else 0 */ | |||
char *filename); /* Name of file to check */ | char *filename); /* Name of file to check */ | |||
int istiff( /* Return 1 if TIFF image file, else 0 */ | int istiff( /* Return 1 if TIFF image file, else 0 */ | |||
char *filename); /* Name of file to check */ | char *filename); /* Name of file to check */ | |||
int isjpeg( /* Return 1 if JPEG image file, else 0 */ | int isjpeg( /* Return 1 if JPEG image file, else 0 */ | |||
char *filename); /* Name of file to check */ | char *filename); /* Name of file to check */ | |||
int isgif( /* Return 1 if GIF image file, else 0 */ | int isgif( /* Return 1 if GIF image file, else 0 */ | |||
char *filename); /* Name of file to check */ | char *filename); /* Name of file to check */ | |||
int next_line ( /* Return the next line of an ASCII file */ | ||||
FILE *diskfile, /* File descriptor for ASCII file */ | ||||
int ncmax, /* Maximum number of characters returned */ | ||||
char *line); /* Next line (returned) */ | ||||
int first_token( /* Return first token from the next line of an ASCII file */ | int first_token( /* Return first token from the next line of an ASCII file */ | |||
FILE *diskfile, /* File descriptor for ASCII file */ | FILE *diskfile, /* File descriptor for ASCII file */ | |||
int ncmax, /* Maximum number of characters returned */ | int ncmax, /* Maximum number of characters returned */ | |||
char *token); /* First token on next line (returned) */ | char *token); /* First token on next line (returned) */ | |||
int stc2s ( /* Replace character in string with space */ | int stc2s ( /* Replace character in string with space */ | |||
char *spchar, /* Character to replace with spaces */ | char *spchar, /* Character to replace with spaces */ | |||
char *string); /* Character string to process */ | char *string); /* Character string to process */ | |||
int sts2c ( /* Replace spaces in string with character * / | int sts2c ( /* Replace spaces in string with character * / | |||
char *spchar, /* Character with which to replace spaces */ | char *spchar, /* Character with which to replace spaces */ | |||
char *string); /* Character string to process */ | char *string); /* Character string to process */ | |||
skipping to change at line 1029 | skipping to change at line 1033 | |||
extern int getfilelines(); | extern int getfilelines(); | |||
extern char *getfilebuff(); | extern char *getfilebuff(); | |||
extern int getfilesize(); | extern int getfilesize(); | |||
extern int isimlist(); | extern int isimlist(); | |||
extern int isimlistd(); | extern int isimlistd(); | |||
extern int isfilelist(); | extern int isfilelist(); | |||
extern int isfile(); | extern int isfile(); | |||
extern int istiff(); | extern int istiff(); | |||
extern int isjpeg(); | extern int isjpeg(); | |||
extern int isgif(); | extern int isgif(); | |||
extern int next_line(); | ||||
extern int first_token(); | extern int first_token(); | |||
/* Subroutines for access to tokens within a string from fileutil.c */ | /* Subroutines for access to tokens within a string from fileutil.c */ | |||
int setoken(); /* Tokenize a string for easy decoding */ | int setoken(); /* Tokenize a string for easy decoding */ | |||
int nextoken(); /* Get next token from tokenized string */ | int nextoken(); /* Get next token from tokenized string */ | |||
int getoken(); /* Get specified token from tokenized string */ | int getoken(); /* Get specified token from tokenized string */ | |||
/* Subroutines for translating dates and times in dateutil.c */ | /* Subroutines for translating dates and times in dateutil.c */ | |||
void ang2hr(); /* Fractional degrees to hours as hh:mm:ss.ss */ | void ang2hr(); /* Fractional degrees to hours as hh:mm:ss.ss */ | |||
skipping to change at line 1284 | skipping to change at line 1289 | |||
* Oct 5 2006 Add local sidereal time conversions | * Oct 5 2006 Add local sidereal time conversions | |||
* | * | |||
* Jan 9 2007 Add ANSI prototypes | * Jan 9 2007 Add ANSI prototypes | |||
* Jan 11 2007 Add token subroutines from catutil.c/wcscat.h to fileutil.c | * Jan 11 2007 Add token subroutines from catutil.c/wcscat.h to fileutil.c | |||
* Jun 11 2007 Add minvec() subroutine in imio.c | * Jun 11 2007 Add minvec() subroutine in imio.c | |||
* Nov 28 2007 Add kform format to FITS table keyword data structure | * Nov 28 2007 Add kform format to FITS table keyword data structure | |||
* | * | |||
* Sep 8 2008 Add ag2hr(), ang2deg(), deg2ang(), and hr2ang() | * Sep 8 2008 Add ag2hr(), ang2deg(), deg2ang(), and hr2ang() | |||
* | * | |||
* Sep 25 2009 Add moveb() | * Sep 25 2009 Add moveb() | |||
* | ||||
* Jun 20 2014 Add next_line() | ||||
*/ | */ | |||
End of changes. 5 change blocks. | ||||
2 lines changed or deleted | 9 lines changed or added | |||
wcs.h | wcs.h | |||
---|---|---|---|---|
/*** File libwcs/wcs.h | /*** File libwcs/wcs.h | |||
*** September 9, 2011 | *** February 1, 2013 | |||
*** By Jessica Mink, jmink@cfa.harvard.edu | *** By Jessica Mink, jmink@cfa.harvard.edu | |||
*** Harvard-Smithsonian Center for Astrophysics | *** Harvard-Smithsonian Center for Astrophysics | |||
*** Copyright (C) 1994-2011 | *** Copyright (C) 1994-2013 | |||
*** Smithsonian Astrophysical Observatory, Cambridge, MA, USA | *** Smithsonian Astrophysical Observatory, Cambridge, MA, USA | |||
This library is free software; you can redistribute it and/or | This library is free software; you can redistribute it and/or | |||
modify it under the terms of the GNU Lesser General Public | modify it under the terms of the GNU Lesser General Public | |||
License as published by the Free Software Foundation; either | License as published by the Free Software Foundation; either | |||
version 2 of the License, or (at your option) any later version. | version 2 of the License, or (at your option) any later version. | |||
This library is distributed in the hope that it will be useful, | This library is distributed in the hope that it will be useful, | |||
but WITHOUT ANY WARRANTY; without even the implied warranty of | but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |||
skipping to change at line 298 | skipping to change at line 298 | |||
const char* wcsname); /* WCS name */ | const char* wcsname); /* WCS name */ | |||
struct WorldCoor *wcsinitc ( /* set up WCS structure from a FITS image header */ | struct WorldCoor *wcsinitc ( /* set up WCS structure from a FITS image header */ | |||
const char* hstring, /* FITS header */ | const char* hstring, /* FITS header */ | |||
char *wcschar); /* WCS character (A-Z) */ | char *wcschar); /* WCS character (A-Z) */ | |||
struct WorldCoor *wcsninitc ( /* set up WCS structure from a FITS image header */ | struct WorldCoor *wcsninitc ( /* set up WCS structure from a FITS image header */ | |||
const char* hstring, /* FITS header */ | const char* hstring, /* FITS header */ | |||
int len, /* Length of FITS header */ | int len, /* Length of FITS header */ | |||
char *wcschar); /* WCS character (A-Z) */ | char *wcschar); /* WCS character (A-Z) */ | |||
char *uppercase ( /* Convert string of any case to uppercase * | ||||
/ | ||||
const char *string); /* String to convert */ | ||||
/* WCS subroutines in wcs.c */ | /* WCS subroutines in wcs.c */ | |||
void wcsfree ( /* Free a WCS structure and its contents */ | void wcsfree ( /* Free a WCS structure and its contents */ | |||
struct WorldCoor *wcs); /* World coordinate system structure */ | struct WorldCoor *wcs); /* World coordinate system structure */ | |||
int wcstype( /* Set projection type from header CTYPEs */ | int wcstype( /* Set projection type from header CTYPEs */ | |||
struct WorldCoor *wcs, /* World coordinate system structure */ | struct WorldCoor *wcs, /* World coordinate system structure */ | |||
char *ctype1, /* FITS WCS projection for axis 1 */ | char *ctype1, /* FITS WCS projection for axis 1 */ | |||
char *ctype2); /* FITS WCS projection for axis 2 */ | char *ctype2); /* FITS WCS projection for axis 2 */ | |||
skipping to change at line 738 | skipping to change at line 740 | |||
/* WCS subroutines in wcs.c */ | /* WCS subroutines in wcs.c */ | |||
struct WorldCoor *wcsinit(); /* set up a WCS structure from a FITS image he ader */ | struct WorldCoor *wcsinit(); /* set up a WCS structure from a FITS image he ader */ | |||
struct WorldCoor *wcsninit(); /* set up a WCS structure from a FITS image h eader */ | struct WorldCoor *wcsninit(); /* set up a WCS structure from a FITS image h eader */ | |||
struct WorldCoor *wcsinitn(); /* set up a WCS structure from a FITS image h eader */ | struct WorldCoor *wcsinitn(); /* set up a WCS structure from a FITS image h eader */ | |||
struct WorldCoor *wcsninitn(); /* set up a WCS structure from a FITS image header */ | struct WorldCoor *wcsninitn(); /* set up a WCS structure from a FITS image header */ | |||
struct WorldCoor *wcsinitc(); /* set up a WCS structure from a FITS image h eader */ | struct WorldCoor *wcsinitc(); /* set up a WCS structure from a FITS image h eader */ | |||
struct WorldCoor *wcsninitc(); /* set up a WCS structure from a FITS image header */ | struct WorldCoor *wcsninitc(); /* set up a WCS structure from a FITS image header */ | |||
struct WorldCoor *wcsxinit(); /* set up a WCS structure from arguments */ | struct WorldCoor *wcsxinit(); /* set up a WCS structure from arguments */ | |||
struct WorldCoor *wcskinit(); /* set up a WCS structure from keyword values */ | struct WorldCoor *wcskinit(); /* set up a WCS structure from keyword values */ | |||
void wcsfree(void); /* Free a WCS structure and its contents */ | char *uppercase(); /* Convert string of any case to uppercase */ | |||
void wcsfree(void); /* Free a WCS structure and its contents */ | ||||
int wcstype(); /* Set projection type from header CTYPEs */ | int wcstype(); /* Set projection type from header CTYPEs */ | |||
void wcscdset(); /* Set scaling and rotation from CD matrix */ | void wcscdset(); /* Set scaling and rotation from CD matrix */ | |||
void wcsdeltset(); /* set scaling and rotation from CDELTs and CROTA2 * / | void wcsdeltset(); /* set scaling and rotation from CDELTs and CROTA2 * / | |||
void wcspcset(); /* set scaling and rotation from CDELTs and PC matri x */ | void wcspcset(); /* set scaling and rotation from CDELTs and PC matri x */ | |||
int iswcs(); /* Return 1 if WCS structure is filled, else 0 */ | int iswcs(); /* Return 1 if WCS structure is filled, else 0 */ | |||
int nowcs(); /* Return 0 if WCS structure is filled, else 1 */ | int nowcs(); /* Return 0 if WCS structure is filled, else 1 */ | |||
void wcsshift(); /* Reset the center of a WCS structure */ | void wcsshift(); /* Reset the center of a WCS structure */ | |||
void wcscent(); /* Print the image center and size in WCS un its */ | void wcscent(); /* Print the image center and size in WCS un its */ | |||
void wcssize(); /* Return RA and Dec of image center, size i n RA and Dec */ | void wcssize(); /* Return RA and Dec of image center, size i n RA and Dec */ | |||
void wcsfull(); /* Return RA and Dec of image center, size i n degrees */ | void wcsfull(); /* Return RA and Dec of image center, size i n degrees */ | |||
skipping to change at line 963 | skipping to change at line 966 | |||
* Feb 1 2007 Add wcs.wcslog for log wavelength | * Feb 1 2007 Add wcs.wcslog for log wavelength | |||
* Jul 25 2007 Add v2s3(), s2v3(), d2v3(), v2d3() for coordinate-vector con version | * Jul 25 2007 Add v2s3(), s2v3(), d2v3(), v2d3() for coordinate-vector con version | |||
* | * | |||
* Mar 31 2010 Add wcsdist1(), an alternate method | * Mar 31 2010 Add wcsdist1(), an alternate method | |||
* Apr 07 2010 Add NWCSTYPE to keep it aligned with actual number of WCS ty pes | * Apr 07 2010 Add NWCSTYPE to keep it aligned with actual number of WCS ty pes | |||
* | * | |||
* Mar 11 2011 Add NOAO ZPX projection parameters and subroutines (Frank Va ldes) | * Mar 11 2011 Add NOAO ZPX projection parameters and subroutines (Frank Va ldes) | |||
* Mar 14 2011 Add SCAMP polynomial projection coefficients | * Mar 14 2011 Add SCAMP polynomial projection coefficients | |||
* Sep 1 2011 Add TPV TAN projectioin with SCAT PV terms | * Sep 1 2011 Add TPV TAN projectioin with SCAT PV terms | |||
* Sep 9 2011 Fix comment on TPV declaration | * Sep 9 2011 Fix comment on TPV declaration | |||
* | ||||
* Feb 1 2013 Add uppercase() from wcsinit() | ||||
* Feb 25 2013 Pass const string to uppercase() | ||||
*/ | */ | |||
End of changes. 5 change blocks. | ||||
3 lines changed or deleted | 10 lines changed or added | |||
wcscat.h | wcscat.h | |||
---|---|---|---|---|
/*** File libwcs/wcscat.h | /*** File libwcs/wcscat.h | |||
*** May 16, 2012 | *** February 15, 2013 | |||
*** By Jessica Mink, jmink@cfa.harvard.edu | *** By Jessica Mink, jmink@cfa.harvard.edu | |||
*** Copyright (C) 1998-2012 | *** Copyright (C) 1998-2013 | |||
*** Smithsonian Astrophysical Observatory, Cambridge, MA, USA | *** Smithsonian Astrophysical Observatory, Cambridge, MA, USA | |||
This library is free software; you can redistribute it and/or | This library is free software; you can redistribute it and/or | |||
modify it under the terms of the GNU Lesser General Public | modify it under the terms of the GNU Lesser General Public | |||
License as published by the Free Software Foundation; either | License as published by the Free Software Foundation; either | |||
version 2 of the License, or (at your option) any later version. | version 2 of the License, or (at your option) any later version. | |||
This library is distributed in the hope that it will be useful, | This library is distributed in the hope that it will be useful, | |||
but WITHOUT ANY WARRANTY; without even the implied warranty of | but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |||
skipping to change at line 209 | skipping to change at line 209 | |||
#define UCAC2 23 /* USNO CCD Astrograph Catalog 2.0 */ | #define UCAC2 23 /* USNO CCD Astrograph Catalog 2.0 */ | |||
#define TMIDR2 24 /* 2MASS IDR2 Point Source Catalog */ | #define TMIDR2 24 /* 2MASS IDR2 Point Source Catalog */ | |||
#define YB6 25 /* USNO YB6 Catalog */ | #define YB6 25 /* USNO YB6 Catalog */ | |||
#define SDSS 26 /* Sloan Digital Sky Survey Catalog */ | #define SDSS 26 /* Sloan Digital Sky Survey Catalog */ | |||
#define TMXSC 27 /* 2MASS Extended Source Catalog */ | #define TMXSC 27 /* 2MASS Extended Source Catalog */ | |||
#define TMPSCE 28 /* 2MASS Point Source Catalog with mag error s */ | #define TMPSCE 28 /* 2MASS Point Source Catalog with mag error s */ | |||
#define TYCHO2E 29 /* Tycho-2 Star Catalog with magnitu de errors */ | #define TYCHO2E 29 /* Tycho-2 Star Catalog with magnitu de errors */ | |||
#define SKY2K 30 /* SKY2000 Master Catalog */ | #define SKY2K 30 /* SKY2000 Master Catalog */ | |||
#define SKYBOT 31 /* SKYBOT Solar System Objects */ | #define SKYBOT 31 /* SKYBOT Solar System Objects */ | |||
#define UCAC3 32 /* USNO CCD Astrograph Catalog 3.0 (2009) */ | #define UCAC3 32 /* USNO CCD Astrograph Catalog 3.0 (2009) */ | |||
#define UCAC4 33 /* USNO CCD Astrograph Catalog 4.0 (2013) */ | ||||
#define TABCAT -1 /* StarBase tab table catalog */ | #define TABCAT -1 /* StarBase tab table catalog */ | |||
#define BINCAT -2 /* TDC binary catalog */ | #define BINCAT -2 /* TDC binary catalog */ | |||
#define TXTCAT -3 /* TDC ASCII catalog */ | #define TXTCAT -3 /* TDC ASCII catalog */ | |||
#define WEBCAT -4 /* Tab catalog via the web */ | #define WEBCAT -4 /* Tab catalog via the web */ | |||
#define NUMCAT 31 /* Number of predefined catalogs */ | #define NUMCAT 33 /* Number of predefined catalogs */ | |||
#define EP_EP 1 /* Output epoch as fractional year */ | #define EP_EP 1 /* Output epoch as fractional year */ | |||
#define EP_JD 2 /* Output epoch as Julian Date */ | #define EP_JD 2 /* Output epoch as Julian Date */ | |||
#define EP_MJD 3 /* Ouput epoch as Modified Julian Date */ | #define EP_MJD 3 /* Ouput epoch as Modified Julian Date */ | |||
#define EP_FD 4 /* Output epoch in FITS format (yyyy-mm-dd) */ | #define EP_FD 4 /* Output epoch in FITS format (yyyy-mm-dd) */ | |||
#define EP_ISO 5 /* Output epoch in ISO format (yyyy-mm-ddThh:mm:ss) */ | #define EP_ISO 5 /* Output epoch in ISO format (yyyy-mm-ddThh:mm:ss) */ | |||
/* Structure for dealing with ranges */ | /* Structure for dealing with ranges */ | |||
#define MAXRANGE 20 | #define MAXRANGE 20 | |||
struct Range { | struct Range { | |||
skipping to change at line 1700 | skipping to change at line 1701 | |||
* | * | |||
* Sep 25 2009 Rename moveb() to movebuff() | * Sep 25 2009 Rename moveb() to movebuff() | |||
* Sep 25 2009 Add UCAC3 as catalog code 32 | * Sep 25 2009 Add UCAC3 as catalog code 32 | |||
* Oct 30 2009 Add position and proper motion error to star structure | * Oct 30 2009 Add position and proper motion error to star structure | |||
* Nov 2 2009 Add numbers of images and catalogs to star structure | * Nov 2 2009 Add numbers of images and catalogs to star structure | |||
* Nov 3 2009 Parameterize as MAXNMAG the maximum number of magnitudes | * Nov 3 2009 Parameterize as MAXNMAG the maximum number of magnitudes | |||
* | * | |||
* Apr 06 2010 Add fillblank argument to agets() | * Apr 06 2010 Add fillblank argument to agets() | |||
* | * | |||
* May 16 2012 Add valmin and valmax to Range data structure | * May 16 2012 Add valmin and valmax to Range data structure | |||
* | ||||
* Feb 15 2013 Add UCAC4 to list of catalog codes | ||||
*/ | */ | |||
End of changes. 5 change blocks. | ||||
3 lines changed or deleted | 6 lines changed or added | |||