IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Oct 13, 2006, 11:22:09 AM (20 years ago)
Author:
Paul Price
Message:

Fixing psLib APIs following clean-up.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psphot/src/psphotModelTest.c

    r9270 r9539  
    2525    char *fitModeWord = psMetadataLookupStr (&status, recipe, "TEST_FIT_MODE");
    2626    if (!status) {
    27         fitModeWord = DEFAULT_MODE;
     27        fitModeWord = DEFAULT_MODE;
    2828    }
    2929    fitMode = PM_SOURCE_FIT_EXT;
     
    3232    // in fitMode, psf sets the model type
    3333    if (fitMode == PM_SOURCE_FIT_PSF) {
    34         char *psfFile = psMetadataLookupStr (&status, recipe, "PSF_INPUT_FILE");
    35         if (!status) psAbort ("psphotModelTest", "PSF_INPUT_FILE not supplied");
    36         psMetadata *psfData = psMetadataConfigRead(NULL, &Nfail, psfFile, FALSE);
    37         psf = pmPSFfromMD (psfData);
    38         modelType = psf->type;
     34        char *psfFile = psMetadataLookupStr (&status, recipe, "PSF_INPUT_FILE");
     35        if (!status) psAbort ("psphotModelTest", "PSF_INPUT_FILE not supplied");
     36        psMetadata *psfData = psMetadataConfigRead(NULL, &Nfail, psfFile, FALSE);
     37        psf = pmPSFfromMetadata (psfData);
     38        modelType = psf->type;
    3939    } else {
    40         // find the model: supplied by user or first in the PSF_MODEL list
    41         char *modelName  = psMetadataLookupStr (&status, recipe, "TEST_FIT_MODEL");
    42         if (modelName == NULL) {
    43             // get the list pointers for the PSF_MODEL entries
     40        // find the model: supplied by user or first in the PSF_MODEL list
     41        char *modelName  = psMetadataLookupStr (&status, recipe, "TEST_FIT_MODEL");
     42        if (modelName == NULL) {
     43            // get the list pointers for the PSF_MODEL entries
    4444
    45             psList *list = NULL;
    46             psMetadataItem *mdi = psMetadataLookup (recipe, "PSF_MODEL");
    47             if (mdi == NULL) psAbort ("psphotModelTest", "missing PSF_MODEL selection");
    48             if (mdi->type == PS_DATA_STRING) {
    49                 list = psListAlloc(NULL);
    50                 psListAdd (list, PS_LIST_HEAD, mdi);
    51             } else {
    52                 if (mdi->type != PS_DATA_METADATA_MULTI) psAbort ("psphotChoosePSF", "missing PSF_MODEL selection");
    53                 list = psMemIncrRefCounter(mdi->data.list);
    54             }
     45            psList *list = NULL;
     46            psMetadataItem *mdi = psMetadataLookup (recipe, "PSF_MODEL");
     47            if (mdi == NULL) psAbort ("psphotModelTest", "missing PSF_MODEL selection");
     48            if (mdi->type == PS_DATA_STRING) {
     49                list = psListAlloc(NULL);
     50                psListAdd (list, PS_LIST_HEAD, mdi);
     51            } else {
     52                if (mdi->type != PS_DATA_METADATA_MULTI) psAbort ("psphotChoosePSF", "missing PSF_MODEL selection");
     53                list = psMemIncrRefCounter(mdi->data.list);
     54            }
    5555
    56             // take the first list element
    57             item = psListGet (list, PS_LIST_HEAD);
    58             modelName = item->data.V;
    59         }
    60         modelType = pmModelSetType (modelName);
    61         if (modelType < 0) psAbort ("fitsource", "unknown model %s", modelName);
     56            // take the first list element
     57            item = psListGet (list, PS_LIST_HEAD);
     58            modelName = item->data.V;
     59        }
     60        modelType = pmModelSetType (modelName);
     61        if (modelType < 0) psAbort ("fitsource", "unknown model %s", modelName);
    6262    }
    6363
     
    6565    float INNER = psMetadataLookupF32 (&status, recipe, "TEST_FIT_INNER_RADIUS");
    6666    if (!status) {
    67         INNER = psMetadataLookupF32 (&status, recipe, "SKY_INNER_RADIUS");
     67        INNER = psMetadataLookupF32 (&status, recipe, "SKY_INNER_RADIUS");
    6868    }
    6969
    7070    float OUTER = psMetadataLookupF32 (&status, recipe, "TEST_FIT_OUTER_RADIUS");
    7171    if (!status) {
    72         OUTER = psMetadataLookupF32 (&status, recipe, "SKY_OUTER_RADIUS");
     72        OUTER = psMetadataLookupF32 (&status, recipe, "SKY_OUTER_RADIUS");
    7373    }
    7474
    7575    float RADIUS = psMetadataLookupF32 (&status, recipe, "TEST_FIT_RADIUS");
    7676    if (!status) {
    77         RADIUS = psMetadataLookupF32 (&status, recipe, "PSF_FIT_RADIUS");
     77        RADIUS = psMetadataLookupF32 (&status, recipe, "PSF_FIT_RADIUS");
    7878    }
    7979
    8080    float mRADIUS = psMetadataLookupF32 (&status, recipe, "TEST_MOMENTS_RADIUS");
    8181    if (!status) {
    82         mRADIUS = psMetadataLookupF32 (&status, recipe, "PSF_MOMENTS_RADIUS");
     82        mRADIUS = psMetadataLookupF32 (&status, recipe, "PSF_MOMENTS_RADIUS");
    8383    }
    8484
     
    117117    psF32 *params = model->params->data.F32;
    118118    for (int i = 0; i < nParams; i++) {
    119         if (i == 2) {
    120             params[i] = xObj;
    121             continue;
    122         }
    123         if (i == 3) {
    124             params[i] = yObj;
    125             continue;
    126         }
    127         sprintf (name, "TEST_FIT_PAR%d", i);
    128         value = psMetadataLookupF32 (&status, recipe, name);
    129         if (status) {
    130             params[i] = value;
    131         }
     119        if (i == 2) {
     120            params[i] = xObj;
     121            continue;
     122        }
     123        if (i == 3) {
     124            params[i] = yObj;
     125            continue;
     126        }
     127        sprintf (name, "TEST_FIT_PAR%d", i);
     128        value = psMetadataLookupF32 (&status, recipe, name);
     129        if (status) {
     130            params[i] = value;
     131        }
    132132    }
    133133
     
    136136
    137137    if (fitMode == PM_SOURCE_FIT_PSF) {
    138         pmModel *modelPSF = pmModelFromPSF (model, psf);
    139         psFree (model);
    140         model = modelPSF;
    141         params = model->params->data.F32;
     138        pmModel *modelPSF = pmModelFromPSF (model, psf);
     139        psFree (model);
     140        model = modelPSF;
     141        params = model->params->data.F32;
    142142    }
    143143
     
    154154    fprintf (stderr, "input parameters: \n");
    155155    for (int i = 0; i < nParams; i++) {
    156         fprintf (stderr, "%d : %f\n", i, params[i]);
     156        fprintf (stderr, "%d : %f\n", i, params[i]);
    157157    }
    158158
     
    162162    char *fitset = psMetadataLookupStr (&status, recipe, "TEST_FIT_SET");
    163163    if (status) {
    164         status = psphotFitSet (source, model, fitset, fitMode);
    165         exit (0);
     164        status = psphotFitSet (source, model, fitset, fitMode);
     165        exit (0);
    166166    }
    167167
     
    178178    // subtract object, leave local sky
    179179    pmModelSub (source->pixels, source->mask, model, false, false);
    180    
     180
    181181    fprintf (stderr, "output parameters: \n");
    182182    for (int i = 0; i < nParams; i++) {
    183         fprintf (stderr, "%d : %f\n", i, params[i]);
     183        fprintf (stderr, "%d : %f\n", i, params[i]);
    184184    }
    185185
    186     // write out 
     186    // write out
    187187    psphotSaveImage (NULL, source->pixels, "resid.fits");
    188188    psphotSaveImage (NULL, source->mask, "mask.fits");
Note: See TracChangeset for help on using the changeset viewer.