Changeset 17367 for trunk/psModules/src/imcombine/pmSubtractionMatch.c
- Timestamp:
- Apr 7, 2008, 12:16:42 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/psModules/src/imcombine/pmSubtractionMatch.c
r17364 r17367 101 101 psMaskType maskBlank, float badFrac, pmSubtractionMode mode) 102 102 { 103 PM_ASSERT_READOUT_NON_NULL(conv1, false); 104 PM_ASSERT_READOUT_NON_NULL(conv2, false); 103 if (mode != PM_SUBTRACTION_MODE_2) { 104 PM_ASSERT_READOUT_NON_NULL(conv1, false); 105 if (conv1->image) { 106 psFree(conv1->image); 107 conv1->image = NULL; 108 } 109 if (conv1->mask) { 110 psFree(conv1->mask); 111 conv1->mask = NULL; 112 } 113 if (conv1->weight) { 114 psFree(conv1->weight); 115 conv1->weight = NULL; 116 } 117 } 118 if (mode != PM_SUBTRACTION_MODE_1) { 119 PM_ASSERT_READOUT_NON_NULL(conv2, false); 120 if (conv2->image) { 121 psFree(conv2->image); 122 conv2->image = NULL; 123 } 124 if (conv2->mask) { 125 psFree(conv2->mask); 126 conv2->mask = NULL; 127 } 128 if (conv2->weight) { 129 psFree(conv2->weight); 130 conv2->weight = NULL; 131 } 132 } 105 133 106 134 PM_ASSERT_READOUT_NON_NULL(ro1, false); … … 153 181 footprint, size); 154 182 return false; 155 }156 157 // Reset the output readouts, just in case158 if (conv1->image) {159 psFree(conv1->image);160 conv1->image = NULL;161 }162 if (conv1->mask) {163 psFree(conv1->mask);164 conv1->mask = NULL;165 }166 if (conv1->weight) {167 psFree(conv1->weight);168 conv1->weight = NULL;169 }170 if (conv2->image) {171 psFree(conv2->image);172 conv2->image = NULL;173 }174 if (conv2->mask) {175 psFree(conv2->mask);176 conv2->mask = NULL;177 }178 if (conv2->weight) {179 psFree(conv2->weight);180 conv2->weight = NULL;181 183 } 182 184 … … 474 476 475 477 // There is data in the readout now 476 conv1->data_exists = true; 477 if (conv1->parent) { 478 conv1->parent->data_exists = true; 479 conv1->parent->parent->data_exists = true; 480 } 481 if (mode == PM_SUBTRACTION_MODE_DUAL) { 478 if (mode == PM_SUBTRACTION_MODE_1 || mode == PM_SUBTRACTION_MODE_DUAL) { 479 conv1->data_exists = true; 480 if (conv1->parent) { 481 conv1->parent->data_exists = true; 482 conv1->parent->parent->data_exists = true; 483 } 484 } 485 if (mode == PM_SUBTRACTION_MODE_2 || mode == PM_SUBTRACTION_MODE_DUAL) { 482 486 conv2->data_exists = true; 483 487 if (conv2->parent) { … … 507 511 #ifdef TESTING 508 512 { 509 psFits *fits = psFitsOpen("convolved1.fits", "w"); 510 psFitsWriteImage(fits, NULL, conv1->image, 0, NULL); 511 psFitsClose(fits); 512 513 if (mode == PM_SUBTRACTION_MODE_DUAL) { 513 if (mode == PM_SUBTRACTION_MODE_1 || mode == PM_SUBTRACTION_MODE_DUAL) { 514 psFits *fits = psFitsOpen("convolved1.fits", "w"); 515 psFitsWriteImage(fits, NULL, conv1->image, 0, NULL); 516 psFitsClose(fits); 517 } 518 519 if (mode == PM_SUBTRACTION_MODE_2 || mode == PM_SUBTRACTION_MODE_DUAL) { 514 520 psFits *fits = psFitsOpen("convolved2.fits", "w"); 515 521 psFitsWriteImage(fits, NULL, conv2->image, 0, NULL); … … 621 627 continue; 622 628 } 623 mask->data.PS_TYPE_MASK_DATA[i] = 0;624 629 625 630 // Widths of stars … … 632 637 } else { 633 638 ratios->data.F32[i] = (float)width1 / (float)width2; 639 mask->data.PS_TYPE_MASK_DATA[i] = 0; 634 640 } 635 641 }
Note:
See TracChangeset
for help on using the changeset viewer.
