IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
May 26, 2010, 11:05:44 AM (16 years ago)
Author:
Paul Price
Message:

Add trace message.

File:
1 edited

Legend:

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

    r28091 r28107  
    5959
    6060    if (!version1) {
    61         psStringAppend(&out, "%s", version2);
    62         return(out);
     61        psStringAppend(&out, "%s", version2);
     62        return(out);
    6363    }
    6464    if (!version2) {
    65         psStringAppend(&out, "%s", version1);
    66         return(out);
    67     }
    68  
     65        psStringAppend(&out, "%s", version1);
     66        return(out);
     67    }
     68
    6969    if (strchr(version1,'M')) {
    70         psStringSubstitute(&version1,"M","");
    71         mod1 = true;
     70        psStringSubstitute(&version1,"M","");
     71        mod1 = true;
    7272    }
    7373    if (strchr(version2,'M')) {
    74         psStringSubstitute(&version2,"M","");
    75         mod2 = true;
     74        psStringSubstitute(&version2,"M","");
     75        mod2 = true;
    7676    }
    7777
     
    8080
    8181    if (num1 >= num2) {
    82         numO = num1;
     82        numO = num1;
    8383    }
    8484    else {
    85         numO = num2;
    86     }
    87  
     85        numO = num2;
     86    }
     87
    8888    psStringAppend(&out,"%" PRId32,numO);
    8989    if (mod1 || mod2) {
    90         psStringAppend(&out,"M");
     90        psStringAppend(&out,"M");
    9191    }
    9292    return(out);
     
    9494
    9595bool pxCoalesceRunStatus(pxConfig *config, const psString dbQFile, psS64 stage_id, psString *software_ver,
    96                         psS64 *maskfrac_npix, psF32 *maskfrac_static, psF32 *maskfrac_dynamic,
    97                         psF32 *maskfrac_magic, psF32 *maskfrac_advisory) {
     96                        psS64 *maskfrac_npix, psF32 *maskfrac_static, psF32 *maskfrac_dynamic,
     97                        psF32 *maskfrac_magic, psF32 *maskfrac_advisory) {
    9898    psString query = pxDataGet(dbQFile);
    9999/*   psString text_id = NULL; */
     
    102102/*   psFree(text_id); */
    103103    if (!p_psDBRunQueryF(config->dbh, query, stage_id)) {
    104         psError(PS_ERR_UNKNOWN, false, "database error");
    105         psFree(query);
    106         return(false);
     104        psError(PS_ERR_UNKNOWN, false, "database error");
     105        psFree(query);
     106        return(false);
    107107    }
    108108    psFree(query);
    109109    psArray *output = p_psDBFetchResult(config->dbh);
    110110    if (!output) {
    111         psError(PS_ERR_UNKNOWN, false, "database error");
    112         return(false);
    113     }
    114  
     111        psError(PS_ERR_UNKNOWN, false, "database error");
     112        return(false);
     113    }
     114
    115115    for (long i = 0; i < psArrayLength(output); i++) {
    116         psMetadata *row = output->data[i];
    117 
    118         psS32 this_npix = psMetadataLookupS32(NULL, row, "maskfrac_npix");
    119         psF32 this_static = psMetadataLookupF32(NULL, row, "maskfrac_static");
    120         psF32 this_dynamic = psMetadataLookupF32(NULL, row, "maskfrac_dynamic");
    121         psF32 this_magic = psMetadataLookupF32(NULL, row, "maskfrac_magic");
    122         psF32 this_advisory = psMetadataLookupF32(NULL, row, "maskfrac_advisory");
    123         psString this_version = psMetadataLookupStr(NULL, row, "software_ver");
    124 
    125         *software_ver = pxMergeCodeVersions(*software_ver,this_version);
     116        psMetadata *row = output->data[i];
     117
     118        psS32 this_npix = psMetadataLookupS32(NULL, row, "maskfrac_npix");
     119        psF32 this_static = psMetadataLookupF32(NULL, row, "maskfrac_static");
     120        psF32 this_dynamic = psMetadataLookupF32(NULL, row, "maskfrac_dynamic");
     121        psF32 this_magic = psMetadataLookupF32(NULL, row, "maskfrac_magic");
     122        psF32 this_advisory = psMetadataLookupF32(NULL, row, "maskfrac_advisory");
     123        psString this_version = psMetadataLookupStr(NULL, row, "software_ver");
     124
     125        psTrace("pxtools", 3, "Mask stats: %d %f %f %f %f %s\n",
     126                this_npix, this_static, this_dynamic, this_magic, this_advisory, this_version);
     127
     128        *software_ver = pxMergeCodeVersions(*software_ver,this_version);
    126129/*     printf("%ld : %d %f %f %f %f <-> %ld %f %f %f %f\n",i,this_npix,this_static,this_dynamic,this_magic,this_advisory, */
    127 /*         *maskfrac_npix,*maskfrac_static,*maskfrac_dynamic,*maskfrac_magic,*maskfrac_advisory); */
    128         if (this_npix > 0) {
    129             *maskfrac_static = ((*maskfrac_static * *maskfrac_npix) + (this_npix * this_static)) / (this_npix + *maskfrac_npix);
    130             *maskfrac_dynamic = ((*maskfrac_dynamic * *maskfrac_npix) + (this_npix * this_dynamic)) / (this_npix + *maskfrac_npix);
    131             *maskfrac_magic = ((*maskfrac_magic * *maskfrac_npix) + (this_npix * this_magic)) / (this_npix + *maskfrac_npix);
    132             *maskfrac_advisory = ((*maskfrac_advisory * *maskfrac_npix) + (this_npix * this_advisory)) / (this_npix + *maskfrac_npix);
    133             *maskfrac_npix += this_npix;
    134         }
     130/*         *maskfrac_npix,*maskfrac_static,*maskfrac_dynamic,*maskfrac_magic,*maskfrac_advisory); */
     131        if (this_npix > 0) {
     132            *maskfrac_static = ((*maskfrac_static * *maskfrac_npix) + (this_npix * this_static)) / (this_npix + *maskfrac_npix);
     133            *maskfrac_dynamic = ((*maskfrac_dynamic * *maskfrac_npix) + (this_npix * this_dynamic)) / (this_npix + *maskfrac_npix);
     134            *maskfrac_magic = ((*maskfrac_magic * *maskfrac_npix) + (this_npix * this_magic)) / (this_npix + *maskfrac_npix);
     135            *maskfrac_advisory = ((*maskfrac_advisory * *maskfrac_npix) + (this_npix * this_advisory)) / (this_npix + *maskfrac_npix);
     136            *maskfrac_npix += this_npix;
     137        }
    135138    }
    136139    psFree(output);
     
    139142
    140143bool pxSetRunSoftware(pxConfig *config, const psString tableName, const psString stage_id_name, const psS64 stage_id,
    141                       psString software_ver) {
     144                      psString software_ver) {
    142145    char *query = "UPDATE %s SET software_ver = '%s' WHERE %s = %" PRId64;
    143146/*   printf(query,tableName,software_ver,stage_id_name,stage_id); */
    144147    if (!p_psDBRunQueryF(config->dbh,query,tableName,software_ver,stage_id_name,stage_id)) {
    145         psError(PS_ERR_UNKNOWN, false,
    146                 "failed to set software version for %s %" PRId64,stage_id_name,stage_id);
    147         return(false);
    148     }
    149  
     148        psError(PS_ERR_UNKNOWN, false,
     149                "failed to set software version for %s %" PRId64,stage_id_name,stage_id);
     150        return(false);
     151    }
     152
    150153    return(true);
    151154}
    152155
    153156bool pxSetRunMaskfrac(pxConfig *config, const psString tableName, const psString stage_id_name, const psS64 stage_id,
    154                       psS64 maskfrac_npix, psF32 maskfrac_static, psF32 maskfrac_dynamic,
    155                       psF32 maskfrac_magic, psF32 maskfrac_advisory) {
     157                      psS64 maskfrac_npix, psF32 maskfrac_static, psF32 maskfrac_dynamic,
     158                      psF32 maskfrac_magic, psF32 maskfrac_advisory) {
    156159    char *query = "UPDATE %s SET maskfrac_npix = %f, maskfrac_static = %f, maskfrac_dynamic = %f, maskfrac_magic = %f, maskfrac_advisory = %f WHERE %s = %" PRId64;
    157160    if (!p_psDBRunQueryF(config->dbh,query,tableName,(float) maskfrac_npix,maskfrac_static,
    158                         maskfrac_dynamic, maskfrac_magic,maskfrac_advisory,stage_id_name,stage_id)) {
    159         psError(PS_ERR_UNKNOWN, false,
    160                 "failed to set maskfrac stats for %s %" PRId64,stage_id_name,stage_id);
    161         return(false);
    162     }
    163  
     161                        maskfrac_dynamic, maskfrac_magic,maskfrac_advisory,stage_id_name,stage_id)) {
     162        psError(PS_ERR_UNKNOWN, false,
     163                "failed to set maskfrac stats for %s %" PRId64,stage_id_name,stage_id);
     164        return(false);
     165    }
     166
    164167
    165168
     
    168171
    169172bool pxCamSetRunMaskfrac(pxConfig *config, const psString tableName, const psString stage_id_name, const psS64 stage_id,
    170                         psS64 maskfrac_ref_npix, psF32 maskfrac_ref_static, psF32 maskfrac_ref_dynamic,
    171                         psF32 maskfrac_ref_magic, psF32 maskfrac_ref_advisory,
    172                         psS64 maskfrac_max_npix, psF32 maskfrac_max_static, psF32 maskfrac_max_dynamic,
    173                         psF32 maskfrac_max_magic, psF32 maskfrac_max_advisory) {
     173                        psS64 maskfrac_ref_npix, psF32 maskfrac_ref_static, psF32 maskfrac_ref_dynamic,
     174                        psF32 maskfrac_ref_magic, psF32 maskfrac_ref_advisory,
     175                        psS64 maskfrac_max_npix, psF32 maskfrac_max_static, psF32 maskfrac_max_dynamic,
     176                        psF32 maskfrac_max_magic, psF32 maskfrac_max_advisory) {
    174177  char *query = "UPDATE %s SET maskfrac_ref_npix = %f, maskfrac_ref_static = %f, maskfrac_ref_dynamic = %f, maskfrac_ref_magic = %f, maskfrac_ref_advisory = %f, maskfrac_max_npix = %f, maskfrac_max_static = %f, maskfrac_max_dynamic = %f, maskfrac_max_magic = %f, maskfrac_max_advisory = %f WHERE %s = %" PRId64;
    175178  if (!p_psDBRunQueryF(config->dbh,query,tableName,(float) maskfrac_ref_npix,maskfrac_ref_static,
    176                        maskfrac_ref_dynamic, maskfrac_ref_magic,maskfrac_ref_advisory,
    177                        (float) maskfrac_max_npix,maskfrac_max_static,
    178                        maskfrac_max_dynamic, maskfrac_max_magic,maskfrac_max_advisory,
    179                        stage_id_name,stage_id)) {
     179                       maskfrac_ref_dynamic, maskfrac_ref_magic,maskfrac_ref_advisory,
     180                       (float) maskfrac_max_npix,maskfrac_max_static,
     181                       maskfrac_max_dynamic, maskfrac_max_magic,maskfrac_max_advisory,
     182                       stage_id_name,stage_id)) {
    180183    psError(PS_ERR_UNKNOWN, false,
    181             "failed to set maskfrac stats for %s %" PRId64,stage_id_name,stage_id);
     184            "failed to set maskfrac stats for %s %" PRId64,stage_id_name,stage_id);
    182185    return(false);
    183186  }
    184  
     187
    185188
    186189
     
    293296    char *comma = ",";
    294297
    295 #   define addColumn(_tab, _val)                                        \
    296     do {                                                                \
    297         if (_val) {                                                     \
    298             psStringAppend(pQuery, "%s %s.%s = '%s'", separator, _tab, #_val, _val); \
    299             separator = comma;                                          \
    300         }                                                               \
     298#   define addColumn(_tab, _val)                                        \
     299    do {                                                                \
     300        if (_val) {                                                     \
     301            psStringAppend(pQuery, "%s %s.%s = '%s'", separator, _tab, #_val, _val); \
     302            separator = comma;                                          \
     303        }                                                               \
    301304    } while (0)
    302305
     
    436439        if (import_version && strcmp(import_version, schema_version)) {
    437440            psError(PS_ERR_UNKNOWN, true, "input file schema_version: %s does not match data base: %s",
    438                     import_version, schema_version);
     441                    import_version, schema_version);
    439442            return false;
    440443        } else if (!import_version) {
Note: See TracChangeset for help on using the changeset viewer.