IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 6849


Ignore:
Timestamp:
Apr 12, 2006, 8:29:24 PM (20 years ago)
Author:
eugene
Message:

completed conversion to pmFPAfile paradigm

Location:
trunk/ppImage/src
Files:
2 added
1 deleted
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/ppImage/src/Makefile.am

    r6832 r6849  
    33noinst_HEADERS = \
    44        ppImage.h \
    5         ppImageDetrend.h \
    65        ppImageOptions.h \
    76        ppMem.h
     
    1514        ppImageParseDetrend.c \
    1615        ppImageLoop.c \
    17         ppImageDetrendCell.c \
     16        ppImageDetrendReadout.c \
    1817        ppImageDetrendMask.c \
    1918        ppImageDetrendBias.c \
    2019        ppImageDetrendNonLinear.c \
     20        ppImageRebinReadout.c \
    2121        ppMem.c
    2222#       ppImageParseCamera.c \
     
    3535        ppMem.c
    3636
    37 
    38 
    3937clean-local:
    4038        -rm -f TAGS
  • trunk/ppImage/src/ppImage.c

    r6817 r6849  
    99    // Determine camera, format from header if not already defined
    1010    // Construct camera in preparation for reading
    11     pmConfig *config = ppImageConfig(argc, argv);
     11    pmConfig *config = ppImageConfig(&argc, argv);
    1212
    1313    // Set various tasks (define optional operations)
  • trunk/ppImage/src/ppImage.h

    r6817 r6849  
    1212
    1313// Get the configuration
    14 pmConfig *ppImageConfig(int argc, char **argv);
     14pmConfig *ppImageConfig(int *argc, char **argv);
    1515
    1616// Determine what type of camera, and initialise
     
    3030bool ppImageDetrendNonLinearPolynomial(pmReadout *input, psMetadataItem *dataItem);
    3131
     32bool ppImageRebinReadout (pmConfig *config, pmFPAview *view, char *filename);
     33
    3234#endif // Pau.
  • trunk/ppImage/src/ppImageConfig.c

    r6823 r6849  
    66}
    77
    8 pmConfig *ppImageConfig(int argc, char **argv)
     8pmConfig *ppImageConfig(int *argc, char **argv)
    99{
    1010
    1111    bool status;
    1212
    13     if (argc == 1) usage ();
     13    if (*argc == 1) usage ();
    1414
    1515    // load the site-wide configuration information
    16     pmConfig *config = pmConfigRead(&argc, argv);
     16    pmConfig *config = pmConfigRead(argc, argv);
    1717    if (! config) {
    1818        psErrorStackPrint(stderr, "Can't find site configuration!\n");
     
    2525    // if these command-line options are supplied, load the file name lists into config->arguments
    2626    // override any configuration-specified source for these files
    27     status = pmConfigFileSetsMD (config->arguments, &argc, argv, "BIAS", "-bias", "-biaslist");
    28     status = pmConfigFileSetsMD (config->arguments, &argc, argv, "DARK", "-dark", "-darklist");
    29     status = pmConfigFileSetsMD (config->arguments, &argc, argv, "FLAT", "-flat", "-flatlist");
    30     status = pmConfigFileSetsMD (config->arguments, &argc, argv, "MASK", "-mask", "-masklist");
    31     status = pmConfigFileSetsMD (config->arguments, &argc, argv, "FRINGE", "-fringe", "-fringelist");
     27    status = pmConfigFileSetsMD (config->arguments, argc, argv, "BIAS", "-bias", "-biaslist");
     28    status = pmConfigFileSetsMD (config->arguments, argc, argv, "DARK", "-dark", "-darklist");
     29    status = pmConfigFileSetsMD (config->arguments, argc, argv, "FLAT", "-flat", "-flatlist");
     30    status = pmConfigFileSetsMD (config->arguments, argc, argv, "MASK", "-mask", "-masklist");
     31    status = pmConfigFileSetsMD (config->arguments, argc, argv, "FRINGE", "-fringe", "-fringelist");
    3232
    3333    // the input file is a required argument; if not found, we will exit
    34     status = pmConfigFileSetsMD (config->arguments, &argc, argv, "INPUT", "-file", "-list");
     34    status = pmConfigFileSetsMD (config->arguments, argc, argv, "INPUT", "-file", "-list");
    3535    if (!status) { usage ();}
    3636
    37     if (! psArgumentParse(config->arguments, &argc, argv) || argc != 2) {
     37    if (! psArgumentParse(config->arguments, argc, argv) || *argc != 2) {
    3838        usage ();
    3939    }
  • trunk/ppImage/src/ppImageLoop.c

    r6817 r6849  
    3737                ppImageDetrendReadout (options, config, view);
    3838
     39                if (options->doBin1) {
     40                    ppImageRebinReadout (config, view, "PPIMAGE.BIN1");
     41                }
     42
     43                if (options->doBin2) {
     44                    ppImageRebinReadout (config, view, "PPIMAGE.BIN2");
     45                }
     46
    3947                pmFPAfileIOChecks (config->files, view, PM_FPA_AFTER);
    4048            }
  • trunk/ppImage/src/ppImageOptions.c

    r6817 r6849  
    2323ppImageOptions *ppImageOptionsParse(pmConfig *config)
    2424{
    25 
     25    bool status;
    2626    ppImageOptions *options = ppImageOptionsAlloc ();
    2727
     
    137137
    138138    // Mask recipe options
    139     if (psMetadataLookupBool(NULL, recipe, "MASK")) {
    140         options->doMask = true;
    141     }
     139    options->doMask = psMetadataLookupBool(NULL, recipe, "MASK");
     140    options->doBias = psMetadataLookupBool(NULL, recipe, "BIAS");
     141    options->doDark = psMetadataLookupBool(NULL, recipe, "DARK");
     142    options->doFlat = psMetadataLookupBool(NULL, recipe, "FLAT");
    142143
    143     // Bias recipe options
    144     if (psMetadataLookupBool(NULL, recipe, "BIAS")) {
    145         options->doBias = true;
    146     }
     144    // binned image options
     145    options->xBin1 = psMetadataLookupS32(&status, recipe, "BIN1.XBIN");
     146    if (!status) options->xBin1 = 16;
     147    options->yBin1 = psMetadataLookupS32(&status, recipe, "BIN1.YBIN");
     148    if (!status) options->yBin1 = 16;
    147149
    148     // Dark recipe options
    149     if (psMetadataLookupBool(NULL, recipe, "DARK")) {
    150         options->doDark = true;
    151     }
     150    options->xBin2 = psMetadataLookupS32(&status, recipe, "BIN2.XBIN");
     151    if (!status) options->xBin1 = 16;
     152    options->yBin2 = psMetadataLookupS32(&status, recipe, "BIN2.YBIN");
     153    if (!status) options->yBin1 = 16;
    152154
    153     // Flat recipe options
    154     if (psMetadataLookupBool(NULL, recipe, "FLAT")) {
    155         options->doFlat = true;
    156     }
     155    options->doBin1 = psMetadataLookupBool(NULL, recipe, "BIN1.FITS");
     156    options->doBin2 = psMetadataLookupBool(NULL, recipe, "BIN2.FITS");
    157157
     158    // options->doBin1JPEG = psMetadataLookupBool(NULL, recipe, "BIN1.JPEG");
     159    // options->doBin2JPEG = psMetadataLookupBool(NULL, recipe, "BIN2.JPEG");
     160   
    158161    return options;
    159162}
  • trunk/ppImage/src/ppImageOptions.h

    r6817 r6849  
    1111    bool doSource;                      // Source identification and photometry
    1212    bool doAstrom;                      // Astrometry
     13
    1314    bool doOverscan;                    // Overscan subtraction
    1415    pmOverscanOptions *overscan;        // Overscan options
     16
    1517    bool doNonLin;                      // Non-linearity correction
    1618    psDataType nonLinearType;
    1719    psMetadataItem *nonLinearData;
    1820    void *nonLinearSource;
     21
     22    bool doBin1;
     23    int xBin1, yBin1;
     24
     25    bool doBin2;
     26    int xBin2, yBin2;
     27
    1928} ppImageOptions;
    2029
  • trunk/ppImage/src/ppImageParseDetrend.c

    r6817 r6849  
    4848
    4949    // XXX do these need to construct a new fpa?
    50     // pmFPAfileDefine (config->files, config->camera, input->input, "PPIMAGE.BIN1");
    51     // pmFPAfileDefine (config->files, config->camera, input->input, "PPIMAGE.BIN2");
    52     // pmFPAfileDefine (config->files, config->camera, input->input, "PPIMAGE.JPG1");
    53     // pmFPAfileDefine (config->files, config->camera, input->input, "PPIMAGE.JPG2");
     50    if (options->doBin1) {
     51        pmFPAfileFromFPA (config, input->fpa, options->xBin1, options->yBin1, "PPIMAGE.BIN1");
     52    }
     53    if (options->doBin2) {
     54        pmFPAfileFromFPA (config, input->fpa, options->xBin2, options->yBin2, "PPIMAGE.BIN2");
     55    }
     56    // pmFPAfileDefine (config->files, config->camera, input->fpa, "PPIMAGE.JPG1");
     57    // pmFPAfileDefine (config->files, config->camera, input->fpa, "PPIMAGE.JPG2");
    5458
    5559    // ppImage is supplied with an output name, which may be used by multiple
  • trunk/ppImage/src/ppTest.c

    r6795 r6849  
    9191
    9292    // Add in a source file
    93     pmFPAview *view = pmFPAAddSource(fpa, phu, cameraFormat);
     93    pmFPAview *view = pmFPAAddSourceFromHeader(fpa, phu, cameraFormat);
    9494    printf("View chip: %d\n", view->chip);
    9595    printf("View cell: %d\n", view->cell);
     
    101101    psMetadata *newFormat = psMetadataConfigParse(NULL, NULL, "mcshort_splice.config", true);
    102102    pmConfigConformHeader(phu, newFormat);
    103     pmFPAview *newView = pmFPAAddSource(newFPA, phu, newFormat);
     103    pmFPAview *newView = pmFPAAddSourceFromHeader(newFPA, phu, newFormat);
    104104    printf("View chip: %d\n", newView->chip);
    105105    printf("View cell: %d\n", newView->cell);
Note: See TracChangeset for help on using the changeset viewer.