IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Aug 28, 2006, 12:17:59 PM (20 years ago)
Author:
jhoblitt
Message:

rename -pending -> -pendingimfiles
rename -done -> -addproccessedimfile
automate option help printing

File:
1 edited

Legend:

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

    r8535 r8658  
    2626    psMetadata *defineArgs = psMetadataAlloc();
    2727
    28     // -pending
    29     psMetadata *pendingArgs = psMetadataAlloc();
    30     psMetadataAddStr(pendingArgs, PS_LIST_TAIL, "-inst",  0, "define camera of interest", NULL);
    31     psMetadataAddStr(pendingArgs, PS_LIST_TAIL, "-filter",  0, "define filter of interest", NULL);
    32     psMetadataAddStr(pendingArgs, PS_LIST_TAIL, "-exp_id",  0, "define exposure ID", NULL);
    33     psMetadataAddStr(pendingArgs, PS_LIST_TAIL, "-class",  0, "define class", NULL);
    34     psMetadataAddStr(pendingArgs, PS_LIST_TAIL, "-class_id",  0, "define class ID", NULL);
    35     psMetadataAddStr(pendingArgs, PS_LIST_TAIL, "-uri",  0, "define URL", NULL);
    36     psMetadataAddBool(pendingArgs, PS_LIST_TAIL, "-simple",  0,
    37         "use the simple output format", false);
     28    // -pendingimfile
     29    psMetadata *pendingimfileArgs = psMetadataAlloc();
     30    psMetadataAddStr(pendingimfileArgs, PS_LIST_TAIL, "-inst",  0,
     31            "define camera of interest", NULL);
     32    psMetadataAddStr(pendingimfileArgs, PS_LIST_TAIL, "-filter",  0,
     33            "define filter of interest", NULL);
     34    psMetadataAddStr(pendingimfileArgs, PS_LIST_TAIL, "-exp_id",  0,
     35            "define exposure ID", NULL);
     36    psMetadataAddStr(pendingimfileArgs, PS_LIST_TAIL, "-class",  0,
     37            "define class", NULL);
     38    psMetadataAddStr(pendingimfileArgs, PS_LIST_TAIL, "-class_id",  0,
     39            "define class ID", NULL);
     40    psMetadataAddStr(pendingimfileArgs, PS_LIST_TAIL, "-uri",  0,
     41            "define URL", NULL);
     42    psMetadataAddBool(pendingimfileArgs, PS_LIST_TAIL, "-simple",  0,
     43            "use the simple output format", false);
    3844 
    39     // -done
    40     psMetadata *doneArgs = psMetadataAlloc();
    41     psMetadataAddStr(doneArgs, PS_LIST_TAIL, "-exp_id",  0,
     45    // -addprocessedimfile
     46    psMetadata *addprocessedimfileArgs = psMetadataAlloc();
     47    psMetadataAddStr(addprocessedimfileArgs, PS_LIST_TAIL, "-exp_id",  0,
    4248            "define exp_id (required)", NULL);
    43     psMetadataAddStr(doneArgs, PS_LIST_TAIL, "-class_id",  0, "define class ID", NULL);
    44     psMetadataAddStr(doneArgs, PS_LIST_TAIL, "-uri",  0,
     49    psMetadataAddStr(addprocessedimfileArgs, PS_LIST_TAIL, "-class_id",  0,
     50            "define class ID", NULL);
     51    psMetadataAddStr(addprocessedimfileArgs, PS_LIST_TAIL, "-uri",  0,
    4552            "define URL", NULL);
     53    psMetadataAddStr(addprocessedimfileArgs, PS_LIST_TAIL, "-recip",  0,
     54            "define recipe (required)", NULL);
     55    psMetadataAddF64(addprocessedimfileArgs, PS_LIST_TAIL, "-bg",  0,
     56            "define exposue background", NAN);
     57    psMetadataAddF64(addprocessedimfileArgs, PS_LIST_TAIL, "-bg_stdev",  0,
     58            "define exposue background stdev", NAN);
     59    psMetadataAddF64(addprocessedimfileArgs, PS_LIST_TAIL, "-bg_mean_stdev",  0,
     60            "define exposue background mean stdev", NAN);
     61    psMetadataAddStr(addprocessedimfileArgs, PS_LIST_TAIL, "-b1_uri",  0,
     62            "define banana 1", NULL);
     63    psMetadataAddStr(addprocessedimfileArgs, PS_LIST_TAIL, "-b2_uri",  0,
     64            "define banana 2", NULL);
     65
    4666
    4767#define PXTOOL_MODE(option, modeval, argset) \
     
    5272        if (config->mode) { \
    5373            psError(PS_ERR_UNKNOWN, true, "only one mode selection is allowed"); \
     74            goto FAIL; \
    5475        } \
    5576        config->mode = modeval; \
    5677        config->args = psMemIncrRefCounter(argset); \
    5778    } \
     79    if (!psMetadataAddMetadata(argSets, PS_LIST_TAIL, option, 0, NULL, argset)) {; \
     80        psError(PS_ERR_UNKNOWN, false, "failed to add argset for %s", option); \
     81    } \
     82    psFree(argset); \
    5883}
    5984
     85    psMetadata *argSets = psMetadataAlloc();
    6086    PXTOOL_MODE("-quick",       P2TOOL_MODE_QUICK,        quickArgs);
    6187    PXTOOL_MODE("-define",      P2TOOL_MODE_DEFINE,       defineArgs);
    62     PXTOOL_MODE("-pending",     P2TOOL_MODE_PENDING,      pendingArgs);
    63     PXTOOL_MODE("-done",        P2TOOL_MODE_DONE,         doneArgs);
     88    PXTOOL_MODE("-pendingimfile", P2TOOL_MODE_PENDINGIMFILE, pendingimfileArgs);
     89    PXTOOL_MODE("-addprocessedimfile",P2TOOL_MODE_ADDPROCESSEDIMFILE,addprocessedimfileArgs);
    6490
    6591    bool argErr = false;
     
    74100    if (argErr) {
    75101        printf("\nPan-STARRS Phase 2 Search Tool\n\n");
    76         printf("Usage: %s [mode] [options]\n\n", argv[0]);
    77         printf(" [mode] : -quick | -define | -pending | -done\n\n");
    78         fprintf (stdout, "-quick ");
    79         psArgumentHelp(quickArgs);
    80         psFree(quickArgs);
    81         fprintf (stdout, "-define ");
    82         psArgumentHelp(defineArgs);
    83         psFree(defineArgs);
    84         fprintf (stdout, "-pending ");
    85         psArgumentHelp(pendingArgs);
    86         psFree(pendingArgs);
    87         fprintf (stdout, "-done ");
    88         psArgumentHelp(doneArgs);
    89         psFree(doneArgs);
     102        printf("Usage: %s <mode> [<options>]\n\n", argv[0]);
     103        printf(" <mode> :\n\n");
    90104
     105        psMetadataIterator *iter = psMetadataIteratorAlloc(argSets, 0, NULL);
     106        psMetadataItem *item = NULL;
     107        while ((item = psMetadataGetAndIncrement(iter))) {
     108            if (!item->type == PS_DATA_METADATA) {
     109                psAbort(argv[0], "all options must be specified as a metadata");            }
     110
     111            fprintf(stdout, "%s ", item->name);
     112            psArgumentHelp(item->data.md);
     113        }
     114        psFree(iter);
     115
     116        psFree(argSets);
    91117        goto FAIL;
    92118    }
    93119
    94     psFree(quickArgs)
    95     psFree(defineArgs)
    96     psFree(pendingArgs)
    97     psFree(doneArgs)
     120    psFree(argSets);
    98121
    99122    // setup search criterion
Note: See TracChangeset for help on using the changeset viewer.