IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Dec 30, 2005, 7:05:28 AM (21 years ago)
Author:
eugene
Message:

cleanups, segfault fixes, etc

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ppImage/src/ppImage.h

    r5857 r5858  
    2323#define RECIPE "PHASE2"                 // Name of the recipe to use
    2424
     25typedef enum {
     26    PP_LOAD_NONE,
     27    PP_LOAD_FPA,
     28    PP_LOAD_CHIP,
     29    PP_LOAD_CELL,
     30} ppImageLoadDepth;
     31
    2532typedef struct {
    2633    psMetadata *site;
     
    3340typedef struct {
    3441    bool doMask;                        // Mask bad pixles
    35     bool doNonLin;                      // Non-linearity correction
    3642    bool doBias;                        // Bias subtraction
    3743    bool doDark;                        // Dark subtraction
    38     bool doOverscan;                    // Overscan subtraction
    3944    bool doFlat;                        // Flat-field normalisation
    4045    bool doFringe;                      // Fringe subtraction
    4146    bool doSource;                      // Source identification and photometry
    4247    bool doAstrom;                      // Astrometry
     48    bool preLoad;
     49
     50    bool doOverscan;                    // Overscan subtraction
    4351    int overscanBins;                   // Number of pixels per bin for overscan
    4452    psStats *overscanStats;             // Statistics for overscan
     
    4755    pmOverscanAxis overscanMode;        // Axis for overscan
    4856
    49     char *maskName;
    50     char *biasName;
    51     char *darkName;
    52     char *flatName;
    53 } ppRecipe;
     57    bool doNonLin;                      // Non-linearity correction
     58    psDataType nonLinearType;
     59    psMetadataItem *nonLinearData;
     60    void *nonLinearSource;
     61
     62    ppImageLoadDepth imageLoadDepth;
     63
     64} ppOptions;
    5465
    5566typedef struct {
     67    char *filename;
     68    pmFPA *fpa;
     69    psFits *fits;
    5670    psMetadata *header;
     71} ppFPA;
    5772
    58     pmFPA *input;
    59     pmFPA *weight;
    60     pmFPA *mask;
    61     pmFPA *bias;
    62     pmFPA *dark;
    63     pmFPA *flat;
    64     pmFPA *fringe;
     73typedef struct {
     74    ppFPA *input;
     75    ppFPA *mask;
     76    ppFPA *bias;
     77    ppFPA *dark;
     78    ppFPA *flat;
     79    ppFPA *fringe;
     80    ppFPA *process;
     81} ppData;
    6582
    66     psFits *inputFile;
    67     psFits *weightFile;
    68     psFits *maskFile;
    69     psFits *biasFile;
    70     psFits *darkFile;
    71     psFits *flatFile;
    72     psFits *fringeFile;
    73 } ppData;
     83typedef struct {
     84    pmCell *input;
     85    pmCell *mask;
     86    pmCell *bias;
     87    pmCell *dark;
     88    pmCell *flat;
     89} ppDetrend;
     90
     91bool ppImageConfig (ppConfig *config, int argc, char **argv);
     92bool ppImageLoadPixels (ppFPA *input, ppFPA *process, psDB *db, int nChip, int nCell);
     93bool ppImageLoop (ppData *data, ppOptions *options, ppConfig *config);
     94bool ppImageOptions (ppData *data, ppOptions *options, ppConfig *config);
     95bool ppImageParseCamera (ppData *data, ppConfig *config, char **argv);
     96bool ppImageParseDetrend (ppData *data, ppOptions *options, ppConfig *config);
     97
     98bool ppReadoutWeights (pmReadout *readout);
     99
     100bool ppDetrendCell (ppDetrend *detrend, ppOptions *options, ppConfig *config);
     101
     102bool ppDetrendMask (pmCell *cell, pmReadout *input, pmReadout *mask);
     103bool ppDetrendNonLinear (pmCell *cell, pmReadout *input, ppOptions *options);
     104bool ppDetrendNonLinearLookup (pmReadout *input, psMetadataItem *dataItem);
     105bool ppDetrendNonLinearPolynomial (pmReadout *input, psMetadataItem *dataItem);
     106bool ppDetrendBias (pmCell *inputCell, pmReadout *inputReadout, pmReadout *pedestal, ppOptions *options);
     107pmReadout* ppDetrendPedestal (pmReadout *pedestal, pmCell *input, pmReadout *bias, pmReadout *dark, float darkTime, ppOptions *options);
     108pmReadout* ppDetrendSelectFirst (pmCell *cell, char *name, bool doThis);
     109
     110bool ppFPAOpen (ppFPA *fpa, psMetadata *camera, char *name, bool doThis);
Note: See TracChangeset for help on using the changeset viewer.