Changeset 14461
- Timestamp:
- Aug 9, 2007, 4:25:26 PM (19 years ago)
- File:
-
- 1 edited
-
trunk/psModules/src/config/pmConfigCamera.c (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psModules/src/config/pmConfigCamera.c
r13857 r14461 80 80 psFree(new); 81 81 82 return true; 83 } 84 85 // Don't update these skycell concepts; last one MUST be 0 (i.e., NULL). 86 const static char *skycellConceptsCell[] = { "CELL.BIASSEC", "CELL.TRIMSEC", "CELL.READDIR", "CELL.XPARITY", 87 "CELL.YPARITY", "CELL.XWINDOW", "CELL.YWINDOW", "CELL.X0", 88 "CELL.Y0", "CELL.XSIZE", "CELL.YSIZE", 0 }; 89 const static char *skycellConceptsChip[] = { "CHIP.XPARITY", "CHIP.YPARITY", "CHIP.XSIZE", "CHIP.YSIZE", 0 }; 90 91 // Do we update a particular concept? 92 static bool updateConcept(const char *name, // Name of concept 93 const char **concepts // List of concepts NOT to update 94 ) 95 { 96 for (int i = 0; concepts[i]; i++) { 97 if (strcmp(name, concepts[i]) == 0) { 98 return false; 99 } 100 } 82 101 return true; 83 102 } … … 189 208 iter = psListIteratorAlloc(concepts, PS_LIST_HEAD, false); 190 209 while ((name = psListGetAndIncrement(iter))) { 191 psMetadataAddStr(translation, PS_LIST_TAIL, name, 0, NULL, name); 210 if (updateConcept(name, skycellConceptsChip)) { 211 psMetadataAddStr(translation, PS_LIST_TAIL, name, 0, NULL, name); 212 } 192 213 } 193 214 psFree(iter); … … 197 218 iter = psListIteratorAlloc(concepts, PS_LIST_HEAD, false); 198 219 while ((name = psListGetAndIncrement(iter))) { 199 // We've done CELL.BIASSEC and CELL.TRIMSEC under CELLS, above. 200 // CELL.READDIR is set to 1 (rows) in the defaults 201 if (strcmp(name, "CELL.BIASSEC") != 0 && strcmp(name, "CELL.TRIMSEC") != 0 && 202 strcmp(name, "CELL.READDIR") != 0) { 220 if (updateConcept(name, skycellConceptsCell)) { 203 221 psMetadataAddStr(translation, PS_LIST_TAIL, name, 0, NULL, name); 204 222 } … … 206 224 psFree(iter); 207 225 psFree(concepts); 226 227 psMetadataAddStr(translation, PS_LIST_TAIL, "CELL.XSIZE", 0, NULL, "NAXIS1"); 228 psMetadataAddStr(translation, PS_LIST_TAIL, "CELL.YSIZE", 0, NULL, "NAXIS2"); 229 psMetadataAddStr(translation, PS_LIST_TAIL, "CELL.XWINDOW", 0, NULL, "NAXIS1"); 230 psMetadataAddStr(translation, PS_LIST_TAIL, "CELL.YWINDOW", 0, NULL, "NAXIS2"); 231 psMetadataAddStr(translation, PS_LIST_TAIL, "CHIP.XSIZE", 0, NULL, "NAXIS1"); 232 psMetadataAddStr(translation, PS_LIST_TAIL, "CHIP.YSIZE", 0, NULL, "NAXIS2"); 208 233 209 234 psMetadataAddMetadata(format, PS_LIST_TAIL, "TRANSLATION", 0, "How to translate the FITS headers", … … 214 239 { 215 240 psMetadata *defaults = psMetadataAlloc(); // Default values for concepts 241 242 psMetadataAddS32(defaults, PS_LIST_TAIL, "CELL.XPARITY", 0, NULL, 1); 243 psMetadataAddS32(defaults, PS_LIST_TAIL, "CELL.YPARITY", 0, NULL, 1); 244 psMetadataAddS32(defaults, PS_LIST_TAIL, "CHIP.XPARITY", 0, NULL, 1); 245 psMetadataAddS32(defaults, PS_LIST_TAIL, "CHIP.YPARITY", 0, NULL, 1); 246 psMetadataAddS32(defaults, PS_LIST_TAIL, "CELL.Y0", 0, NULL, 0); 247 psMetadataAddS32(defaults, PS_LIST_TAIL, "CELL.X0", 0, NULL, 0); 248 psMetadataAddS32(defaults, PS_LIST_TAIL, "CHIP.Y0", 0, NULL, 0); 249 psMetadataAddS32(defaults, PS_LIST_TAIL, "CHIP.X0", 0, NULL, 0); 216 250 psMetadataAddS32(defaults, PS_LIST_TAIL, "CELL.READDIR", 0, "Read direction (rows)", 1); 251 217 252 psMetadataAddMetadata(format, PS_LIST_TAIL, "DEFAULTS", 0, "Default values for concepts", defaults); 218 253 psFree(defaults); 254 219 255 } 220 256
Note:
See TracChangeset
for help on using the changeset viewer.
