IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 23372


Ignore:
Timestamp:
Mar 17, 2009, 4:28:17 PM (17 years ago)
Author:
Paul Price
Message:

List of inputs is optional, since it may be provided by the RUN metadata.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ppStack/src/ppStackArguments.c

    r23364 r23372  
    2020    fprintf(stderr, "\nPan-STARRS Image combination\n\n");
    2121    fprintf(stderr,
    22             "Usage: %s INPUTS.mdc OUTPUT_ROOT [-sources STAMPS.cmf | -stamps STAMPS.dat]\n"
     22            "Usage: %s -input INPUTS.mdc OUTPUT_ROOT [-sources STAMPS.cmf | -stamps STAMPS.dat]\n"
    2323            "where INPUTS.mdc contains various METADATAs, each with:\n"
    2424            "\tIMAGE(STR):     Image filename\n"
     
    137137        psArgumentRemove(argNum, &argc, argv);
    138138    }
    139 
    140139
    141140    psMetadata *arguments = config->arguments; // Command-line arguments
     
    187186    psMetadataAddBool(arguments, PS_LIST_TAIL, "-visual", 0, "visualisation", false);
    188187
    189     if (argc == 1 || !psArgumentParse(arguments, &argc, argv) || argc != 3) {
     188    if (argc == 1) {
    190189        usage(argv[0], arguments, config);
    191190    }
     191
     192    if ((argNum = psArgumentGet(argc, argv, "-input"))) {
     193        psArgumentRemove(argNum, &argc, argv);
     194        if (argNum >= argc) {
     195            usage(argv[0], arguments, config);
     196        }
     197
     198        unsigned int numBad = 0;                     // Number of bad lines
     199        psMetadata *inputs = psMetadataConfigRead(NULL, &numBad, argv[argNum], false); // Input file info
     200        if (!inputs || numBad > 0) {
     201            psError(PS_ERR_BAD_PARAMETER_VALUE, false, "Unable to cleanly read MDC file with inputs.");
     202            return false;
     203        }
     204        psMetadataAddMetadata(arguments, PS_LIST_TAIL, "INPUTS", 0, "Metadata with input details", inputs);
     205        psFree(inputs);
     206
     207        psArgumentRemove(argNum, &argc, argv);
     208    }
     209
     210    if (!psArgumentParse(arguments, &argc, argv) || argc != 2) {
     211        usage(argv[0], arguments, config);
     212    }
     213
     214    psMetadataAddStr(arguments, PS_LIST_TAIL, "OUTPUT", 0, "Root name of the output image list", argv[1]);
    192215
    193216    const char *stampsName = psMetadataLookupStr(NULL, arguments, "-stamps"); // Name of stamps file
    194217    psMetadataAddStr(arguments, PS_LIST_TAIL, "STAMPS", 0, "Stamps file", stampsName);
    195 
    196     unsigned int numBad = 0;                     // Number of bad lines
    197     psMetadata *inputs = psMetadataConfigRead(NULL, &numBad, argv[1], false); // Information about inputs
    198     if (!inputs || numBad > 0) {
    199         psError(PS_ERR_BAD_PARAMETER_VALUE, false, "Unable to cleanly read MDC file with inputs.");
    200         return false;
    201     }
    202     psMetadataAddMetadata(arguments, PS_LIST_TAIL, "INPUTS", 0, "Metadata with input details", inputs);
    203     psFree(inputs);
    204     psMetadataAddStr(arguments, PS_LIST_TAIL, "OUTPUT", 0, "Root name of the output image list", argv[2]);
    205218
    206219    valueArgStr(arguments, "-stats", "STATS", arguments);
Note: See TracChangeset for help on using the changeset viewer.