Changeset 33963 for trunk/psModules/src/objects/pmSource.c
Legend:
- Unmodified
- Added
- Removed
-
trunk
-
trunk/psModules
- Property svn:mergeinfo changed
/branches/eam_branches/ipp-20111122/psModules merged: 33044,33085,33087,33096,33638 /branches/eam_branches/ipp-20120405/psModules (added) merged: 33947,33951
- Property svn:mergeinfo changed
-
trunk/psModules/src/objects/pmSource.c
r33879 r33963 51 51 psFree(tmp->pixels); 52 52 psFree(tmp->variance); 53 psFree(tmp->modelVar); 53 54 psFree(tmp->maskObj); 54 55 psFree(tmp->maskView); … … 77 78 psFree (source->pixels); 78 79 psFree (source->variance); 80 psFree (source->modelVar); 79 81 psFree (source->maskObj); 80 82 psFree (source->maskView); … … 84 86 source->pixels = NULL; 85 87 source->variance = NULL; 88 source->modelVar = NULL; 86 89 source->maskObj = NULL; 87 90 source->maskView = NULL; … … 113 116 source->pixels = NULL; 114 117 source->variance = NULL; 118 source->modelVar = NULL; 115 119 source->maskObj = NULL; 116 120 source->maskView = NULL; … … 200 204 source->pixels = in->pixels ? psImageCopyView(NULL, in->pixels) : NULL; 201 205 source->variance = in->variance ? psImageCopyView(NULL, in->variance) : NULL; 206 source->modelVar = NULL; 202 207 source->maskView = in->maskView ? psImageCopyView(NULL, in->maskView) : NULL; 203 208 … … 1028 1033 1029 1034 bool addNoise = mode & PM_MODEL_OP_NOISE; 1035 bool addModelVar = mode & PM_MODEL_OP_MODELVAR; 1036 1037 if (addModelVar) psAssert (source->modelVar, "programming error"); 1030 1038 1031 1039 // require the use of pmModelAddWithOffset if we are adding noise (because the model size and norm are rescaled) … … 1050 1058 } 1051 1059 1052 psF32 **target = source->pixels->data.F32;1060 psF32 **target = addModelVar ? source->modelVar->data.F32 : source->pixels->data.F32; 1053 1061 1054 1062 for (int iy = 0; iy < source->modelFlux->numRows; iy++) { … … 1065 1073 } 1066 1074 } 1067 if (add) { 1068 source->tmpFlags &= ~PM_SOURCE_TMPF_SUBTRACTED; 1069 } else { 1070 source->tmpFlags |= PM_SOURCE_TMPF_SUBTRACTED; 1075 if (!addModelVar) { 1076 if (add) { 1077 source->tmpFlags &= ~PM_SOURCE_TMPF_SUBTRACTED; 1078 } else { 1079 source->tmpFlags |= PM_SOURCE_TMPF_SUBTRACTED; 1080 } 1071 1081 } 1072 1082 return true; … … 1077 1087 target = source->variance; 1078 1088 } 1089 if (addModelVar) { 1090 target = source->modelVar; 1091 } 1079 1092 1080 1093 if (add) { 1081 1094 status = pmModelAddWithOffset (target, source->maskObj, model, PM_MODEL_OP_FULL, maskVal, dx, dy); 1082 source->tmpFlags &= ~PM_SOURCE_TMPF_SUBTRACTED;1095 if (!addNoise && !addModelVar) source->tmpFlags &= ~PM_SOURCE_TMPF_SUBTRACTED; 1083 1096 } else { 1084 1097 status = pmModelSubWithOffset (target, source->maskObj, model, PM_MODEL_OP_FULL, maskVal, dx, dy); 1085 source->tmpFlags |= PM_SOURCE_TMPF_SUBTRACTED;1098 if (!addNoise && !addModelVar) source->tmpFlags |= PM_SOURCE_TMPF_SUBTRACTED; 1086 1099 } 1087 1100
Note:
See TracChangeset
for help on using the changeset viewer.
