IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 7243 for trunk/ippTools/src


Ignore:
Timestamp:
May 30, 2006, 11:17:09 AM (20 years ago)
Author:
jhoblitt
Message:

impliment -processed -unmask

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ippTools/src/dettool.c

    r7240 r7243  
    361361    }
    362362
    363     // remove detStackedImfiles
    364     // detStackedImfiles doesn't have an exp_id so we have to generate the
    365     // where query ourselves
     363    // remove detStackedImfiles unless -unmask
    366364    bool status = false;
    367     psString det_id = psMetadataLookupStr(&status, config->args, "-det_id");
    368     if (!status) {
    369         psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -det_id");
    370         return false;
    371     }
    372     psString class_id = psMetadataLookupStr(&status, config->args, "-class_id");
    373     if (!status) {
    374         psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -class_id");
    375         return false;
    376     }
    377     psMetadata *where = psMetadataAlloc();
    378     if (det_id) {
    379         if (!psMetadataAddS32(where, PS_LIST_TAIL, "det_id", 0, "==",
    380                 (psS32)atoi(det_id))) {
    381             psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id");
    382             psFree(where);
     365    if (!psMetadataLookupBool(&status, config->args, "-unmask")) {
     366        // detStackedImfiles doesn't have an exp_id so we have to generate the
     367        // where query ourselves
     368        bool status = false;
     369        psString det_id = psMetadataLookupStr(&status, config->args, "-det_id");
     370        if (!status) {
     371            psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -det_id");
    383372            return false;
    384373        }
    385     }
    386     if (class_id) {
    387         if (!psMetadataAddStr(where, PS_LIST_TAIL, "class_id", 0, "==", class_id)) {
    388             psError(PS_ERR_UNKNOWN, false, "failed to add item class_id");
    389             psFree(where);
     374        psString class_id = psMetadataLookupStr(&status, config->args, "-class_id");
     375        if (!status) {
     376            psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -class_id");
    390377            return false;
    391378        }
    392     }
    393 
    394     psArray *stackedImfiles = NULL;
    395     if (where->list->n) {
    396         stackedImfiles = detStackedImfileSelectRowObjects(
    397             config->dbh, where, 0);
    398     } else {
    399         stackedImfiles = detStackedImfileSelectRowObjects(
    400             config->dbh, NULL, 0);
    401     }
    402     psFree(where);
    403     // XXX trace the not found case
    404     if (stackedImfiles) {
    405         for (long i = 0; i < psArrayLength(processedImfiles); i++) {
    406             for (long j = 0; j < psArrayLength(stackedImfiles); j++) {
    407                 if ((
    408                 ((detProcessedImfileRow *)processedImfiles->data[i])->det_id
    409                 ==
    410                 ((detStackedImfileRow *)stackedImfiles->data[j])->det_id
    411                 ) && (strcmp(
    412                 ((detProcessedImfileRow *)processedImfiles->data[i])->class_id,
    413                 ((detStackedImfileRow *)stackedImfiles->data[j])->class_id)
    414                 == 0)) {
    415                     // remove the rawImfiles from the list
    416                     psArrayRemove(processedImfiles, processedImfiles->data[i]);
    417                     i--;
    418                     break;
     379        psMetadata *where = psMetadataAlloc();
     380        if (det_id) {
     381            if (!psMetadataAddS32(where, PS_LIST_TAIL, "det_id", 0, "==",
     382                    (psS32)atoi(det_id))) {
     383                psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id");
     384                psFree(where);
     385                return false;
     386            }
     387        }
     388        if (class_id) {
     389            if (!psMetadataAddStr(where, PS_LIST_TAIL, "class_id", 0, "==", class_id)) {
     390                psError(PS_ERR_UNKNOWN, false, "failed to add item class_id");
     391                psFree(where);
     392                return false;
     393            }
     394        }
     395
     396        psArray *stackedImfiles = NULL;
     397        if (where->list->n) {
     398            stackedImfiles = detStackedImfileSelectRowObjects(
     399                config->dbh, where, 0);
     400        } else {
     401            stackedImfiles = detStackedImfileSelectRowObjects(
     402                config->dbh, NULL, 0);
     403        }
     404        psFree(where);
     405        // XXX trace the not found case
     406        if (stackedImfiles) {
     407            for (long i = 0; i < psArrayLength(processedImfiles); i++) {
     408                for (long j = 0; j < psArrayLength(stackedImfiles); j++) {
     409                    if ((
     410                    ((detProcessedImfileRow *)processedImfiles->data[i])->det_id
     411                    ==
     412                    ((detStackedImfileRow *)stackedImfiles->data[j])->det_id
     413                    ) && (strcmp(
     414                    ((detProcessedImfileRow *)processedImfiles->data[i])->class_id,
     415                    ((detStackedImfileRow *)stackedImfiles->data[j])->class_id)
     416                    == 0)) {
     417                        // remove the rawImfiles from the list
     418                        psArrayRemove(processedImfiles, processedImfiles->data[i]);
     419                        i--;
     420                        break;
     421                    }
    419422                }
    420423            }
    421         }
    422         psFree(stackedImfiles);
     424            psFree(stackedImfiles);
     425        }
    423426    }
    424427
     
    428431    // don't have to do this check unless we have to.
    429432    if (psMetadataLookupBool(&status, config->args, "-chip")) {
     433        // lookup det_id
     434        bool status = false;
     435        psString det_id = psMetadataLookupStr(&status, config->args, "-det_id");
     436        if (!status) {
     437            psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -det_id");
     438            return false;
     439        }
    430440        // get a count of raw imfiles per class_id
    431441        psArray *rawImfiles = searchInputImfiles(config, det_id);
Note: See TracChangeset for help on using the changeset viewer.