Changeset 29537 for trunk/Ohana/src/libautocode/def/autocode.c
- Timestamp:
- Oct 25, 2010, 12:36:40 PM (16 years ago)
- File:
-
- 1 edited
-
trunk/Ohana/src/libautocode/def/autocode.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Ohana/src/libautocode/def/autocode.c
r29001 r29537 25 25 } 26 26 27 $STRUCT *gfits_downsize_and_convert_$STRUCT ($STRUCT *data, off_t size, off_t nitems) {28 29 off_t i;30 unsigned char *byte, tmp;31 $STRUCT *output;32 33 if ($SIZE > size) {34 fprintf (stderr, "ERROR: uncorrectable mismatch in data types $STRUCT: "OFF_T_FMT" vs %d\n", size, $SIZE);35 exit (1);36 }37 38 // allocate a new array39 ALLOCATE (output, $STRUCT, nitems);40 for (i = 0; i < nitems; i++) {41 memcpy (&output[i], &data[i], $SIZE);42 }43 44 /* provide initial values to avoid compiler warnings for non-BYTE_SWAP arch */45 i = tmp = 0;46 byte = NULL;47 48 # ifdef BYTE_SWAP49 byte = (unsigned char *) output;50 for (i = 0; i < nitems; i++, byte += size) {51 /** BYTE SWAP **/52 }53 # endif54 55 return (output);56 }57 58 27 /*** add test of EXTNAME and header-defined columns? ***/ 59 28 /* return internal structure representation */ … … 61 30 62 31 int Ncols; 63 $STRUCT *data , *output;32 $STRUCT *data; 64 33 65 34 Ncols = ftable[0].header[0].Naxis[0]; … … 73 42 if ((swapped == NULL) || (*swapped == FALSE)) { 74 43 if (!gfits_convert_$STRUCT (data, sizeof ($STRUCT), *Ndata)) { 75 output = gfits_downsize_and_convert_$STRUCT (data, sizeof ($STRUCT), *Ndata); 76 free (ftable[0].buffer); 77 ftable[0].buffer = (char *) output; 78 // XXX do I need to change NX? 44 return NULL; 79 45 } 80 46 gfits_table_scale_data (ftable);
Note:
See TracChangeset
for help on using the changeset viewer.
