Changeset 39574
- Timestamp:
- May 13, 2016, 9:54:58 AM (10 years ago)
- Location:
- trunk/Ohana/src
- Files:
-
- 3 edited
-
libdvo/src/dbExtractAverages.c (modified) (10 diffs)
-
libdvo/src/dvo_photcode_ops.c (modified) (1 diff)
-
opihi/dvo/avextract.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Ohana/src/libdvo/src/dbExtractAverages.c
r39531 r39574 223 223 case MAG_LEVEL_INST: 224 224 // find an appropriate measure (if one exists) 225 for (n = 0; n < average->Nmeasure; n++) {225 for (n = 0; measure && n < average->Nmeasure; n++) { 226 226 if (field->photcode->code != measure[n].photcode) continue; 227 227 value.Flt = PhotInst (&measure[n], field->magClass); … … 231 231 case MAG_LEVEL_CAT: 232 232 // find an appropriate measure (if one exists) 233 for (n = 0; n < average->Nmeasure; n++) {233 for (n = 0; measure && n < average->Nmeasure; n++) { 234 234 if (field->photcode->code != measure[n].photcode) continue; 235 235 value.Flt = PhotCat (&measure[n], field->magClass); … … 239 239 case MAG_LEVEL_SYS: 240 240 // find an appropriate measure (if one exists) 241 for (n = 0; n < average->Nmeasure; n++) {241 for (n = 0; measure && n < average->Nmeasure; n++) { 242 242 if (field->photcode->code != measure[n].photcode) continue; 243 243 value.Flt = PhotSys (&measure[n], average, secfilt, field->magClass); … … 247 247 case MAG_LEVEL_REL: 248 248 // find an appropriate measure (if one exists) 249 for (n = 0; n < average->Nmeasure; n++) {249 for (n = 0; measure && n < average->Nmeasure; n++) { 250 250 if (field->photcode->code != measure[n].photcode) continue; 251 251 value.Flt = PhotRel (&measure[n], average, secfilt, field->magClass); … … 270 270 case MAG_LEVEL_REL: 271 271 // find an appropriate measure (if one exists) 272 for (n = 0; n < average->Nmeasure; n++) {272 for (n = 0; measure && n < average->Nmeasure; n++) { 273 273 if (field->photcode->code != measure[n].photcode) continue; 274 274 value.Flt = PhotErr (&measure[n], field->magClass); … … 293 293 case MAG_LEVEL_INST: 294 294 // find an appropriate measure (if one exists) 295 for (n = 0; n < average->Nmeasure; n++) {295 for (n = 0; measure && n < average->Nmeasure; n++) { 296 296 if (field->photcode->code != measure[n].photcode) continue; 297 297 value.Flt = PhotFluxInst (&measure[n], field->magClass); … … 301 301 case MAG_LEVEL_CAT: 302 302 // find an appropriate measure (if one exists) 303 for (n = 0; n < average->Nmeasure; n++) {303 for (n = 0; measure && n < average->Nmeasure; n++) { 304 304 if (field->photcode->code != measure[n].photcode) continue; 305 305 value.Flt = PhotFluxCat (&measure[n], field->magClass); … … 309 309 case MAG_LEVEL_SYS: 310 310 // find an appropriate measure (if one exists) 311 for (n = 0; n < average->Nmeasure; n++) {311 for (n = 0; measure && n < average->Nmeasure; n++) { 312 312 if (field->photcode->code != measure[n].photcode) continue; 313 313 value.Flt = PhotFluxSys (&measure[n], average, secfilt, field->magClass); … … 317 317 case MAG_LEVEL_REL: 318 318 // find an appropriate measure (if one exists) 319 for (n = 0; n < average->Nmeasure; n++) {319 for (n = 0; measure && n < average->Nmeasure; n++) { 320 320 if (field->photcode->code != measure[n].photcode) continue; 321 321 value.Flt = PhotFluxRel (&measure[n], average, secfilt, field->magClass); … … 340 340 case MAG_LEVEL_REL: 341 341 // find an appropriate measure (if one exists) 342 for (n = 0; n < average->Nmeasure; n++) {342 for (n = 0; measure && n < average->Nmeasure; n++) { 343 343 if (field->photcode->code != measure[n].photcode) continue; 344 344 value.Flt = PhotFluxInstErr (&measure[n], field->magClass); -
trunk/Ohana/src/libdvo/src/dvo_photcode_ops.c
r39531 r39574 1915 1915 /*** lensing *********************************************************************************/ 1916 1916 1917 // lensobj points an Nsecfilt entries, if any exist. note comment in dvolens/src/update_objects_catalog.c:32 1918 // >> Nlensobj tracks how many lensobj entries have I actually generated so far for this 1919 // >> catalog This is not necessarily 1-to-1 with secfilt entries, but any average entry 1920 // >> will either have 0 or Nsecfilt lensobj entries 1921 1917 1922 # define LENSFIELD(NAME) \ 1918 float LensValue_##NAME (PhotCode *code, Lensobj *lensobj) { \ 1919 if (code == NULL) return NAN; \ 1920 int Ns = photcodes->hashNsec[code->code]; \ 1921 float value = (Ns == -1) ? NAN : lensobj[Ns].NAME; \ 1922 return (value); \ 1923 } 1923 float LensValue_##NAME (PhotCode *code, Lensobj *lensobj) { \ 1924 if (lensobj == NULL) return NAN; \ 1925 if (code == NULL) return NAN; \ 1926 int Ns = photcodes->hashNsec[code->code]; \ 1927 float value = (Ns == -1) ? NAN : lensobj[Ns].NAME; \ 1928 return (value); \ 1929 } 1924 1930 1925 1931 LENSFIELD(X11_sm_obj) -
trunk/Ohana/src/opihi/dvo/avextract.c
r39457 r39574 212 212 213 213 m = average->measureOffset; 214 Measure *measure = needMeasure ? &catalog.measure[m] : NULL;214 Measure *measure = needMeasure && average->Nmeasure ? &catalog.measure[m] : NULL; 215 215 216 216 m = average->lensobjOffset; 217 Lensobj *lensobj = needLensobj ? &catalog.lensobj[m] : NULL;217 Lensobj *lensobj = needLensobj && average->Nlensobj ? &catalog.lensobj[m] : NULL; 218 218 219 219 m = average->starparOffset; 220 StarPar *starpar = needStarpar ? &catalog.starpar[m] : NULL;220 StarPar *starpar = needStarpar && average->Nstarpar ? &catalog.starpar[m] : NULL; 221 221 222 222 m = average->galphotOffset; 223 GalPhot *galphot = needGalphot ? &catalog.galphot[m] : NULL;223 GalPhot *galphot = needGalphot && average->Ngalphot ? &catalog.galphot[m] : NULL; 224 224 225 225 m = j*Nsecfilt; … … 227 227 228 228 for (n = 0; n < Nfields; n++) { 229 // we are passing in the *first* measure, but average->Nmeasure gives the count 229 // for Measure, we are passing in the *first* measure, but average->Nmeasure gives the count 230 // for Secfilt, we are passing in the first entry; photcode.equiv gives the entry 231 // for Lensobj, we are passing in the first entry or NULL; photcode.equiv gives the entry 230 232 values[n] = dbExtractAverages (average, secfilt, measure, lensobj, starpar, galphot, &fields[n]); 231 233 }
Note:
See TracChangeset
for help on using the changeset viewer.
