Changeset 14045 for trunk/ippTools/src/dettool.c
- Timestamp:
- Jul 6, 2007, 12:15:53 PM (19 years ago)
- File:
-
- 1 edited
-
trunk/ippTools/src/dettool.c (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/ippTools/src/dettool.c
r14043 r14045 2416 2416 } 2417 2417 2418 // select detProcessedImfile.det_id 2419 // select detRun.iteration 2420 // select detRun.det_type 2421 // select detProcessedImfile.exp_id 2422 // by: 2423 // find the current iteration bassed on det_id 2424 // find all exp_ids in the current det_id/iteration from detInputExp 2425 // find all rawImfiles in the current exp_ids 2426 // compare to detProcessedImfiles by det_id/exp_id 2427 // found how many imfile there are in each class_id 2428 // and: 2429 // det_id is not in detProcessedExp; 2430 // iteration is not in detProcessedExp; 2431 2432 psString query = psStringCopy( 2433 " SELECT DISTINCT" 2434 " det_id," 2435 " iteration," 2436 " det_type," 2437 " exp_id," 2438 " camera," 2439 " workdir" 2440 " FROM" 2441 " (SELECT DISTINCT" 2442 " detRun.det_id," 2443 " detRun.iteration," 2444 " detRun.det_type," 2445 " detRun.workdir," 2446 " detProcessedImfile.exp_id," 2447 " rawExp.camera," 2448 " detProcessedImfile.class_id," 2449 " rawExp.imfiles" 2450 " FROM detRun" 2451 " JOIN detInputExp" 2452 " USING(det_id, iteration)" 2453 " JOIN rawExp" 2454 " ON detInputExp.exp_id = rawExp.exp_id" 2455 " JOIN rawImfile" 2456 " ON rawExp.exp_id = rawImfile.exp_id" 2457 " LEFT JOIN detProcessedImfile" 2458 " ON detRun.det_id = detProcessedImfile.det_id" 2459 " AND detInputExp.exp_id = detProcessedImfile.exp_id" 2460 " AND rawImfile.class_id = detProcessedImfile.class_id" 2461 " LEFT JOIN detProcessedExp" 2462 " ON detProcessedImfile.det_id = detProcessedExp.det_id" 2463 " AND detProcessedImfile.exp_id = detProcessedExp.exp_id" 2464 " WHERE" 2465 " detRun.state = 'run'" 2466 " AND detRun.mode = 'master'" 2467 " AND detProcessedImfile.fault = 0" 2468 " AND detProcessedExp.det_id IS NULL" 2469 " AND detProcessedExp.exp_id IS NULL" 2470 " AND detInputExp.include = 1" 2471 " GROUP BY" 2472 " rawExp.exp_id," 2473 " detRun.det_id" 2474 " HAVING" 2475 " COUNT(detProcessedImfile.class_id) = rawExp.imfiles" 2476 " ) AS detProcessedExp" 2477 ); 2418 psString query = pxDataGet("dettool_toprocessedexp.sql"); 2419 if (!query) { 2420 psError(PXTOOLS_ERR_DATA, false, "failed to retreive SQL statement"); 2421 return false; 2422 } 2478 2423 2479 2424 // XXX does it make sense to accept any search params? … … 2825 2770 } 2826 2771 2827 // select detRun.iteration 2828 // select detProcessedImfile.det_id 2829 // select detProcessedImfile.class_id 2830 // by: 2831 // find the current iteration bassed on det_id 2832 // find all exp_ids in the current det_id/iteration from detInputExp 2833 // find all rawImfiles in the current exp_ids 2834 // compare to detProcessedImfiles by det_id/exp_id 2835 // found how many imfile there are in each class_id 2836 // and: 2837 // det_id is not in detStackedImfile; 2838 // iteration is not in detStackedImfile; 2839 // class_id is not in detStackedImfile; 2840 2841 psString query = psStringCopy( 2842 " SELECT\n" 2843 " detProcessedImfile.det_id,\n" 2844 " detRun.iteration,\n" 2845 " detRun.det_type,\n" 2846 " detRun.workdir,\n" 2847 " detRun.reduction,\n" 2848 " detProcessedImfile.class_id,\n" 2849 " rawExp.camera\n" 2850 " FROM detRun\n" 2851 " JOIN detInputExp\n" 2852 " ON detRun.det_id = detInputExp.det_id\n" 2853 " AND detRun.iteration = detInputExp.iteration\n" 2854 " JOIN rawExp\n" 2855 " ON detInputExp.exp_id = rawExp.exp_id\n" 2856 " JOIN rawImfile\n" 2857 " ON detInputExp.exp_id = rawImfile.exp_id\n" 2858 " LEFT JOIN detProcessedImfile\n" 2859 " ON detInputExp.det_id = detProcessedImfile.det_id\n" 2860 " AND detInputExp.exp_id = detProcessedImfile.exp_id\n" 2861 " AND rawImfile.class_id = detProcessedImfile.class_id\n" 2862 " LEFT JOIN detStackedImfile\n" 2863 " ON detInputExp.det_id = detStackedImfile.det_id\n" 2864 " AND detInputExp.iteration = detStackedImfile.iteration\n" 2865 " AND rawImfile.class_id = detStackedImfile.class_id\n" 2866 " WHERE\n" 2867 " detRun.state = 'run'\n" 2868 " AND detRun.mode = 'master'\n" 2869 " AND (detProcessedImfile.fault = 0 or detProcessedImfile.fault IS NULL)\n" 2870 " AND detStackedImfile.det_id IS NULL\n" 2871 " AND detStackedImfile.iteration IS NULL\n" 2872 " AND detStackedImfile.class_id IS NULL\n" 2873 " AND detInputExp.include = 1\n" 2874 " GROUP BY\n" 2875 " rawImfile.class_id,\n" 2876 " detRun.det_id\n" 2877 " HAVING\n" 2878 " COUNT(detProcessedImfile.class_id) = COUNT(rawImfile.class_id)\n" 2879 ); 2772 psString query = pxDataGet("dettool_tostacked.sql"); 2773 if (!query) { 2774 psError(PXTOOLS_ERR_DATA, false, "failed to retreive SQL statement"); 2775 return false; 2776 } 2880 2777 2881 2778 // XXX does it make sense to accept any search params? … … 4373 4270 PS_ASSERT_PTR_NON_NULL(config, false); 4374 4271 4375 /*4376 which returns a list of processed imfiles (with corresponding detrend4377 id, iteration, class id, uri, type) for which the appropriate stacked4378 imfile has been normalised, and which have not been masked out by4379 detResidImfileAnalysis;4380 */4381 4382 4272 bool status = false; 4383 4273 psU64 limit = psMetadataLookupU64(&status, config->args, "-limit"); … … 4387 4277 } 4388 4278 4389 psString query = psStringCopy( 4390 "SELECT DISTINCT\n" 4391 " detRun.det_id,\n" 4392 " detRun.iteration,\n" 4393 " detRun.det_type,\n" 4394 " detRun.mode,\n" 4395 " detRun.workdir,\n" 4396 " detRun.reduction,\n" 4397 " detProcessedImfile.exp_id,\n" 4398 " detProcessedImfile.class_id,\n" 4399 " detProcessedImfile.uri,\n" 4400 " detNormalizedImfile.uri AS det_uri,\n" 4401 " rawExp.camera\n" 4402 " FROM detRun\n" 4403 " JOIN detInputExp\n" 4404 " USING(det_id, iteration)\n" 4405 " JOIN rawExp\n" 4406 " ON detInputExp.exp_id = rawExp.exp_id\n" 4407 " JOIN detProcessedImfile\n" 4408 " ON detRun.det_id = detProcessedImfile.det_id\n" 4409 " AND detInputExp.exp_id = detProcessedImfile.exp_id\n" 4410 " JOIN detNormalizedImfile\n" 4411 " ON detRun.det_id = detNormalizedImfile.det_id\n" 4412 " AND detRun.iteration = detNormalizedImfile.iteration\n" 4413 " AND detProcessedImfile.class_id = detNormalizedImfile.class_id\n" 4414 " LEFT JOIN detResidImfile\n" 4415 " ON detRun.det_id = detResidImfile.det_id\n" 4416 " AND detRun.iteration = detResidImfile.iteration\n" 4417 " AND detProcessedImfile.exp_id = detResidImfile.exp_id\n" 4418 " AND detProcessedImfile.class_id = detResidImfile.class_id\n" 4419 " WHERE\n" 4420 " detRun.state = 'run'\n" 4421 " AND detRun.mode = 'master'\n" 4422 " AND detNormalizedImfile.fault = 0\n" 4423 " AND detResidImfile.det_id IS NULL\n" 4424 " AND detResidImfile.iteration IS NULL\n" 4425 " AND detResidImfile.exp_id IS NULL\n" 4426 " AND detResidImfile.class_id IS NULL\n" 4427 " UNION" 4428 " SELECT\n" 4429 " detRun.det_id,\n" 4430 " detRun.iteration,\n" 4431 " detRun.det_type,\n" 4432 " detRun.mode,\n" 4433 " detRun.workdir,\n" 4434 " detRun.reduction,\n" 4435 " rawImfile.exp_id,\n" 4436 " rawImfile.class_id,\n" 4437 " rawImfile.uri,\n" 4438 " 'NULL' AS det_uri,\n" 4439 " rawExp.camera\n" 4440 " FROM detRun\n" 4441 " JOIN detInputExp\n" 4442 " USING(det_id, iteration)\n" 4443 " JOIN rawExp\n" 4444 " ON detInputExp.exp_id = rawExp.exp_id\n" 4445 " JOIN rawImfile\n" 4446 " ON detInputExp.exp_id = rawImfile.exp_id\n" 4447 " LEFT JOIN detResidImfile\n" 4448 " ON detRun.det_id = detResidImfile.det_id\n" 4449 " AND detRun.iteration = detResidImfile.iteration\n" 4450 " AND rawImfile.exp_id = detResidImfile.exp_id\n" 4451 " AND rawImfile.class_id = detResidImfile.class_id\n" 4452 " WHERE\n" 4453 " detRun.state = 'run'\n" 4454 " AND detRun.mode = 'verify'\n" 4455 " AND detResidImfile.det_id IS NULL\n" 4456 " AND detResidImfile.iteration IS NULL\n" 4457 " AND detResidImfile.exp_id IS NULL\n" 4458 " AND detResidImfile.class_id IS NULL\n" 4459 ); 4279 psString query = pxDataGet("dettool_toresidimfile.sql"); 4280 if (!query) { 4281 psError(PXTOOLS_ERR_DATA, false, "failed to retreive SQL statement"); 4282 return false; 4283 } 4460 4284 4461 4285 // XXX does it make sense to accept any search params? … … 5083 4907 } 5084 4908 5085 // select detRun.det_id 5086 // select detRun.iteration 5087 // select detRun.det_type 5088 // select detInputExp.exp_id 5089 // select detInputExp.include 5090 // by: 5091 // find the current iteration bassed on det_id 5092 // find all exp_ids in the current det_id/iteration from detInputExp 5093 // compare to detInputExp.imfiles to derResidImfile by class_id 5094 // and: 5095 // detResidImfile.{det_id, iteration, exp_id} is not in detResidExp 5096 5097 psString query = psStringCopy( 5098 "SELECT DISTINCT\n" 5099 " det_id,\n" 5100 " iteration,\n" 5101 " det_type,\n" 5102 " mode,\n" 5103 " exp_id,\n" 5104 " include,\n" 5105 " camera,\n" 5106 " workdir\n" 5107 " FROM\n" 5108 " (SELECT DISTINCT\n" 5109 " detRun.det_id AS det_id,\n" 5110 " detRun.iteration,\n" 5111 " detRun.det_type,\n" 5112 " detRun.mode,\n" 5113 " detRun.workdir,\n" 5114 " detInputExp.exp_id,\n" 5115 " detInputExp.include,\n" 5116 " rawExp.imfiles,\n" 5117 " rawExp.camera,\n" 5118 " detResidImfile.class_id\n" 5119 " FROM detRun\n" 5120 " JOIN detInputExp\n" 5121 " USING(det_id, iteration)\n" 5122 " JOIN rawExp\n" 5123 " ON detInputExp.exp_id = rawExp.exp_id\n" 5124 " JOIN detResidImfile\n" 5125 " ON detRun.det_id = detResidImfile.det_id\n" 5126 " AND detRun.iteration = detResidImfile.iteration\n" 5127 " AND detInputExp.exp_id = detResidImfile.exp_id\n" 5128 " LEFT JOIN detResidExp\n" 5129 " ON detResidImfile.det_id = detResidExp.det_id\n" 5130 " AND detResidImfile.iteration = detResidExp.iteration\n" 5131 " AND detResidImfile.exp_id = detResidExp.exp_id\n" 5132 " WHERE\n" 5133 " detRun.state = 'run'\n" 5134 " AND detResidImfile.fault = 0\n" 5135 " AND detResidExp.det_id IS NULL\n" 5136 " AND detResidExp.iteration IS NULL\n" 5137 " AND detResidExp.exp_id IS NULL\n" 5138 " GROUP BY\n" 5139 " detInputExp.exp_id,\n" 5140 " detRun.iteration,\n" 5141 " detRun.det_id\n" 5142 " HAVING\n" 5143 " rawExp.imfiles = COUNT(detResidImfile.class_id)\n" 5144 " ) AS toresidexp\n" 5145 ); 4909 psString query = pxDataGet("dettool_toresidexp.sql"); 4910 if (!query) { 4911 psError(PXTOOLS_ERR_DATA, false, "failed to retreive SQL statement"); 4912 return false; 4913 } 5146 4914 5147 4915 // XXX does it make sense to accept any search params?
Note:
See TracChangeset
for help on using the changeset viewer.
