- Timestamp:
- Oct 14, 2007, 1:54:24 PM (19 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/eam_branch_20071015/Ohana/src/libfits/include/gfitsio.h
r15275 r15312 48 48 int Naxis[FT_MAX_NAXES]; 49 49 int size; 50 int pcount; 51 int gcount; 50 52 double bzero; 51 53 double bscale; … … 84 86 } VTable; 85 87 88 typedef struct { 89 int length; 90 int offset; 91 int maxlen; 92 int nbytes; 93 char format; 94 } VarLengthColumn; 95 86 96 # ifndef PROTO 87 97 # define PROTO(A) A 88 98 # endif 89 99 90 char *gfits_version PROTO(());100 char *gfits_version PROTO((void)); 91 101 92 102 /******************************* Header functions *************/ 93 int gfits_read_header PROTO((char *, Header *));94 // int fits_copy_header PROTO((Header *, Header *));95 int gfits_copy_header PROTO((Header *, Header *));96 void gfits_free_header PROTO((Header *));97 int gfits_write_header PROTO((char *, Header *));98 int gfits_create_header PROTO((Header *));99 int gfits_delete PROTO((Header *, char *, int));100 char *gfits_header_field PROTO((Header *, char *, int));101 int gfits_read_Xheader PROTO((char *filename, Header *header, int N));102 int gfits_fread_Xheader PROTO((FILE *f, Header *header, int N));103 int gfits_load_header PROTO((FILE *f, Header *header));104 103 105 int gfits_fread_header PROTO((FILE *, Header *)); 106 int gfits_fread_Theader PROTO((FILE *, Header *)); 107 int gfits_fread_ftable PROTO((FILE *, FTable *, char *)); 108 int gfits_fread_vtable_range PROTO((FILE *f, VTable *table, int start, int Nrows)); 109 int gfits_fread_vtable PROTO((FILE *f, VTable *table, char *extname, int Nrow, int *row)); 110 int gfits_fread_ftable_data PROTO((FILE *f, FTable *table)); 111 int gfits_fwrite_header PROTO((FILE *, Header *)); 112 int gfits_fwrite_Theader PROTO((FILE *, Header *)); 113 int gfits_fwrite_matrix PROTO((FILE *, Matrix *)); 114 int gfits_fwrite_table PROTO((FILE *, FTable *)); 115 int gfits_fwrite_vtable PROTO((FILE *, VTable *)); 116 117 int gfits_matrix_size PROTO ((Header *)); 118 int gfits_init_header PROTO ((Header *)); 119 int gfits_get_unsign_mode PROTO (()); 120 int gfits_set_unsign_mode PROTO ((int mode)); 121 int gfits_create_table_header PROTO ((Header *, char *, char *)); 122 int gfits_vtable_from_ftable PROTO ((FTable *ftable, VTable *vtable, int *row, int Nrow)); 123 int gfits_table_to_vtable PROTO ((FTable *ftable, VTable *vtable, int start, int Nkeep)); 124 int gfits_create_table PROTO ((Header *, FTable *)); 125 int gfits_vadd_rows PROTO ((VTable *, char *, int, int)); 126 int gfits_add_rows PROTO ((FTable *, char *, int, int)); 127 char *gfits_table_print PROTO ((FTable *,...)); 128 int gfits_table_scale_data PROTO ((FTable *ftable)); 129 int gfits_table_scale_storage PROTO ((FTable *ftable)); 104 char *gfits_header_field PROTO((Header *header, char *field, int N)); 105 char *gfits_keyword_end PROTO((char *line)); 106 int gfits_copy_header PROTO((Header *in, Header *out)); 107 int gfits_create_header PROTO((Header *header)); 108 int gfits_delete_field PROTO((Header *header, char *field, int N)); 109 int gfits_fread_Xheader PROTO((FILE *f, Header *header, int N)); 110 int gfits_fread_header PROTO((FILE *f, Header *header)); 111 void gfits_free_header PROTO((Header *header)); 112 int gfits_fwrite_header PROTO((FILE *f, Header *header)); 113 int gfits_get_unsign_mode PROTO((void)); 114 int gfits_init_header PROTO((Header *header)); 115 int gfits_load_header PROTO((FILE *f, Header *header)); 116 int gfits_modify PROTO((Header *header, char *field, char *mode, int N,...)); 117 int gfits_print PROTO((Header *header, char *field, char *mode, int N,...)); 118 int gfits_read_Xheader PROTO((char *filename, Header *header, int N)); 119 int gfits_read_header PROTO((char *filename, Header *header)); 120 int gfits_save_header PROTO((FILE *f, Header *header)); 121 int gfits_scan PROTO((Header *header, char *field, char *mode, int N,...)); 122 int gfits_set_unsign_mode PROTO((int mode)); 123 int gfits_stripwhite PROTO((char *string)); 124 int gfits_vscan PROTO((Header *header, char *field, char *mode, int N, va_list argp)); 125 int gfits_write_header PROTO((char *filename, Header *header)); 126 int gfits_matrix_size PROTO((Header *header)); 130 127 131 128 /******************************* Matrix functions *************/ 132 int gfits_read_matrix PROTO((char *, Matrix *)); 133 int gfits_read_portion PROTO((char *filename, Matrix *matrix, int Nskip, int Npix)); 134 void gfits_free_matrix PROTO((Matrix *)); 135 int gfits_copy_matrix PROTO((Matrix *, Matrix *)); 136 int gfits_write_matrix PROTO((char *,Matrix *)); 137 int gfits_create_matrix PROTO((Header *, Matrix *)); 138 double gfits_get_matrix_value PROTO((Matrix *, int, int)); 139 void gfits_set_matrix_value PROTO((Matrix *, int, int, double)); 140 void gfits_add_matrix_value PROTO((Matrix *, int, int, double)); 141 int gfits_multiply_matrix PROTO((Matrix *, Matrix *, Matrix *)); 142 int gfits_divide_matrix PROTO((Matrix *, Matrix *, Matrix *)); 143 void gfits_insert_array PROTO((Matrix *, Matrix *, int, int)); 144 int gfits_load_matrix PROTO((FILE *f, Matrix *matrix, Header *header)); 145 int gfits_fread_matrix PROTO((FILE *f, Matrix *matrix, Header *header)); 146 int gfits_read_matrix_segment PROTO((char *filename, Matrix *matrix, char *region)); 147 int gfits_fread_matrix_segment PROTO((FILE *f, Matrix *matrix, Header *header, char *region)); 148 int gfits_convert_format PROTO((Header *header, Matrix *matrix, int outBitpix, double outScale, double outZero, int outUnsign)); 129 130 void gfits_add_matrix_value PROTO((Matrix *matrix, int x, int y, double value)); 131 int gfits_convert_format PROTO((Header *header, Matrix *matrix, int outBitpix, double outScale, double outZero, int outUnsign)); 132 int gfits_copy_matrix PROTO((Matrix *in, Matrix *out)); 133 int gfits_create_matrix PROTO((Header *header, Matrix *matrix)); 134 int gfits_divide_matrix PROTO((Matrix *M1, Matrix *M2, Matrix *M3)); 135 int gfits_fread_matrix PROTO((FILE *f, Matrix *matrix, Header *header)); 136 int gfits_fread_matrix_segment PROTO((FILE *f, Matrix *matrix, Header *header, char *region)); 137 void gfits_free_matrix PROTO((Matrix *matrix)); 138 int gfits_fwrite_matrix PROTO((FILE *f, Matrix *matrix)); 139 double gfits_get_matrix_value PROTO((Matrix *matrix, int x, int y)); 140 void gfits_insert_array PROTO((Matrix *matrix, Matrix *array, int x, int y)); 141 int gfits_load_matrix PROTO((FILE *f, Matrix *matrix, Header *header)); 142 int gfits_multiply_matrix PROTO((Matrix *M1, Matrix *M2, Matrix *M3)); 143 int gfits_read_matrix PROTO((char *filename, Matrix *matrix)); 144 int gfits_read_matrix_segment PROTO((char *filename, Matrix *matrix, char *region)); 145 int gfits_read_portion PROTO((char *filename, Matrix *matrix, int Nskip, int Npix)); 146 void gfits_set_matrix_value PROTO((Matrix *matrix, int x, int y, double value)); 147 int gfits_write_matrix PROTO((char *filename, Matrix *matrix)); 149 148 150 149 /******************************* Table functions *************/ 151 int gfits_load_Theader PROTO((FILE *f, Header *Theader));152 int gfits_read_Theader PROTO((char *, Header *));153 int gfits_read_table PROTO((char *, FTable *));154 int gfits_read_table PROTO((char *, FTable *));155 int gfits_write_Theader PROTO((char *, Header *header));156 int gfits_write_table PROTO((char *, FTable *));157 int gfits_fwrite_table PROTO((FILE *f, FTable *table));158 int gfits_fwrite_vtable PROTO((FILE *f, VTable *table));159 150 160 int gfits_bintable_format PROTO((char *, char *, int *, int *)); 161 int gfits_table_format PROTO((char *, char *, int *, int *)); 162 int gfits_save_header PROTO((FILE *, Header *header)); 163 int gfits_set_bintable_column PROTO((Header *header, FTable *table, char *, void *, int)); 164 int gfits_set_table_column PROTO((Header *header, FTable *table, char *, void *, int)); 165 int gfits_define_bintable_column PROTO((Header *header, char *, char *, char *, char *, double, double)); 166 int gfits_define_table_column PROTO((Header *header, char *, char *, char *, char *)); 167 int gfits_read_ftable PROTO((char *filename, FTable *table, char *extname)); 151 char *gfits_table_print PROTO((FTable *ftable,...)); 152 int gfits_add_rows PROTO((FTable *ftable, char *data, int Nrow, int Nbytes)); 153 int gfits_bintable_format PROTO((char *format, char *type, int *Nval, int *Nbytes)); 154 int gfits_create_table PROTO((Header *header, FTable *ftable)); 155 int gfits_create_table_header PROTO((Header *header, char *type, char *extname)); 156 int gfits_define_bintable_column PROTO((Header *header, char *format, char *label, char *comment, char *unit, double bscale, double bzero)); 157 int gfits_define_table_column PROTO((Header *header, char *format, char *label, char *comment, char *unit)); 158 int gfits_fread_ftable PROTO((FILE *f, FTable *ftable, char *extname)); 159 int gfits_fread_ftable_data PROTO((FILE *f, FTable *ftable)); 160 int gfits_fread_vtable PROTO((FILE *f, VTable *vtable, char *extname, int Nrow, int *row)); 161 int gfits_fread_vtable_range PROTO((FILE *f, VTable *vtable, int start, int Nrows)); 162 int gfits_free_table PROTO((FTable *ftable)); 163 int gfits_free_vtable PROTO((VTable *vtable)); 164 int gfits_fwrite_table PROTO((FILE *f, FTable *table)); 165 int gfits_fwrite_vtable PROTO((FILE *f, VTable *table)); 166 int gfits_get_bintable_column PROTO((Header *header, FTable *table, char *label, void **data)); 167 int gfits_get_bintable_column_type PROTO((Header *header, char *label, char *type, int *Nval)); 168 int gfits_get_table_column PROTO((Header *header, FTable *table, char *label, void **data)); 169 int gfits_get_table_column_type PROTO((Header *header, char *label, char *type)); 170 int gfits_read_ftable PROTO((char *filename, FTable *table, char *extname)); 171 int gfits_read_table PROTO((char *filename, FTable *ftable)); 172 int gfits_set_bintable_column PROTO((Header *header, FTable *table, char *label, void *data, int Nrow)); 173 int gfits_set_table_column PROTO((Header *header, FTable *table, char *label, void *data, int Nrow)); 174 int gfits_table_column PROTO((FTable *ftable, char *field, char *mode,...)); 175 int gfits_table_format PROTO((char *format, char *type, int *Nval, int *Nbytes)); 176 int gfits_table_scale_data PROTO((FTable *ftable)); 177 int gfits_table_scale_storage PROTO((FTable *ftable)); 178 int gfits_table_to_vtable PROTO((FTable *ftable, VTable *vtable, int start, int Nkeep)); 179 int gfits_vadd_rows PROTO((VTable *vtable, char *data, int Nrow, int Nbytes)); 180 int gfits_vtable_from_ftable PROTO((FTable *ftable, VTable *vtable, int *row, int Nrow)); 181 int gfits_write_table PROTO((char *filename, FTable *ftable)); 168 182 169 int gfits_free_table PROTO((FTable *table)); 170 int gfits_free_vtable PROTO((VTable *table)); 171 int gfits_create_Theader PROTO((Header *header, char *type)); 172 173 /* prototyping demanded for these four -- could be a problem on non-ANSI comp comp */ 174 int gfits_scan PROTO((Header *, char *, char *, int,...)); 175 int gfits_print PROTO((Header *, char *, char *, int,...)); 176 int gfits_modify PROTO((Header *, char *, char *, int,...)); 177 int gfits_table_column PROTO((FTable *, char *, char *,...)); 178 int gfits_table_column PROTO((FTable *table, char *, char *,...)); 179 180 char *gfits_keyword_end PROTO((char *line)); 181 int gfits_vscan PROTO((Header *header, char *field, char *mode, int N, va_list argp)); 182 int gfits_scan PROTO((Header *header, char *field, char *mode, int N,...)); 183 int gfits_stripwhite PROTO((char *string)); 184 int gfits_matrix_size PROTO((Header *header)); 185 186 int gfits_get_bintable_column_type PROTO((Header *header, char *label, char *type, int *Nval)); 187 int gfits_get_bintable_column PROTO((Header *header, FTable *table, char *label, void **data)); 188 int gfits_get_table_column_type PROTO((Header *header, char *label, char *type)); 189 int gfits_get_table_column PROTO((Header *header, FTable *table, char *label, void **data)); 183 int gfits_create_Theader PROTO((Header *header, char *type)); 184 int gfits_fread_Theader PROTO((FILE *f, Header *header)); 185 int gfits_fwrite_Theader PROTO((FILE *f, Header *header)); 186 int gfits_load_Theader PROTO((FILE *f, Header *header)); 187 int gfits_read_Theader PROTO((char *filename, Header *header)); 188 int gfits_write_Theader PROTO((char *filename, Header *header)); 190 189 191 190 #endif /* FITSIO */
Note:
See TracChangeset
for help on using the changeset viewer.
