Changeset 20639 for trunk/psModules/src/config/pmConfig.c
- Timestamp:
- Nov 10, 2008, 2:04:47 PM (17 years ago)
- File:
-
- 1 edited
-
trunk/psModules/src/config/pmConfig.c (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psModules/src/config/pmConfig.c
r20552 r20639 1081 1081 // camera. If we are discovering the camera (config->camera == NULL), then we also load the 1082 1082 // recipe files for the camera. 1083 psMetadata *pmConfigCameraFormatFromHeader(psMetadata **camera, psString * formatName, pmConfig *config,1084 const psMetadata *header, bool readRecipes)1083 psMetadata *pmConfigCameraFormatFromHeader(psMetadata **camera, psString *cameraName, psString *formatName, 1084 pmConfig *config, const psMetadata *header, bool readRecipes) 1085 1085 { 1086 1086 PS_ASSERT_PTR_NON_NULL(config, NULL); … … 1089 1089 bool status = false; // error status 1090 1090 psMetadata *format = NULL; // The winning format 1091 psString name = NULL;// Name of the winning format1091 psString testFormatName = NULL; // Name of the winning format 1092 1092 1093 1093 // If we don't know what sort of camera we have, we try all that we know … … 1118 1118 assert(camerasItem->type == PS_DATA_METADATA); // It should be because we've read it in or deleted 1119 1119 psMetadata *testCamera = camerasItem->data.md; // Camera to test against what we've got: 1120 if (formatFromHeader(&status, &format, & name, testCamera, header, camerasItem->name)) {1120 if (formatFromHeader(&status, &format, &testFormatName, testCamera, header, camerasItem->name)) { 1121 1121 config->camera = psMemIncrRefCounter(testCamera); 1122 1122 config->cameraName = psStringCopy(camerasItem->name); 1123 config->formatName = name;1123 config->formatName = testFormatName; 1124 1124 config->format = format; 1125 1125 if (camera) { … … 1127 1127 } 1128 1128 if (formatName) { 1129 *formatName = psMemIncrRefCounter(name); // view on value saved on config 1129 *formatName = psMemIncrRefCounter(testFormatName); // view on value saved on config 1130 } 1131 if (cameraName) { 1132 *cameraName = psMemIncrRefCounter(config->cameraName); // view on value saved on config 1130 1133 } 1131 1134 } else { … … 1166 1169 1167 1170 psMetadata *testCamera = NULL; 1168 char *test Name = NULL;1171 char *testCameraName = NULL; 1169 1172 1170 1173 psMetadata *cameras = psMetadataLookupMetadata (NULL, config->system, "CAMERAS"); … … 1173 1176 // try the FPA metaCamera 1174 1177 if (!found) { 1175 test Name = NULL;1176 psStringAppend (&test Name, "_%s-FPA", baseName);1177 1178 testCamera = psMetadataLookupMetadata (NULL, cameras, test Name);1179 psAssert (testCamera, "missing %s in CAMERAS in complete metadata", test Name);1178 testCameraName = NULL; 1179 psStringAppend (&testCameraName, "_%s-FPA", baseName); 1180 1181 testCamera = psMetadataLookupMetadata (NULL, cameras, testCameraName); 1182 psAssert (testCamera, "missing %s in CAMERAS in complete metadata", testCameraName); 1180 1183 1181 1184 bool status; 1182 found = formatFromHeader(&status, &format, & name, testCamera, header, testName);1183 if (!found) psFree (test Name);1185 found = formatFromHeader(&status, &format, &testFormatName, testCamera, header, testCameraName); 1186 if (!found) psFree (testCameraName); 1184 1187 } 1185 1188 1186 1189 // try the CHIP metaCamera 1187 1190 if (!found) { 1188 test Name = NULL;1189 psStringAppend (&test Name, "_%s-CHIP", baseName);1190 1191 testCamera = psMetadataLookupMetadata (NULL, cameras, test Name);1192 psAssert (testCamera, "missing %s in CAMERAS in complete metadata", test Name);1191 testCameraName = NULL; 1192 psStringAppend (&testCameraName, "_%s-CHIP", baseName); 1193 1194 testCamera = psMetadataLookupMetadata (NULL, cameras, testCameraName); 1195 psAssert (testCamera, "missing %s in CAMERAS in complete metadata", testCameraName); 1193 1196 1194 1197 bool status; 1195 found = formatFromHeader(&status, &format, & name, testCamera, header, testName);1196 if (!found) psFree (test Name);1198 found = formatFromHeader(&status, &format, &testFormatName, testCamera, header, testCameraName); 1199 if (!found) psFree (testCameraName); 1197 1200 } 1198 1201 1199 1202 // try the SKYCELL metaCamera 1200 1203 if (!found) { 1201 test Name = NULL;1202 psStringAppend (&test Name, "_%s-SKYCELL", baseName);1203 1204 testCamera = psMetadataLookupMetadata (NULL, cameras, test Name);1205 psAssert (testCamera, "missing %s in CAMERAS in complete metadata", test Name);1204 testCameraName = NULL; 1205 psStringAppend (&testCameraName, "_%s-SKYCELL", baseName); 1206 1207 testCamera = psMetadataLookupMetadata (NULL, cameras, testCameraName); 1208 psAssert (testCamera, "missing %s in CAMERAS in complete metadata", testCameraName); 1206 1209 1207 1210 bool status; 1208 found = formatFromHeader(&status, &format, & name, testCamera, header, testName);1209 if (!found) psFree (test Name);1211 found = formatFromHeader(&status, &format, &testFormatName, testCamera, header, testCameraName); 1212 if (!found) psFree (testCameraName); 1210 1213 } 1211 1214 1212 1215 // try the base name 1213 1216 if (!found) { 1214 test Name = psMemIncrRefCounter (baseName);1215 1216 testCamera = psMetadataLookupMetadata (NULL, cameras, test Name);1217 psAssert (testCamera, "missing %s in CAMERAS in complete metadata", test Name);1217 testCameraName = psMemIncrRefCounter (baseName); 1218 1219 testCamera = psMetadataLookupMetadata (NULL, cameras, testCameraName); 1220 psAssert (testCamera, "missing %s in CAMERAS in complete metadata", testCameraName); 1218 1221 1219 1222 bool status; 1220 found = formatFromHeader(&status, &format, & name, testCamera, header, testName);1223 found = formatFromHeader(&status, &format, &testFormatName, testCamera, header, testCameraName); 1221 1224 } 1222 1225 … … 1228 1231 } 1229 1232 1230 psFree (name); // winning format name (for metaCamera) returned by formatFromHeader1231 1232 1233 psFree (baseName); 1233 1234 if (formatName) { 1234 *formatName = test Name;1235 *formatName = testFormatName; 1235 1236 } else { 1236 psFree (testName); 1237 } 1237 psFree (testFormatName); 1238 } 1239 if (cameraName) { 1240 *cameraName = testCameraName; 1241 } else { 1242 psFree (testCameraName); 1243 } 1244 1238 1245 if (camera) { 1239 1246 *camera = psMemIncrRefCounter(testCamera);
Note:
See TracChangeset
for help on using the changeset viewer.
