Changeset 12321
- Timestamp:
- Mar 8, 2007, 11:42:19 AM (19 years ago)
- Location:
- branches/dvo-mods-2007-02/Ohana/src
- Files:
-
- 6 edited
-
libautocode/def/photcode.d (modified) (2 diffs)
-
libdvo/Makefile (modified) (1 diff)
-
libdvo/include/dvo.h (modified) (1 diff)
-
libdvo/src/LoadPhotcodes.c (modified) (1 diff)
-
libdvo/src/LoadPhotcodesFITS.c (modified) (4 diffs)
-
libdvo/src/LoadPhotcodesText.c (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/dvo-mods-2007-02/Ohana/src/libautocode/def/photcode.d
r6454 r12321 2 2 EXTNAME DVO_PHOTCODE 3 3 TYPE BINTABLE 4 SIZE 774 SIZE 80 5 5 DESCRIPTION DVO Photcode Description Table 6 6 … … 9 9 FIELD name, NAME, char[32], name for filter combination 10 10 FIELD type, TYPE, char, PRI/SEC/DEP/REF 11 FIELD dummy, DUMMY, char[3], padding 11 12 FIELD C, C_LAM, short, primary phot calibration terms (millimags) 12 13 FIELD dC, C_LAM_ERR, short, primary phot calibration terms (millimags) -
branches/dvo-mods-2007-02/Ohana/src/libdvo/Makefile
r12275 r12321 33 33 $(SRC)/LoadPhotcodesText.$(ARCH).o \ 34 34 $(SRC)/LoadPhotcodesFITS.$(ARCH).o \ 35 $(SRC)/SavePhotcodesText.$(ARCH).o \ 36 $(SRC)/SavePhotcodesFITS.$(ARCH).o \ 35 37 $(SRC)/imreg_datatypes.$(ARCH).o \ 36 38 $(SRC)/mosaic_astrom.$(ARCH).o \ -
branches/dvo-mods-2007-02/Ohana/src/libdvo/include/dvo.h
r12275 r12321 279 279 int LoadPhotcodesText (char *filename); 280 280 int LoadPhotcodesFITS (char *filename); 281 int SavePhotcodesText (char *filename); 282 int SavePhotcodesFITS (char *filename); 283 284 void PrintPhotcodeNamebyCode (FILE *f, char *format, int code); 281 285 282 286 int GetPhotcodeCodebyName (char *name); -
branches/dvo-mods-2007-02/Ohana/src/libdvo/src/LoadPhotcodes.c
r12274 r12321 7 7 8 8 /* next try to load the photcodes from the master text photcode file */ 9 if (LoadPhotcodesText (master_file)) return TRUE; 9 /* automatically (or on demand?) save the text file to the FITS version */ 10 if (LoadPhotcodesText (master_file)) { 11 if (!check_file_access (catdir_file, TRUE, TRUE)) return TRUE; 12 SavePhotcodesFITS (catdir_file); 13 return TRUE; 14 } 10 15 11 16 return FALSE; -
branches/dvo-mods-2007-02/Ohana/src/libdvo/src/LoadPhotcodesFITS.c
r12295 r12321 10 10 FITS_DB db; 11 11 12 int i, code, Ncode, Nsec ;12 int i, code, Ncode, Nsec, Nsecfilt; 13 13 14 14 /* XXX choose more sensible lock timeouts! */ … … 52 52 53 53 /* set up photcode indexes (see dvo_photcode_ops.c) */ 54 Nsec = 0;54 Nsecfilt = 0; 55 55 for (i = 0; i < Ncode; i++) { 56 56 if (photcode[i].type == PHOT_ALT) continue; /* no hashcode for ALT codes */ … … 65 65 table[0].hashcode[photcode[i].code] = i; 66 66 if (photcode[i].type == PHOT_SEC) { 67 table[0].hashNsec[photcode[i].code] = Nsec ;68 table[0].codeNsec[Nsec ] = photcode[i].code;69 Nsec ++;67 table[0].hashNsec[photcode[i].code] = Nsecfilt; 68 table[0].codeNsec[Nsecfilt] = photcode[i].code; 69 Nsecfilt ++; 70 70 } 71 71 } 72 72 73 /* validity check for references */ 73 // validity check for references 74 // photcode.equiv of 0 means "undefined" 74 75 for (i = 0; i < Ncode; i++) { 75 76 if (photcode[i].type == PHOT_DEP) { 76 if (photcode[i].equiv) { 77 Nsec = table[0].hashcode[photcode[i].equiv]; 78 if ((Nsec >= Ncode) || (Nsec < 0)) { 79 fprintf (stderr, "reference for dependent photcode is not in photcodes\n"); 80 free (photcode); 81 return FALSE; 82 } 77 if (photcode[i].equiv == 0) continue; 78 Nsec = table[0].hashcode[photcode[i].equiv]; 79 if ((Nsec >= Ncode) || (Nsec < 0)) { 80 fprintf (stderr, "reference for dependent photcode is not in photcodes\n"); 81 free (photcode); 82 return FALSE; 83 83 } 84 84 if (photcode[Nsec].type != PHOT_SEC) { … … 105 105 table[0].code = photcode; 106 106 table[0].Ncode = Ncode; 107 table[0].Nsecfilt = Nsec ;107 table[0].Nsecfilt = Nsecfilt; 108 108 109 109 return (TRUE); -
branches/dvo-mods-2007-02/Ohana/src/libdvo/src/LoadPhotcodesText.c
r12295 r12321 9 9 10 10 FILE *f; 11 int i, Nsec , Ncode, NPHOTCODE, Nfield;11 int i, Nsecfilt, Nsec, Ncode, NPHOTCODE, Nfield; 12 12 int code; 13 13 char *c; … … 60 60 photcode[Ncode].type = 0; 61 61 photcode[Ncode].code = code; 62 memset (photcode[Ncode].name, 0, 32); 62 63 strcpy (photcode[Ncode].name, name); 63 64 if (!strncasecmp (type, "pri", 3)) { … … 133 134 134 135 /* set up photcode indexes (see dvo_photcode_ops.c) */ 135 Nsec = 0;136 Nsecfilt = 0; 136 137 for (i = 0; i < Ncode; i++) { 137 138 if (photcode[i].type == PHOT_ALT) continue; /* no hashcode for ALT codes */ … … 146 147 table[0].hashcode[photcode[i].code] = i; 147 148 if (photcode[i].type == PHOT_SEC) { 148 table[0].hashNsec[photcode[i].code] = Nsec ;149 table[0].codeNsec[Nsec ] = photcode[i].code;150 Nsec ++;151 } 152 } 153 table[0].Nsecfilt = Nsec; 154 155 / * validity check for references */149 table[0].hashNsec[photcode[i].code] = Nsecfilt; 150 table[0].codeNsec[Nsecfilt] = photcode[i].code; 151 Nsecfilt ++; 152 } 153 } 154 155 // validity check for references 156 // photcode.equiv of 0 means "undefined" 156 157 for (i = 0; i < Ncode; i++) { 157 158 if (photcode[i].type == PHOT_DEP) { 158 // photcode.equiv of 0 means "undefined" 159 if (photcode[i].equiv) { 160 Nsec = table[0].hashcode[photcode[i].equiv]; 161 if ((Nsec >= Ncode) || (Nsec < 0)) { 162 fprintf (stderr, "reference for dependent photcode is not a valid photcode\n"); 163 free (photcode); 164 return (FALSE); 165 } 166 if (photcode[Nsec].type != PHOT_SEC) { 167 fprintf (stderr, "reference for dependent photcode is not an average photcode\n"); 168 free (photcode); 169 return (FALSE); 170 } 159 if (photcode[i].equiv == 0) continue; 160 Nsec = table[0].hashcode[photcode[i].equiv]; 161 if ((Nsec >= Ncode) || (Nsec < 0)) { 162 fprintf (stderr, "reference for dependent photcode is not a valid photcode\n"); 163 free (photcode); 164 return (FALSE); 165 } 166 if (photcode[Nsec].type != PHOT_SEC) { 167 fprintf (stderr, "reference for dependent photcode is not an average photcode\n"); 168 free (photcode); 169 return (FALSE); 171 170 } 172 171 } … … 185 184 } 186 185 } 187 table[0].code = photcode; 188 table[0].Ncode = Ncode; 186 table[0].code = photcode; 187 table[0].Ncode = Ncode; 188 table[0].Nsecfilt = Nsecfilt; 189 189 190 190 return (TRUE);
Note:
See TracChangeset
for help on using the changeset viewer.
