Changeset 27435 for trunk/Ohana/src/libfits/include/gfitsio.h
- Timestamp:
- Mar 24, 2010, 11:22:25 AM (16 years ago)
- Location:
- trunk/Ohana
- Files:
-
- 2 edited
-
. (modified) (1 prop)
-
src/libfits/include/gfitsio.h (modified) (12 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Ohana
-
Property svn:mergeinfo
set to
/branches/eam_branches/20091201/Ohana merged eligible /branches/eam_branches/largefiles.20100314/Ohana merged eligible
-
Property svn:mergeinfo
set to
-
trunk/Ohana/src/libfits/include/gfitsio.h
r21059 r27435 44 44 45 45 typedef struct { 46 int simple; 47 int unsign; 48 int extend; 49 int bitpix; 50 int Naxes; 51 intNaxis[FT_MAX_NAXES];52 intsize;46 int simple; // T or F 47 int unsign; // T or F 48 int extend; // T or F 49 int bitpix; // 8, 16, 32, 64, or -32, -64 50 int Naxes; // < FT_MAX_NAXES (10) 51 off_t Naxis[FT_MAX_NAXES]; 52 off_t datasize; 53 53 int pcount; 54 54 int gcount; … … 65 65 int bitpix; 66 66 int Naxes; 67 intNaxis[FT_MAX_NAXES];68 intsize;67 off_t Naxis[FT_MAX_NAXES]; 68 off_t datasize; 69 69 double bzero; 70 70 double bscale; … … 76 76 Header *header; 77 77 char *buffer; 78 intsize;78 off_t datasize; 79 79 } FTable; 80 80 … … 83 83 Header *header; 84 84 char **buffer; 85 intNrow;86 int*row;87 intsize; /* total buffer size */88 intpad; /* bytes of padding at the end */85 off_t Nrow; 86 off_t *row; 87 off_t datasize; /* total buffer size */ 88 off_t pad; /* bytes of padding at the end */ 89 89 } VTable; 90 90 91 91 typedef struct { 92 int maxlen; // max size of all table rows 93 int nbytes; // number of bytes per column element 94 int Nstart; // byte offset of this column 95 int heap_start; // byte offset to start of HEAP 96 char format; // data format character (one of: XLABIJEDCM) 92 int maxlen; // max size of all table rows 93 int nbytes; // number of bytes per column element 94 int Nstart; // byte offset of this column relative to first column 95 off_t heap_start; // byte offset to start of HEAP 96 char format; // data format character (one of: XLABIJEDCM) 97 char mode; // access data pointer type (one of P or Q) 97 98 } VarLengthColumn; 98 99 … … 106 107 107 108 char *gfits_header_field PROTO((Header *header, char *field, int N)); 108 char *gfits_header_lineno PROTO((Header *header, int N));109 char *gfits_header_lineno PROTO((Header *header, off_t N)); 109 110 char *gfits_keyword_end PROTO((char *line)); 110 111 int gfits_copy_header PROTO((Header *in, Header *out)); … … 118 119 int gfits_init_header PROTO((Header *header)); 119 120 int gfits_load_header PROTO((FILE *f, Header *header)); 120 int gfits_modify PROTO((Header *header, char *field, char *mode, int N,...)); 121 int gfits_print PROTO((Header *header, char *field, char *mode, int N,...)); 121 int gfits_modify PROTO((Header *header, char *field, char *mode, int N,...)) OHANA_FORMAT(printf, 3, 5); 122 int gfits_print PROTO((Header *header, char *field, char *mode, int N,...)) OHANA_FORMAT(printf, 3, 5); 123 int gfits_modify_alt PROTO((Header *header, char *field, char *mode, int N,...)); 124 int gfits_print_alt PROTO((Header *header, char *field, char *mode, int N,...)); 122 125 int gfits_read_Xheader PROTO((char *filename, Header *header, int N)); 123 126 int gfits_read_header PROTO((char *filename, Header *header)); 124 127 int gfits_save_header PROTO((FILE *f, Header *header)); 125 int gfits_scan PROTO((Header *header, char *field, char *mode, int N,...)); 128 int gfits_scan PROTO((Header *header, char *field, char *mode, int N,...)) OHANA_FORMAT(scanf, 3, 5); 129 int gfits_scan_alt PROTO((Header *header, char *field, char *mode, int N,...)); 126 130 int gfits_set_unsign_mode PROTO((int mode)); 127 131 int gfits_stripwhite PROTO((char *string)); 128 132 int gfits_vscan PROTO((Header *header, char *field, char *mode, int N, va_list argp)); 133 int gfits_vscan_alt PROTO((Header *header, char *field, char *mode, int N, va_list argp)); 129 134 int gfits_write_header PROTO((char *filename, Header *header)); 130 intgfits_data_size PROTO((Header *header));131 intgfits_data_min_size PROTO((Header *header));135 off_t gfits_data_size PROTO((Header *header)); 136 off_t gfits_data_min_size PROTO((Header *header)); 132 137 int gfits_extended_to_primary PROTO((Header *header, int simple, char *comment)); 133 138 int gfits_primary_to_extended PROTO((Header *header, char *exttype, char *comment)); … … 143 148 /******************************* Matrix functions *************/ 144 149 145 void gfits_add_matrix_value PROTO((Matrix *matrix, int x, int y, double value));150 void gfits_add_matrix_value PROTO((Matrix *matrix, off_t x, off_t y, double value)); 146 151 int gfits_convert_format PROTO((Header *header, Matrix *matrix, int outBitpix, double outScale, double outZero, int inBlank, int outUnsign)); 147 152 int gfits_copy_matrix PROTO((Matrix *in, Matrix *out)); … … 152 157 void gfits_free_matrix PROTO((Matrix *matrix)); 153 158 int gfits_fwrite_matrix PROTO((FILE *f, Matrix *matrix)); 154 double gfits_get_matrix_value PROTO((Matrix *matrix, int x, int y));155 void gfits_insert_ array PROTO((Matrix *matrix, Matrix *array, int x, int y));159 double gfits_get_matrix_value PROTO((Matrix *matrix, off_t x, off_t y)); 160 void gfits_insert_matrix PROTO((Matrix *matrix, Matrix *array, off_t x, off_t y)); 156 161 int gfits_load_matrix PROTO((FILE *f, Matrix *matrix, Header *header)); 157 162 int gfits_multiply_matrix PROTO((Matrix *M1, Matrix *M2, Matrix *M3)); 158 163 int gfits_read_matrix PROTO((char *filename, Matrix *matrix)); 159 164 int gfits_read_matrix_segment PROTO((char *filename, Matrix *matrix, char *region)); 160 int gfits_read_portion PROTO((char *filename, Matrix *matrix, int Nskip, int Npix));161 void gfits_set_matrix_value PROTO((Matrix *matrix, int x, int y, double value));165 int gfits_read_portion PROTO((char *filename, Matrix *matrix, off_t Nskip, off_t Npix)); 166 void gfits_set_matrix_value PROTO((Matrix *matrix, off_t x, off_t y, double value)); 162 167 int gfits_write_matrix PROTO((char *filename, Matrix *matrix)); 163 168 int gfits_uncompress_image PROTO((Header *header, Matrix *matrix, FTable *ftable)); … … 166 171 int gfits_byteswap_zdata PROTO((char *zdata, int Nzdata, int bitpix)); 167 172 int gfits_extension_is_compressed PROTO((Header *header)); 168 intgfits_tile_size PROTO((Matrix *matrix, int *otile, int *ztile));173 off_t gfits_tile_size PROTO((Matrix *matrix, int *otile, int *ztile)); 169 174 int gfits_uncompressed_data_pixsize PROTO((char *cmptype, int out_bitpix, char **optname, char **optvalue, int Noptions)); 170 175 int gfits_vartable_heap_pixsize PROTO((char format)); … … 173 178 174 179 char *gfits_table_print PROTO((FTable *ftable,...)); 175 int gfits_add_rows PROTO((FTable *ftable, char *data, int Nrow, int Nbytes));180 int gfits_add_rows PROTO((FTable *ftable, char *data, off_t Nrow, off_t Nbytes)); 176 181 int gfits_bintable_format PROTO((char *format, char *type, int *Nval, int *Nbytes)); 177 182 int gfits_create_table PROTO((Header *header, FTable *ftable)); … … 181 186 int gfits_fread_ftable PROTO((FILE *f, FTable *ftable, char *extname)); 182 187 int gfits_fread_ftable_data PROTO((FILE *f, FTable *ftable)); 183 int gfits_fread_ftable_range PROTO((FILE *f, FTable *ftable, int start, int Nrows));184 int gfits_fread_vtable PROTO((FILE *f, VTable *vtable, char *extname, int Nrow, int *row));185 int gfits_fread_vtable_range PROTO((FILE *f, VTable *vtable, int start, int Nrows));188 int gfits_fread_ftable_range PROTO((FILE *f, FTable *ftable, off_t start, off_t Nrows)); 189 int gfits_fread_vtable PROTO((FILE *f, VTable *vtable, char *extname, off_t Nrow, off_t *row)); 190 int gfits_fread_vtable_range PROTO((FILE *f, VTable *vtable, off_t start, off_t Nrows)); 186 191 int gfits_free_table PROTO((FTable *ftable)); 187 192 int gfits_free_vtable PROTO((VTable *vtable)); 188 193 int gfits_fwrite_table PROTO((FILE *f, FTable *table)); 189 194 int gfits_fwrite_vtable PROTO((FILE *f, VTable *table)); 190 int gfits_fwrite_ftable_range PROTO((FILE *f, FTable *table, int start, int Nrows, int Ndisk, int Ntotal));195 int gfits_fwrite_ftable_range PROTO((FILE *f, FTable *table, off_t start, off_t Nrows, off_t Ndisk, off_t Ntotal)); 191 196 int gfits_get_bintable_column PROTO((Header *header, FTable *table, char *label, void **data)); 192 197 int gfits_get_bintable_column_type PROTO((Header *header, char *label, char *type, int *Nval)); 193 void *gfits_get_bintable_column_data PROTO((Header *header, FTable *table, char *label, char *type, int *Nrow, int *Ncol));198 void *gfits_get_bintable_column_data PROTO((Header *header, FTable *table, char *label, char *type, off_t *Nrow, int *Ncol)); 194 199 int gfits_get_table_column PROTO((Header *header, FTable *table, char *label, void **data)); 195 200 int gfits_get_table_column_type PROTO((Header *header, char *label, char *type)); 196 201 int gfits_read_ftable PROTO((char *filename, FTable *table, char *extname)); 197 202 int gfits_read_table PROTO((char *filename, FTable *ftable)); 198 int gfits_set_bintable_column PROTO((Header *header, FTable *table, char *label, void *data, int Nrow));199 int gfits_set_table_column PROTO((Header *header, FTable *table, char *label, void *data, int Nrow));200 int gfits_table_column PROTO((FTable *ftable, char *field, char *mode,...)) ;203 int gfits_set_bintable_column PROTO((Header *header, FTable *table, char *label, void *data, off_t Nrow)); 204 int gfits_set_table_column PROTO((Header *header, FTable *table, char *label, void *data, off_t Nrow)); 205 int gfits_table_column PROTO((FTable *ftable, char *field, char *mode,...)) OHANA_FORMAT(printf, 3, 4); 201 206 int gfits_table_format PROTO((char *format, char *type, int *Nval, int *Nbytes)); 202 207 int gfits_table_scale_data PROTO((FTable *ftable)); 203 208 int gfits_table_scale_storage PROTO((FTable *ftable)); 204 int gfits_table_to_vtable PROTO((FTable *ftable, VTable *vtable, int start, int Nkeep));205 int gfits_vadd_rows PROTO((VTable *vtable, char *data, int Nrow, int Nbytes));206 int gfits_vtable_from_ftable PROTO((FTable *ftable, VTable *vtable, int *row, int Nrow));209 int gfits_table_to_vtable PROTO((FTable *ftable, VTable *vtable, off_t start, off_t Nkeep)); 210 int gfits_vadd_rows PROTO((VTable *vtable, char *data, off_t Nrow, off_t Nbytes)); 211 int gfits_vtable_from_ftable PROTO((FTable *ftable, VTable *vtable, off_t *row, off_t Nrow)); 207 212 int gfits_write_table PROTO((char *filename, FTable *ftable)); 208 213 … … 215 220 216 221 int gfits_varlength_column_define PROTO((FTable *ftable, VarLengthColumn *def, int column)); 217 void *gfits_varlength_column_pointer PROTO((FTable *ftable, VarLengthColumn *column, int row, int *length));222 void *gfits_varlength_column_pointer PROTO((FTable *ftable, VarLengthColumn *column, off_t row, off_t *length)); 218 223 219 224 #endif /* FITSIO */
Note:
See TracChangeset
for help on using the changeset viewer.
