/usr/include/astrometry/catalog.h is in libastrometry-dev 0.70+dfsg-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 | /*
# This file is part of the Astrometry.net suite.
# Licensed under a 3-clause BSD style license - see LICENSE
*/
#ifndef CATUTILS_H
#define CATUTILS_H
#include <sys/types.h>
#include <stdint.h>
#include "astrometry/fitsbin.h"
#include "astrometry/bl.h"
#include "astrometry/an-bool.h"
#define AN_FILETYPE_CATALOG "OBJS"
struct catalog {
int numstars;
int healpix;
int hpnside;
double* stars;
// optional table: star magnitudes and mag errors.
float* mag;
float* mag_err;
// optional tables: positional error ellipses, proper motions
float* sigma_radec; // sigma_ra, sigma_dec
float* proper_motion; // motion_ra, motion_dec
float* sigma_pm; // sigma_motion_ra, sigma_motion_dec
// optional table: star IDs
uint64_t* starids;
// while writing: storage for the extra fields.
fl* maglist;
fl* magerrlist;
fl* siglist;
fl* pmlist;
fl* sigpmlist;
bl* idlist;
fitsbin_t* fb;
};
typedef struct catalog catalog;
catalog* catalog_open(char* catfn);
catalog* catalog_open_for_writing(char* catfn);
double* catalog_get_star(catalog* cat, int sid);
double* catalog_get_base(catalog* cat);
int catalog_write_star(catalog* cat, double* star);
int catalog_close(catalog* cat);
//void catalog_compute_radecminmax(catalog* cat);
int catalog_write_header(catalog* cat);
qfits_header* catalog_get_header(catalog* cat);
int catalog_fix_header(catalog* cat);
anbool catalog_has_mag(const catalog* cat);
void catalog_add_mag(catalog* cat, float mag);
void catalog_add_mag_err(catalog* cat, float magerr);
void catalog_add_sigmas(catalog* cat, float sra, float sdec);
void catalog_add_pms(catalog* cat, float sra, float sdec);
void catalog_add_sigma_pms(catalog* cat, float sra, float sdec);
void catalog_add_id(catalog* cat, uint64_t id);
/*
This should be called after writing all the star positions and
calling catalog_fix_header(). It appends the data in "cat->mags"
to the file as an extra FITS table.
*/
int catalog_write_mags(catalog* cat);
int catalog_write_mag_errs(catalog* cat);
int catalog_write_sigmas(catalog* cat);
int catalog_write_pms(catalog* cat);
int catalog_write_sigma_pms(catalog* cat);
int catalog_write_ids(catalog* cat);
#endif
|