Changeset 30179 for trunk/ippTools/src/regtool.c
- Timestamp:
- Dec 26, 2010, 6:58:24 AM (15 years ago)
- File:
-
- 1 edited
-
trunk/ippTools/src/regtool.c (modified) (23 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/ippTools/src/regtool.c
r30060 r30179 74 74 // imfile 75 75 MODECASE(REGTOOL_MODE_PENDINGIMFILE, pendingimfileMode); 76 MODECASE(REGTOOL_MODE_CHECKBURNTOOLIMFILE, checkburntoolimfileMode);77 MODECASE(REGTOOL_MODE_PENDINGBURNTOOLIMFILE, pendingburntoolimfileMode);76 MODECASE(REGTOOL_MODE_CHECKBURNTOOLIMFILE, checkburntoolimfileMode); 77 MODECASE(REGTOOL_MODE_PENDINGBURNTOOLIMFILE, pendingburntoolimfileMode); 78 78 MODECASE(REGTOOL_MODE_ADDPROCESSEDIMFILE, addprocessedimfileMode); 79 79 MODECASE(REGTOOL_MODE_PROCESSEDIMFILE, processedimfileMode); … … 201 201 psFree(query); 202 202 query = rep; 203 203 204 204 psStringSubstitute(&query,exp_name,"@EXP_NAME@"); 205 205 psStringSubstitute(&query,class_id,"@CLASS_ID@"); … … 215 215 } 216 216 psFree(query); 217 217 218 218 psArray *output = p_psDBFetchResult(config->dbh); 219 219 if (!output) { … … 227 227 psError(PXTOOLS_ERR_PROG, false, "unknown error"); 228 228 } 229 229 230 230 return false; 231 231 } … … 243 243 244 244 if ((psMetadataLookupS32(NULL,row,"is_downloaded") != 1)|| 245 (psMetadataLookupS32(NULL,row,"is_registered") != 1)) {245 (psMetadataLookupS32(NULL,row,"is_registered") != 1)) { 246 246 ok_to_burn = false; 247 247 } … … 255 255 already_burned = false; 256 256 } 257 257 258 258 if (previous_uri) { 259 259 psMetadataAddStr(row,PS_LIST_TAIL,"previous_uri",PS_META_REPLACE,"",previous_uri); … … 264 264 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); 265 265 } 266 266 267 267 // negate simple so the default is true 268 268 if (!ippdbPrintMetadatas(stdout, output, "regBurntoolImfile", !simple)) { … … 271 271 return false; 272 272 } 273 273 274 274 psFree(output); 275 275 276 276 277 277 return(true); 278 278 279 279 } 280 280 … … 297 297 psFree(query); 298 298 query = rep; 299 299 300 300 psStringSubstitute(&query,date,"@DATE@"); 301 301 302 // fprintf(stderr,"%s",query);302 // fprintf(stderr,"%s",query); 303 303 304 304 if (!p_psDBRunQuery(config->dbh, query)) { … … 309 309 } 310 310 psFree(query); 311 311 312 312 psArray *output = p_psDBFetchResult(config->dbh); 313 313 if (!output) { … … 321 321 psError(PXTOOLS_ERR_PROG, false, "unknown error"); 322 322 } 323 323 324 324 return false; 325 325 } 326 327 // fprintf (stderr, "found %ld rows\n", output->n); 326 328 if (!psArrayLength(output)) { 327 329 psTrace("regtool", PS_LOG_INFO, "no rows found"); … … 337 339 psString this_class_id = NULL; 338 340 psArray *results = psArrayAllocEmpty(60); // List of suggested imfiles to burntool. 339 341 340 342 for (long i = 0; i < output->n; i++) { 341 343 psMetadata *row = output->data[i]; … … 356 358 if (previous_class_id) { 357 359 if (strcmp(this_class_id,previous_class_id) != 0) { 358 ok_to_burn = true;359 already_burned = true;360 previous_uri = NULL;360 ok_to_burn = true; 361 already_burned = true; 362 previous_uri = NULL; 361 363 } 362 364 } … … 364 366 // Write the URIs as well. 365 367 this_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Duplicate, but helpful for my debugging. 366 psMetadataAddStr(row,PS_LIST_TAIL,"this_uri",PS_META_REPLACE,"",this_uri); 368 psMetadataAddStr(row,PS_LIST_TAIL,"this_uri",PS_META_REPLACE,"",this_uri); 367 369 if (previous_uri) { 368 370 psMetadataAddStr(row,PS_LIST_TAIL,"previous_uri",PS_META_REPLACE,"",previous_uri); … … 372 374 // Convert bits of the SQL query into booleans describing the data state 373 375 if ((psMetadataLookupS32(NULL,row,"is_downloaded") != 1)|| 374 (psMetadataLookupS32(NULL,row,"is_registered") != 1)) {375 //printf("I claim this isn't downloaded or registered? %s %s\n",this_uri,this_class_id);376 ok_to_burn = false;376 (psMetadataLookupS32(NULL,row,"is_registered") != 1)) { 377 // printf("I claim this isn't downloaded or registered? %s %s\n",this_uri,this_class_id); 378 ok_to_burn = false; 377 379 } 378 380 if (already_burned == false) { 379 //printf("already_burned looks false %s %s\n",this_uri,this_class_id);380 ok_to_burn = false;381 // printf("already_burned looks false %s %s\n",this_uri,this_class_id); 382 ok_to_burn = false; 381 383 } 382 384 if (abs(psMetadataLookupS32(NULL,row,"burntool_state")) == valid_burntool) { … … 391 393 // Check the uri for this exposure 392 394 if (!this_uri) { 393 ok_to_burn = false;394 already_burned = false;395 396 // Save this round for next round.397 psFree(previous_class_id);398 psFree(previous_uri);399 previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id"));400 psStringSubstitute(&previous_class_id,"XY","ota");401 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round. 402 continue;403 } 404 405 // printf("STATUS: %s %s %s %s (%d %d) %d %d %d\n",this_uri,previous_uri,this_class_id,previous_class_id,ok_to_burn,already_burned,psMetadataLookupS32(NULL,row,"burntool_state"),psMetadataLookupS32(NULL,row,"is_registered"),psMetadataLookupS32(NULL,row,"is_downloaded"));406 407 // If the state of this imfile is not "pending_burntool" then we can't burn it. 395 ok_to_burn = false; 396 already_burned = false; 397 398 // Save this round for next round. 399 psFree(previous_class_id); 400 psFree(previous_uri); 401 previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id")); 402 psStringSubstitute(&previous_class_id,"XY","ota"); 403 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round. 404 continue; 405 } 406 407 // printf("STATUS: %s %s %s %s (%d %d) %d %d %d\n",this_uri,previous_uri,this_class_id,previous_class_id,ok_to_burn,already_burned,psMetadataLookupS32(NULL,row,"burntool_state"),psMetadataLookupS32(NULL,row,"is_registered"),psMetadataLookupS32(NULL,row,"is_downloaded")); 408 409 // If the state of this imfile is not "pending_burntool" then we can't burn it. 408 410 if (!ignore_state) { 409 411 psString imfile_state = psMetadataLookupStr(NULL,row,"imfile_state"); 410 412 411 413 if (!imfile_state) { // imfile state is NULL, so we probably aren't registered. 412 ok_to_burn = false;413 414 // Save this round for next round.415 psFree(previous_class_id);416 psFree(previous_uri);417 previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id"));418 psStringSubstitute(&previous_class_id,"XY","ota");419 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round. 420 continue;414 ok_to_burn = false; 415 416 // Save this round for next round. 417 psFree(previous_class_id); 418 psFree(previous_uri); 419 previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id")); 420 psStringSubstitute(&previous_class_id,"XY","ota"); 421 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round. 422 continue; 421 423 } 422 if (strcmp("pending_burntool",imfile_state) != 0) { // Probably the state is full, do not twiddle states 423 // Save this round for next round.424 psFree(previous_class_id);425 psFree(previous_uri);426 previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id"));427 psStringSubstitute(&previous_class_id,"XY","ota");428 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round. 429 continue;424 if (strcmp("pending_burntool",imfile_state) != 0) { // Probably the state is full, do not twiddle states 425 // Save this round for next round. 426 psFree(previous_class_id); 427 psFree(previous_uri); 428 previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id")); 429 psStringSubstitute(&previous_class_id,"XY","ota"); 430 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round. 431 continue; 430 432 } 431 433 } 432 434 433 435 // Determine if we've already suggested an entry for this ota, and if not, copy this 434 436 // suggestion into our output result list. … … 439 441 previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id")); 440 442 psStringSubstitute(&previous_class_id,"XY","ota"); 441 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round. 443 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round. 442 444 continue; 443 445 } … … 450 452 previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id")); 451 453 psStringSubstitute(&previous_class_id,"XY","ota"); 452 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round. 453 } 454 454 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round. 455 } 456 455 457 // negate simple so the default is true 456 458 if (!ippdbPrintMetadatas(stdout, results, "regPendingBurntoolImfile", !simple)) { … … 460 462 return false; 461 463 } 462 464 463 465 psFree(output); 464 466 psFree(results); 465 467 466 468 467 469 return(true); 468 469 } 470 471 470 471 } 472 473 472 474 473 475 static bool addprocessedimfileMode(pxConfig *config) … … 545 547 PXOPT_LOOKUP_STR(md5sum, config->args, "-md5sum", false, false); 546 548 PXOPT_LOOKUP_BOOL(video_cells, config->args, "-video_cells", false); 547 549 548 550 PXOPT_LOOKUP_S16(fault, config->args, "-fault", false, false); 549 551 PXOPT_LOOKUP_S16(quality, config->args, "-quality", false, false); … … 618 620 bytes, 619 621 md5sum, 620 video_cells,622 video_cells, 621 623 0 // burntool_state 622 624 )) { … … 806 808 PXOPT_LOOKUP_STR(set_state, config->args, "-set_state", false, false); 807 809 808 if ((fault == INT16_MAX) && !isfinite(burntool_state) && !(set_state)) {810 if ((fault == INT16_MAX) && (burntool_state == INT16_MAX) && !set_state) { 809 811 psError(PS_ERR_UNKNOWN, false, "one of -fault or -burntool_state or -set_state must be selected"); 810 812 return false; 811 813 } 812 if ((fault != INT16_MAX) && isfinite(burntool_state)) {814 if ((fault != INT16_MAX) && (burntool_state != INT16_MAX)) { 813 815 psError(PS_ERR_UNKNOWN, false, "only one of -fault or -burntool_state must be selected"); 814 816 return false; … … 1312 1314 if (!pxchipQueueByExpTag(config, 1313 1315 exp_id, 1314 chip_workdir,1316 chip_workdir, 1315 1317 label, 1316 data_group,1317 dist_group,1318 data_group, 1319 dist_group, 1318 1320 reduction, 1319 1321 NULL, // expgroup
Note:
See TracChangeset
for help on using the changeset viewer.
