Changeset 15487 for trunk/Ohana/src/libfits/table/F_read_T.c
- Timestamp:
- Nov 6, 2007, 5:09:52 PM (19 years ago)
- File:
-
- 1 edited
-
trunk/Ohana/src/libfits/table/F_read_T.c (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Ohana/src/libfits/table/F_read_T.c
r7054 r15487 41 41 42 42 /* skip to next header */ 43 Nbytes = gfits_ matrix_size (header);43 Nbytes = gfits_data_size (header); 44 44 fseek (f, Nbytes, SEEK_CUR); 45 45 gfits_free_header (header); … … 54 54 55 55 /* find buffer size */ 56 Nbytes = gfits_ matrix_size (table[0].header);56 Nbytes = gfits_data_size (table[0].header); 57 57 ALLOCATE (table[0].buffer, char, Nbytes); 58 58 … … 75 75 Nx = table[0].header[0].Naxis[0]; 76 76 Ny = table[0].header[0].Naxis[1]; 77 table[0].size = gfits_ matrix_size (table[0].header);77 table[0].size = gfits_data_size (table[0].header); 78 78 table[0].pad = table[0].size - Nx*Ny; 79 79 … … 120 120 121 121 /* find buffer size */ 122 Nbytes = gfits_ matrix_size (header);122 Nbytes = gfits_data_size (header); 123 123 124 124 /* check if this is the correct extension or not */ … … 152 152 ALLOCATE (table[0].row, int, MAX (1, Nrow)); 153 153 for (i = 0; i < Nrow; i++) table[0].row[i] = row[i]; 154 table[0].size = gfits_ matrix_size (table[0].header);154 table[0].size = gfits_data_size (table[0].header); 155 155 table[0].pad = table[0].size - Nx*Ny; 156 156 return (TRUE); 157 157 } 158 158 } 159 160 # if (0)161 /*********************** fits read table ***********************************/162 /* a poor function: read only the first table, regardless of name */163 /* keep until we are sure ohana code does not use it */164 int gfits_read_table (char *filename, FTable *table) {165 166 FILE *f;167 Header header;168 int status, i, nbytes, Nbytes, matrix_size;169 170 if (!gfits_read_header (filename, &header)) {171 fprintf (stderr, "error reading header of FITS file %s\n", filename);172 return (FALSE);173 }174 175 if (!gfits_read_Theader (filename, &table[0].header)) {176 fprintf (stderr, "error reading Theader of FITS file %s\n", filename);177 return (FALSE);178 }179 180 if ((f = fopen (filename, "r")) == NULL) {181 gfits_free_header (&header);182 gfits_free_header (&table[0].header);183 return (FALSE);184 }185 186 matrix_size = gfits_matrix_size (&header);187 188 Nbytes = header.size + matrix_size + table[0].header.size;189 fseek (f, Nbytes, 0);190 gfits_free_header (&header);191 192 gfits_scan (&table[0].header, "TFIELDS", "%d", 1, &table[0].Nfields);193 194 /* place the field sizes in the structure? */195 table[0].bitpix = table[0].header.bitpix;196 table[0].Naxes = table[0].header.Naxes;197 for (i = 0; i < FT_MAX_NAXES; i++)198 table[0].Naxis[i] = table[0].header.Naxis[i];199 200 Nbytes = gfits_matrix_size (&table[0].header);201 ALLOCATE (table[0].buffer, char, Nbytes);202 nbytes = fread (table[0].buffer, sizeof(char), Nbytes, f);203 if (nbytes != Nbytes) {204 fprintf (stderr, "error reading in table data from FITS file %s\n", filename);205 fclose (f);206 return (FALSE);207 }208 table[0].size = Nbytes;209 fclose (f);210 return (TRUE);211 }212 # endif213 214 159 215 160 int gfits_fread_header_extname (FILE *f, Header *header, char *extname) { … … 223 168 if (!strcasecmp (extname, "PHU")) return (TRUE); 224 169 225 Nbytes = gfits_ matrix_size (header);170 Nbytes = gfits_data_size (header); 226 171 fseek (f, Nbytes, SEEK_CUR); 227 172 … … 229 174 gfits_scan (header, "EXTNAME", "%s", 1, current); 230 175 if (!strcmp (current, extname)) return (TRUE); 231 Nbytes = gfits_ matrix_size (header);176 Nbytes = gfits_data_size (header); 232 177 fseek (f, Nbytes, SEEK_CUR); 233 178 }
Note:
See TracChangeset
for help on using the changeset viewer.
