Changeset 37525
- Timestamp:
- Oct 22, 2014, 12:39:00 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/eam_branches/ipp-20140904/Ohana/src/dvomerge/src/dvorepairDeleteImagesByExternID.c
r37500 r37525 14 14 // * rebuild the cpt file or delete the matching entries? 15 15 16 int SaveImageTable (Image *image, off_t Nimage, char *catdir );16 int SaveImageTable (Image *image, off_t Nimage, char *catdir, FITS_DB *oldDB); 17 17 Image *DeleteSelectedImages (Image *image, off_t Nimage, int *deleteImage, myIndexType *imageIDindex, off_t *NnewImage); 18 18 … … 103 103 int *deleteIDs = ReadDeleteListExternID(delList, &NdeleteIDs); 104 104 105 int NdeleteImages = 0; 105 106 for (i = 0; i < NdeleteIDs; i++) { 106 107 int externID = deleteIDs[i]; … … 116 117 } 117 118 deleteImage[n] = TRUE; 119 NdeleteImages ++; 118 120 119 121 if (VERBOSE) fprintf (stderr, "delete extern ID: %d = image ID %d (seq %d)\n", externID, image[n].imageID, n); 122 } 123 124 if (NdeleteImages == 0) { 125 fprintf (stderr, "no images to be deleted in this database, exiting\n"); 126 exit (0); 120 127 } 121 128 … … 195 202 ALLOCATE(cptFilenameTgt, char, strlen(catdir) + 64); 196 203 ALLOCATE(cpsFilenameTgt, char, strlen(catdir) + 64); 204 205 int NdeleteTotal = 0; 197 206 198 207 for (raPass = 0; raPass < nPass; raPass++) { … … 305 314 } 306 315 316 NdeleteTotal += Ndelete; 317 307 318 // if we actually want to delete any measurements, write out a new cpm file 308 319 if (Ndelete > 0) { … … 368 379 } 369 380 381 fprintf (stderr, "Deleted %d detections\n", NdeleteTotal); 382 370 383 off_t NnewImage; 371 384 Image *newImage = DeleteSelectedImages (image, Nimage, deleteImage, imageIDindex, &NnewImage); 372 385 373 SaveImageTable (newImage, NnewImage, catdir );386 SaveImageTable (newImage, NnewImage, catdir, &db); 374 387 375 388 myIndexFree (externIDindex); … … 389 402 SkyTableFree(insky); 390 403 391 // XXX: NOTE: I am not deleting the images...392 404 gfits_db_free (&db); 393 405 … … 456 468 } 457 469 458 int SaveImageTable (Image *image, off_t Nimage, char *catdir ) {470 int SaveImageTable (Image *image, off_t Nimage, char *catdir, FITS_DB *oldDB) { 459 471 460 472 FITS_DB db; … … 489 501 dvo_image_create (&db, GetZeroPoint()); 490 502 503 // I want to keep the old DVO_DBID 504 char dbID[33]; 505 if (!gfits_scan (&oldDB->header, "DVO_DBID", "%s", 1, dbID)) { 506 fprintf (stderr, "source image table is missing DVO_DBID, exiting\n"); 507 exit (3); 508 } 509 gfits_modify (&db.header, "DVO_DBID", "%s", 1, dbID); 510 491 511 /* add the new image and save */ 492 512 dvo_image_addrows (&db, image, Nimage);
Note:
See TracChangeset
for help on using the changeset viewer.
