Changeset 3490
- Timestamp:
- Mar 23, 2005, 6:17:36 PM (21 years ago)
- File:
-
- 1 edited
-
trunk/Ohana/src/libfits/table/F_table_format.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Ohana/src/libfits/table/F_table_format.c
r3400 r3490 80 80 } 81 81 82 /** *********************/82 /** extract a table subset to a vtable ***/ 83 83 int fits_table_to_vtable (FTable *ftable, VTable *vtable, int start, int Nkeep) { 84 84 … … 110 110 111 111 return (TRUE); 112 } 113 114 /** convert specified rows to vtable */ 115 int fits_vtable_from_ftable (FTable *ftable, VTable *vtable, int *row, int Nrow) { 116 117 int i, N, Nx, Ny; 118 119 fits_scan (ftable[0].header, "NAXIS1", "%d", 1, &Nx); 120 fits_scan (ftable[0].header, "NAXIS2", "%d", 1, &Ny); 121 122 /* make empty vtable from table */ 123 vtable[0].header = ftable[0].header; /* make this a copy? */ 124 vtable[0].size = ftable[0].size; 125 vtable[0].pad = vtable[0].size - Nx*Ny; 126 vtable[0].Nrow = Ny; 127 128 /* insert selected rows in vtable (mask rows marked with -1) */ 129 ALLOCATE (vtable[0].row, int, Nrow); 130 ALLOCATE (vtable[0].buffer, char *, Nrow); 131 for (N = i = 0; i < Nrow; i++) { 132 if (row[i] == -1) continue; 133 vtable[0].row[N] = row[i]; 134 ALLOCATE (vtable[0].buffer[N], char, Nx); 135 memcpy (vtable[0].buffer[N], &ftable[0].buffer[Nx*row[i]], Nx); 136 N++; 137 } 138 vtable[0].Nrow = N; 139 return (vtable); 112 140 } 113 141
Note:
See TracChangeset
for help on using the changeset viewer.
