IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 23242


Ignore:
Timestamp:
Mar 9, 2009, 4:19:37 PM (17 years ago)
Author:
beaumont
Message:

merging from cnb_branch_20090215

Location:
trunk
Files:
10 deleted
34 edited
6 copied

Legend:

Unmodified
Added
Removed
  • trunk/ppImage

  • trunk/ppImage/src/ppImageArguments.c

    r23229 r23242  
    8181    if ((argnum = psArgumentGet(argc, argv, "-visual"))) {
    8282        psArgumentRemove(argnum, &argc, argv);
    83         psphotSetVisual (true);
     83        pmVisualSetVisual(true);
    8484    }
    8585
     
    8787    if ((argnum = psArgumentGet(argc, argv, "-threads"))) {
    8888        psArgumentRemove(argnum, &argc, argv);
    89         int nThreads = atoi(argv[argnum]);
     89        int nThreads = atoi(argv[argnum]);
    9090        psMetadataAddS32(config->arguments, PS_LIST_TAIL, "NTHREADS", 0, "number of warp threads", nThreads);
    9191        psArgumentRemove(argnum, &argc, argv);
    9292
    93         // create the thread pool with number of desired threads, supplying our thread launcher function
    94         // XXX need to determine the number of threads from the config data
    95         psThreadPoolInit (nThreads);
     93        // create the thread pool with number of desired threads, supplying our thread launcher function
     94        // XXX need to determine the number of threads from the config data
     95        psThreadPoolInit (nThreads);
    9696    }
    9797
  • trunk/ppStack

  • trunk/ppStack/src/ppStack.c

    r23195 r23242  
    7676    pmConfigDone();
    7777    psLibFinalize();
    78 
     78    pmVisualClose();
    7979    exit(exitValue);
    8080}
  • trunk/ppStack/src/ppStackArguments.c

    r23212 r23242  
    185185                      "Delete temporary files on completion?", false);
    186186    psMetadataAddS32(arguments, PS_LIST_TAIL, "-threads", 0, "Number of threads to use", 0);
    187     psMetadataAddBool(arguments, PS_LIST_TAIL, "-psphot-visual", 0, "psphot visualisation", 0);
     187    psMetadataAddBool(arguments, PS_LIST_TAIL, "-visual", 0, "visualisation", false);
    188188
    189189    if (argc == 1 || !psArgumentParse(arguments, &argc, argv) || argc != 3) {
     
    262262    valueArgRecipeStr(arguments, recipe, "-psf-model", "PSF.MODEL", recipe);
    263263
     264    if (psMetadataLookupBool(NULL, arguments, "-visual")) {
     265        pmVisualSetVisual(true);
     266    }
     267
    264268    if (psMetadataLookupBool(NULL, arguments, "-photometry") ||
    265269        psMetadataLookupBool(NULL, recipe, "PHOTOMETRY")) {
  • trunk/ppStack/src/ppStackLoop.c

    r23192 r23242  
    517517            psStringAppend(&name, "covariance_%d.fits", i);
    518518            writeImage(name, hdu->header, readout->covariance->image, config);
     519            pmStackVisualPlotTestImage(readout->covariance->image, name);
    519520            psFree(name);
    520521        }
     
    815816#ifdef TESTING
    816817    writeImage("combined_initial.fits", NULL, outRO->image, config);
     818    pmStackVisualPlotTestImage(outRO->image, "combined_initial.fits");
    817819#endif
    818820
     
    898900                psString name = NULL;           // Name of image
    899901                psStringAppend(&name, "inspect_%03d.fits", i);
     902                pmStackVisualPlotTestImage(mask, name);
    900903                psFits *fits = psFitsOpen(name, "w");
    901904                psFree(name);
     
    915918                psString name = NULL;           // Name of image
    916919                psStringAppend(&name, "reject_%03d.fits", i);
     920                pmStackVisualPlotTestImage(mask, name);
    917921                psFits *fits = psFitsOpen(name, "w");
    918922                psFree(name);
     
    10481052
    10491053#ifdef TESTING
     1054    pmStackVisualPlotTestImage(outRO->image, "combined_initial.fits");
    10501055    writeImage("combined_final.fits", NULL, outRO->image, config);
    10511056#endif
  • trunk/ppStack/src/ppStackMatch.c

    r21525 r23242  
    358358                psString name = NULL;
    359359                psStringAppend(&name, "fake_%03d.fits", numInput);
     360                pmStackVisualPlotTestImage(fake->image, name);
    360361                psFits *fits = psFitsOpen(name, "w");
    361362                psFree(name);
     
    367368                psString name = NULL;
    368369                psStringAppend(&name, "real_%03d.fits", numInput);
     370                pmStackVisualPlotTestImage(readout->image, name);
    369371                psFits *fits = psFitsOpen(name, "w");
    370372                psFree(name);
     
    397399                psString name = NULL;
    398400                psStringAppend(&name, "conv_%03d.fits", numInput);
     401                pmStackVisualPlotTestImage(output->image, name);
    399402                psFits *fits = psFitsOpen(name, "w");
    400403                psFree(name);
     
    406409                psString name = NULL;
    407410                psStringAppend(&name, "diff_%03d.fits", numInput);
     411                pmStackVisualPlotTestImage(fake->image, name);
    408412                psFits *fits = psFitsOpen(name, "w");
    409413                psFree(name);
     
    633637        psString name = NULL;
    634638        psStringAppend(&name, "convolved_%03d.fits", numInput);
     639        pmStackVisualPlotTestImage(output->image, name);
    635640        psFits *fits = psFitsOpen(name, "w");
    636641        psFree(name);
  • trunk/ppStack/src/ppStackPhotometry.c

    r22730 r23242  
    118118    pmFPACopy(photFile->fpa, readout->parent->parent->parent);
    119119
    120     if (psMetadataLookupBool(NULL, config->arguments, "-psphot-visual")) {
    121         psphotSetVisual(true);
     120    if (psMetadataLookupBool(NULL, config->arguments, "-visual")) {
     121        pmVisualSetVisual(true);
    122122    }
    123123
  • trunk/ppStack/src/ppStackSources.c

    r23234 r23242  
    121121        psString name = NULL;
    122122        psStringAppend(&name, "start_%03d.fits", i);
     123        pmStackVisualPlotTestImage(fake->image, name);
    123124        psFits *fits = psFitsOpen(name, "w");
    124125        psFree(name);
  • trunk/ppSub

  • trunk/ppSub/src/ppSub.c

    r23195 r23242  
    7777    psTimerStop();
    7878
    79     pmSubtractionVisualClose(); //close plot windows, if -visual is set
     79    pmVisualClose(); //close plot windows, if -visual is set
    8080    psFree(config);
    8181    pmModelClassCleanup();
  • trunk/ppSub/src/ppSubArguments.c

    r23238 r23242  
    191191bool ppSubArgumentsSetup(int argc, char *argv[], pmConfig *config)
    192192{
    193     int argnum;                         // Argument Number
     193    //    int argnum;                         // Argument Number
    194194    assert(config);
    195195
     
    200200    }
    201201
    202     if ((argnum = psArgumentGet(argc, argv, "-psphot-visual"))) {
    203         psArgumentRemove(argnum, &argc, argv);
    204         psphotSetVisual(true);
    205     }
    206202
    207203    psMetadata *arguments = config->arguments; // Command-line arguments
     
    370366
    371367    if (psMetadataLookupBool(NULL, arguments, "-visual")) {
    372         pmSubtractionSetVisual(true);
     368        pmVisualSetVisual(true);
    373369    }
    374370
  • trunk/psModules

  • trunk/psModules/src/astrom/pmAstrometryVisual.c

    r21422 r23242  
    2323
    2424//variables to determine when things are plotted
    25 static bool isVisual             = false;
    2625static bool plotGridMatch        = true;
    2726static bool plotTweak            = true;
     
    4847/* Initialization Routines  */
    4948
    50 bool pmAstromSetVisual (bool mode) {
    51     isVisual = mode;
    52     return true;
    53 }
    54 
    55 
    5649bool pmAstromVisualClose()
    5750{
     
    6861{
    6962    // make sure we want to plot this
    70     if (!plotRawStars || !isVisual) return true;
     63    if (!plotRawStars || !pmVisualIsVisual()) return true;
    7164
    7265    //set up plot region
    7366    if (!pmVisualInitWindow (&kapa, "psastro:plots")){
    74         isVisual = false;
    7567        return false;
    7668    }
     
    222214
    223215    // pause and wait for user input:
    224     pmVisualAskUser(&plotRawStars, &isVisual);
     216    pmVisualAskUser(&plotRawStars);
    225217
    226218    psFree (xVec);
     
    234226{
    235227    //make sure we want to plot this
    236     if (!isVisual || !plotRefStars) return true;
     228    if (!pmVisualIsVisual() || !plotRefStars) return true;
    237229
    238230    //set up plotting variables
    239231    if (!pmVisualInitWindow (&kapa, "psastro:plots")) {
    240         isVisual = false;
    241232        return false;
    242233    }
     
    284275
    285276    // pause and wait for user input:
    286     pmVisualAskUser(&plotRefStars, &isVisual);
     277    pmVisualAskUser(&plotRefStars);
    287278
    288279    psFree (xVec);
     
    301292
    302293    // make sure we want to plot this
    303     if ( !isVisual || !plotLumFunc ) return true;
     294    if ( !pmVisualIsVisual() || !plotLumFunc ) return true;
    304295
    305296    //set up plotting variables
    306297    if ( !pmVisualInitWindow (&kapa, "psastro:plots")){
    307         isVisual = false;
    308298        return false;
    309299    }
     
    377367
    378368        // pause and wait for user input:
    379         pmVisualAskUser (&plotLumFunc, &isVisual);
     369        pmVisualAskUser (&plotLumFunc);
    380370    }
    381371    return true;
     
    391381
    392382    //make sure we want to plot this
    393     if (!isVisual || !plotRemoveClumps) return true;
     383    if (!pmVisualIsVisual() || !plotRemoveClumps) return true;
    394384
    395385    //set up plot variables
    396386    if ( !pmVisualInitWindow (&kapa, "psastro:plots")) {
    397         isVisual = false;
    398387        return false;
    399388    }
     
    480469
    481470    //ask for user input and finish
    482     pmVisualAskUser (&plotRemoveClumps, &isVisual);
     471    pmVisualAskUser (&plotRemoveClumps);
    483472    psFree (xVec);
    484473    psFree (yVec);
     
    496485
    497486    //make sure we want to plot this
    498     if (!isVisual || !plotOneChipFit)
     487    if (!pmVisualIsVisual() || !plotOneChipFit)
    499488        return true;
    500489
    501490    if(!pmVisualInitWindow(&kapa, "psastro:plots") || !pmVisualInitWindow(&kapa2, "psastro:plots")) {
    502         isVisual = false;
    503491        return false;
    504492    }
     
    511499
    512500    //ask for user input and finish
    513     pmVisualAskUser(&plotOneChipFit, &isVisual);
     501    pmVisualAskUser(&plotOneChipFit);
    514502    return true;
    515503}
     
    522510{
    523511    //make sure we want to plot this
    524     if(!isVisual || !plotFixChips) return true;
     512    if(!pmVisualIsVisual() || !plotFixChips) return true;
    525513
    526514    if(!pmVisualInitWindow(&kapa, "psastro:plots")) {
    527         isVisual = false;
    528515        return false;
    529516    }
     
    588575    KapaPlotVector (kapa, xNew->n, yNew->data.F32, "y");
    589576
    590     pmVisualAskUser(&plotFixChips, &isVisual);
     577    pmVisualAskUser(&plotFixChips);
    591578    psFree(xNew);
    592579    psFree(yNew);
     
    606593
    607594    //make sure we want to plot this
    608     if (!isVisual || !plotAstromGuessCheck) return true;
     595    if (!pmVisualIsVisual() || !plotAstromGuessCheck) return true;
    609596
    610597    //set up graph window
    611598    if ( !pmVisualInitWindow (&kapa, "psastro:plots")) {
    612         isVisual = false;
    613599        return false;
    614600    }
     
    686672    psFree(xResid);
    687673    psFree(yResid);
    688     pmVisualAskUser (&plotAstromGuessCheck, &isVisual);
     674    pmVisualAskUser (&plotAstromGuessCheck);
    689675    return true;
    690676}
     
    696682{
    697683    //make sure we want to plot this
    698     if (!isVisual || !plotCommonScale) return true;
     684    if (!pmVisualIsVisual() || !plotCommonScale) return true;
    699685
    700686    if (!pmVisualInitWindow(&kapa, "psastro:plots")){
    701         isVisual = false;
    702687        return false;
    703688    }
     
    736721    KapaSendLabel (kapa, "Old Pixel Scale of FPA Chips (Not to Scale)", KAPA_LABEL_XP);
    737722
    738     pmVisualAskUser (&plotCommonScale, &isVisual);
     723    pmVisualAskUser (&plotCommonScale);
    739724
    740725    psFree(xVec);
     
    750735
    751736    //make sure we want to plot this
    752     if (!isVisual || !plotMosaicOneChip) return true;
     737    if (!pmVisualIsVisual() || !plotMosaicOneChip) return true;
    753738
    754739    if(!pmVisualInitWindow(&kapa, "psastro:plots") || !pmVisualInitWindow(&kapa2, "psastro:plots")) {
    755         isVisual = false;
    756740        return false;
    757741    }
     
    759743    //plot the residuals
    760744    if (!residPlot(rawstars, refstars, match, recipe, "Single Chip Fit Residuals - Mosaic Mode")) {
    761         isVisual = false;
     745        pmVisualSetVisual(false);
    762746        return false;
    763747    }
    764748
    765749    //ask for user input and finish
    766     pmVisualAskUser(&plotMosaicOneChip, &isVisual);
     750    pmVisualAskUser(&plotMosaicOneChip);
    767751
    768752    return true;
     
    775759{
    776760    //make sure we want to plot this
    777     if (!isVisual || !plotMosaicMatches) return true;
     761    if (!pmVisualIsVisual() || !plotMosaicMatches) return true;
    778762
    779763    char title[60];
     
    782766
    783767    if(!pmVisualInitWindow(&kapa, "psastro:plots") || !pmVisualInitWindow(&kapa2, "psastro:plots")) {
    784         isVisual = false;
    785768        return false;
    786769    }
    787770
    788771    if (!residPlot(rawstars, refstars, match, recipe, title)){
    789         isVisual = false;
     772        pmVisualSetVisual(false);
    790773        return false;
    791774    }
    792775
    793776    //ask for user input
    794     pmVisualAskUser (&plotMosaicMatches, &isVisual);
     777    pmVisualAskUser (&plotMosaicMatches);
    795778    return true;
    796779}
     
    807790{
    808791    //make sure we want to plot this
    809     if (!isVisual || !plotGridMatch) return true;
     792    if (!pmVisualIsVisual() || !plotGridMatch) return true;
    810793    if (!pmVisualInitWindow(&kapa, "psastro:plots")){
    811         isVisual = false;
    812794        return false;
    813795    }
     
    952934    KapaPlotVector (kapa, 2, yslice, "y");
    953935
    954     pmVisualAskUser(&plotGridMatch, &isVisual);
     936    pmVisualAskUser(&plotGridMatch);
    955937    psFree(dXplot);
    956938    psFree(dYplot);
     
    966948{
    967949    //make sure we want to plot this
    968     if (!isVisual || !plotTweak) return true;
     950    if (!pmVisualIsVisual() || !plotTweak) return true;
    969951    if (!pmVisualInitWindow(&kapa, "psastro:plots")) {
    970         isVisual = false;
    971952        return false;
    972953    }
     
    10511032                   KAPA_LABEL_XP);
    10521033
    1053     pmVisualAskUser(&plotTweak, &isVisual);
     1034    pmVisualAskUser(&plotTweak);
    10541035
    10551036    psFree(xIndices);
     
    13411322# else
    13421323
    1343 bool pmAstromSetVisual(bool mode) { return true; }
    13441324bool pmAstromVisualClose() { return true; }
    13451325bool pmAstromVisualPlotGridMatch (const psArray *raw, const psArray *ref, psImage *gridNP, double offsetX, double offsetY, double maxOffpix, double Scale, double Offset) { return true; }
  • trunk/psModules/src/astrom/pmAstrometryVisual.h

    r21422 r23242  
    2222    int sPeak;                          ///< sum of stars to peak bin
    2323} pmLumFunc;
    24 
    25 
    26 /** Enable or disable visual plotting for psastro routines
    27  * @param mode true/false to enable/disable plotting
    28  * @return true for success */
    29 bool pmAstromSetVisual(bool mode);
    3024
    3125
  • trunk/psModules/src/extras/pmVisual.c

    r21422 r23242  
    1818#include "pmHDU.h"
    1919#include "pmFPA.h"
     20#include "pmFPAfile.h"
    2021#include "pmAstrometryObjects.h"
     22#include "pmSubtractionStamps.h"
     23#include "pmTrend2D.h"
    2124#include "pmFPAExtent.h"
    2225
     
    2831# define KAPAY 700
    2932
     33#include "pmAstrometryVisual.h"
     34#include "pmSubtractionVisual.h"
     35#include "pmStackVisual.h"
     36#include "pmSourceVisual.h"
     37
     38//#define TESTING
     39
     40static bool isVisual = false;
     41
     42
     43bool pmVisualSetVisual(bool value) {
     44    isVisual = value;
     45    return true;
     46}
     47
     48
     49bool pmVisualIsVisual(void) {return isVisual;}
     50
     51bool pmVisualClose(void) {
     52    pmAstromVisualClose();
     53    pmSubtractionVisualClose();
     54    pmStackVisualClose();
     55    pmSourceVisualClose();
     56    //XXX handle psphot
     57    //    psphotVisualClose();
     58    return true;
     59}
    3060
    3161bool pmVisualInitWindow (int *kapid, char *name) {
     
    3464        if (*kapid == -1) {
    3565            fprintf (stderr, "Failure to open kapa.\n");
     66            isVisual = false;
    3667            return false;
    3768        }
     
    5283
    5384
    54 bool pmVisualAskUser(bool *plotFlag, bool *packageFlag)
     85bool pmVisualAskUser(bool *plotFlag)
    5586{
    5687    char key[10];
     
    6394    }
    6495    if (key[0] == 'a') {
    65         *packageFlag = false;
     96        isVisual = false;
    6697    }
    6798    return true;
     
    182213
    183214bool pmVisualScaleImage(int kapaFD, psImage *inImage, const char *name, int channel, bool clip) {
    184 
    185215    KiiImage image;
    186216    KapaImageData data;
    187217    Coords coords;
    188218
    189     //make sure we have a compatible image type
     219    //make sure we have a compatible image
     220    if (inImage == NULL) {
     221        fprintf(stderr, "Image is NULL, and cannot be displayed\n");
     222        return false;
     223    }
     224
    190225    if(inImage->type.type != PS_TYPE_F32) {
    191226        fprintf(stderr, "Cannot display this image (imcompatible data type)\n");
     
    194229
    195230    strcpy (coords.ctype, "RA---TAN");
     231
    196232
    197233    double min, max, stdev, mean;
     
    304340
    305341#else
    306 
     342bool pmVisualSetVisual(bool value) {return true;}
     343bool pmVisualIsVisual(void) {return false;}
     344bool pmVisualClose(void) {return true;}
    307345bool pmVisualInitWindow(int *kapid, char *name){return true;}
    308346bool pmVisualInitGraph (int kapa, void *section, void *graphdata){return true;}
    309347
    310 bool pmVisualAskUser(bool *plotFlag, bool *packageFlag){return true;}
     348bool pmVisualAskUser(bool *plotFlag){return true;}
    311349bool pmVisualImStats(psImage *image, double *mean,
    312350                     double *stdev, double *min, double *max){return true;}
  • trunk/psModules/src/extras/pmVisual.h

    r21422 r23242  
    1010
    1111#if (HAVE_KAPA)
     12
     13
     14/** Globally enable or disable plotting
     15 * @param value - true to enable plotting
     16 * @return true
     17 */
     18bool pmVisualSetVisual(bool value);
     19
     20
     21/** Check whether plotting is enabled
     22 * @retrun true if plots should be generated
     23 */
     24bool pmVisualIsVisual(void);
     25
     26
     27/** Destroy plotting windows at the end of a run
     28 * @return true for success */
     29bool pmVisualClose(void);
    1230
    1331
     
    3250 * At the user's request, this will disable diagnostic plotting.
    3351 * @param plotFlag, set to false if this plot should be disabled in the future
    34  * @param packageFlag, set to false if all plots from this package (e.g. psastro, pmSubtraction)
    35  *                      should be disabled.
    3652 */
    37 bool pmVisualAskUser(bool *plotFlag, bool *packageFlag);
     53bool pmVisualAskUser(bool *plotFlag);
    3854
    3955
     
    115131
    116132// kapa-specific data types are changed to void
     133bool pmVisualSetVisual(bool value);
     134bool pmVisualIsVisual(void);
     135bool pmVisualClose(void);
    117136bool pmVisualInitWindow (int *kapid, char *name);
    118137bool pmVisualInitGraph (int kapa, void *section, void *graphdata);
    119 bool pmVisualAskUser(bool *plotFlag, bool *packageFlag);
     138bool pmVisualAskUser(bool *plotFlag);
    120139bool pmVisualScaleImage(int kapaFD, psImage *inImage,
    121140                        const char *name, int channel, bool clip);
  • trunk/psModules/src/imcombine/Makefile.am

    r21422 r23242  
    1919        pmSubtractionThreads.c  \
    2020        pmPSFEnvelope.c         \
    21         pmSubtractionVisual.c
     21        pmSubtractionVisual.c   \
     22        pmStackVisual.c
    2223
    2324pkginclude_HEADERS = \
     
    3738        pmSubtractionThreads.h  \
    3839        pmPSFEnvelope.h         \
    39         pmSubtractionVisual.h
     40        pmSubtractionVisual.h   \
     41        pmStackVisual.h
    4042
    4143CLEANFILES = *~
  • trunk/psModules/src/imcombine/pmPSFEnvelope.c

    r23191 r23242  
    3030
    3131#include "pmPSFEnvelope.h"
    32 
     32#include "pmStackVisual.h"
    3333
    3434
     
    165165            psStringAppend(&name, "psf_field_%03d.fits", i);
    166166            psFits *fits = psFitsOpen(name, "w");
     167            pmStackVisualPlotTestImage(fakeRO->image, name);
    167168            psFitsWriteImage(fits, NULL, fakeRO->image, 0, NULL);
    168169            psFitsClose(fits);
     
    182183        // Write out the envelope
    183184        psFits *fits = psFitsOpen("psf_field_envelope.fits", "w");
     185        pmStackVisualPlotTestImage(envelope, "psf_field_envelope.fits");
    184186        psFitsWriteImage(fits, NULL, envelope, 0, NULL);
    185187        psFitsClose(fits);
     
    234236        // Write out the envelope
    235237        psFits *fits = psFitsOpen("psf_field_full.fits", "w");
     238        pmStackVisualPlotTestImage(readout->image, "psf_field_full.fits");
    236239        psFitsWriteImage(fits, NULL, readout->image, 0, NULL);
    237240        psFitsClose(fits);
     
    315318        {
    316319            psFits *fits = psFitsOpen("psf_field_model.fits", "w");
     320            pmStackVisualPlotTestImage(generated->image, "psf_field_model.fits");
    317321            psFitsWriteImage(fits, NULL, generated->image, 0, NULL);
    318322            psFitsClose(fits);
     
    321325        {
    322326            psFits *fits = psFitsOpen("psf_field_resid.fits", "w");
     327            pmStackVisualPlotTestImage(generated->image, "psf_field_resid.fits");
    323328            psFitsWriteImage(fits, NULL, generated->image, 0, NULL);
    324329            psFitsClose(fits);
  • trunk/psModules/src/imcombine/pmStack.c

    r21476 r23242  
    88 *  @author GLG, MHPCC
    99 *
    10  *  @version $Revision: 1.48 $ $Name: not supported by cvs2svn $
    11  *  @date $Date: 2009-02-13 23:52:14 $
     10 *  @version $Revision: 1.48.2.1 $ $Name: not supported by cvs2svn $
     11 *  @date $Date: 2009-02-19 17:59:50 $
    1212 *  Copyright 2004-2007 Institute for Astronomy, University of Hawaii
    1313 *
  • trunk/psModules/src/imcombine/pmSubtractionIO.c

    r22699 r23242  
    1616
    1717#include "pmSubtractionIO.h"
     18#include "pmStackVisual.h"
    1819
    1920#define ARRAY_BUFFER 16                 // Number to add to array at a time
     
    144145    // CVS tags, used to identify the version of this file (in case incompatibilities are introduced)
    145146    psString cvsFile = psStringCopy("$RCSfile: pmSubtractionIO.c,v $");
    146     psString cvsRev  = psStringCopy("$Revision: 1.9 $");
    147     psString cvsDate = psStringCopy("$Date: 2008-10-24 21:21:06 $");
     147    psString cvsRev  = psStringCopy("$Revision: 1.9.18.1 $");
     148    psString cvsDate = psStringCopy("$Date: 2009-02-19 17:59:50 $");
    148149    psStringSubstitute(&cvsFile, NULL, "RCSfile: ");
    149150    psStringSubstitute(&cvsRev,  NULL, "Revision: ");
     
    167168
    168169    psImage *image = psMetadataLookupPtr(NULL, ro->analysis, PM_SUBTRACTION_ANALYSIS_KERNEL_IMAGE); // Image
     170    pmStackVisualPlotTestImage(image, "Subtraction_kernels.fits");
     171
    169172    if (image && !psFitsWriteImage(fits, header, image, 0, EXTNAME_IMAGE)) {
    170173        psError(PS_ERR_IO, false, "Unable to write subtraction kernel image.");
  • trunk/psModules/src/imcombine/pmSubtractionVisual.c

    r21422 r23242  
    2828
    2929//variables to determine when things are plotted
    30 static bool isVisual             = false;
    3130static bool plotConvKernels      = true;
    3231static bool plotStamps           = true;
     
    4241// Initialization Routines
    4342
    44 /** start or stop plotting */
    45 bool pmSubtractionSetVisual (bool mode) {
    46     isVisual = mode;
    47     return true;
    48 }
    4943
    5044
     
    6559 *    @return true for success */
    6660bool pmSubtractionVisualPlotConvKernels(psImage *convKernels) {
    67     if (!isVisual || !plotConvKernels) return true;
     61    if (!pmVisualIsVisual() || !plotConvKernels) return true;
    6862    if (!pmVisualInitWindow(&kapa, "ppSub:Images")) {
    69         isVisual = false;
    7063        return false;
    7164    }
    7265    pmVisualScaleImage(kapa, convKernels, "Convolution_Kernels", 0, true);
    73     pmVisualAskUser(&plotConvKernels, &isVisual);
     66    pmVisualAskUser(&plotConvKernels);
    7467    return true;
    7568}
     
    8073    @return true for success */
    8174bool pmSubtractionVisualPlotStamps(pmSubtractionStampList *stamps, pmReadout *ro) {
    82     if (!isVisual || !plotStamps) return true;
     75    if (!pmVisualIsVisual() || !plotStamps) return true;
    8376    if (!pmVisualInitWindow (&kapa, "ppSub:Images")) {
    84         isVisual = false;
    8577        return false;
    8678    }
    8779    if (!pmVisualInitWindow (&kapa2, "ppSub:StampMasterImage")) {
    88         isVisual = false;
    8980        return false;
    9081    }
     
    145136    pmVisualScaleImage(kapa, canvas, "Subtraction_Stamps", 0, true);
    146137
    147     pmVisualAskUser(&plotStamps, &isVisual);
     138    pmVisualAskUser(&plotStamps);
    148139    return true;
    149140}
     
    152143bool pmSubtractionVisualPlotLeastSquares (pmSubtractionStampList *stamps, bool dual) {
    153144
    154     if (!isVisual || !plotLeastSquares) return true;
     145    if (!pmVisualIsVisual() || !plotLeastSquares) return true;
    155146    if (!pmVisualInitWindow (&kapa, "PPSub:Images")) {
    156         isVisual = false;
    157147        return false;
    158148    }
     
    209199    pmVisualScaleImage(kapa, canvas32, "Least_Squares", 0, true);
    210200
    211     pmVisualAskUser(&plotLeastSquares, &isVisual);
     201    pmVisualAskUser(&plotLeastSquares);
    212202    psFree(canvas);
    213203    psFree(canvas32);
     
    216206
    217207bool pmSubtractionVisualShowSubtraction(psImage *image, psImage *ref, psImage *sub) {
    218     if (!isVisual || !plotImage) return true;
     208    if (!pmVisualIsVisual() || !plotImage) return true;
    219209    if (!pmVisualInitWindow (&kapa, "PPSub:Images")) {
    220         isVisual = false;
    221210        return false;
    222211    }
     
    225214    pmVisualScaleImage(kapa, ref, "Reference", 1, true);
    226215    pmVisualScaleImage(kapa, sub, "Subtraction", 2, true);
    227     pmVisualAskUser(&plotImage, &isVisual);
     216    pmVisualAskUser(&plotImage);
    228217    return true;
    229218}
     
    267256
    268257#else
    269 bool pmSubtractionSetVisual (bool mode) {return true;}
    270258bool pmSubtractionVisualClose() {return true;}
    271259bool pmSubtractionVisualPlotConvKernels(psImage *convKernels) {return true;}
  • trunk/psModules/src/imcombine/pmSubtractionVisual.h

    r21422 r23242  
    22#define PM_SUBTRACTION_VISUAL_H
    33
    4 bool pmSubtractionSetVisual (bool mode);
    54bool pmSubtractionVisualClose();
    65bool pmSubtractionVisualPlotConvKernels(psImage *convKernels);
  • trunk/psModules/src/objects/pmSourceVisual.c

    r22752 r23242  
    99#if (HAVE_KAPA)
    1010#include <kapa.h>
     11#include "pmVisual.h"
    1112
    1213// functions used to visualize the analysis as it goes
    1314// these are invoked by the -visual options
    1415
    15 static bool isVisual = false;
    1616static int kapa1 = -1;
     17static bool plotPSF = true;
    1718// static int kapa2 = -1;
    1819// static int kapa3 = -1;
    1920
     21bool pmSourceVisualClose() {
     22    if (kapa1 != -1)
     23        KiiClose(kapa1);
     24    return true;
     25}
     26
    2027bool pmSourcePlotPoints3D (int myKapa, Graphdata *graphdata, psVector *xn, psVector *yn, psVector *zn, float theta, float phi);
    2128
    22 bool pmSourceSetVisual (bool mode) {
    23 
    24     isVisual = mode;
    25     return true;
    26 }
    2729
    2830bool pmSourceVisualPSFModelResid (pmTrend2D *trend, psVector *x, psVector *y, psVector *param, psVector *mask) {
     
    3234    Graphdata graphdata;
    3335
    34     if (!isVisual) return true;
     36    if (!pmVisualIsVisual() || !plotPSF) return true;
    3537
    3638    if (kapa1 == -1) {
     
    3840        if (kapa1 == -1) {
    3941            fprintf (stderr, "failure to open kapa; visual mode disabled\n");
    40             isVisual = false;
     42            pmVisualSetVisual(false);
    4143            return false;
    4244        }
     
    152154    // pause and wait for user input:
    153155    // continue, save (provide name), ??
    154     char key[10];
    155     fprintf (stdout, "[c]ontinue? ");
    156     if (!fgets(key, 8, stdin)) {
    157         psWarning("Unable to read option");
    158     }
     156    pmVisualAskUser(&plotPSF);
     157
    159158    return true;
    160159}
  • trunk/psModules/src/objects/pmSourceVisual.h

    r20582 r23242  
    11/* @file  pmKapaPlots.h
    2  * @brief functions to make plots with the external program 'kapa' 
     2 * @brief functions to make plots with the external program 'kapa'
    33 *
    44 * @author EAM, IfA
    55 *
    6  * @version $Revision: 1.1 $ $Name: not supported by cvs2svn $
    7  * @date $Date: 2008-11-08 01:52:34 $
     6 * @version $Revision: 1.1.16.1 $ $Name: not supported by cvs2svn $
     7 * @date $Date: 2009-02-19 17:59:50 $
    88 * Copyright 2006 Institute for Astronomy, University of Hawaii
    99 */
     
    1212#define PM_SOURCE_VISUAL_H
    1313
     14bool pmSourceVisualClose(void);
     15
    1416/// @addtogroup Extras Miscellaneous Funtions
    1517/// @{
    1618
    17 bool pmSourceSetVisual (bool mode);
    1819bool pmSourceVisualPSFModelResid (pmTrend2D *trend, psVector *x, psVector *y, psVector *param, psVector *mask);
    1920
  • trunk/psModules/src/psmodules.h

    r23184 r23242  
    101101#include <pmReadoutCombine.h>
    102102#include <pmSubtractionVisual.h>
     103#include <pmStackVisual.h>
    103104
    104105// the following headers are from psModule:objects
  • trunk/psastro

  • trunk/psastro/src/psastroArguments.c

    r21422 r23242  
    66 *
    77 *  @author IfA
    8  *  @version $Revision: 1.34 $ $Name: not supported by cvs2svn $
    9  *  @date $Date: 2009-02-09 21:25:34 $
     8 *  @version $Revision: 1.34.2.1 $ $Name: not supported by cvs2svn $
     9 *  @date $Date: 2009-02-19 17:59:50 $
    1010 *  Copyright 2009 Institute for Astronomy, University of Hawaii
    1111 */
     
    100100    if ((N = psArgumentGet (argc, argv, "-visual"))) {
    101101        psArgumentRemove (N, &argc, argv);
    102         pmAstromSetVisual (true);
     102        pmVisualSetVisual (true);
    103103    }
    104104
  • trunk/psastro/src/psastroCleanup.c

    r21422 r23242  
    66 *
    77 *  @author IfA
    8  *  @version $Revision: 1.8 $ $Name: not supported by cvs2svn $
    9  *  @date $Date: 2009-02-09 21:25:34 $
     8 *  @version $Revision: 1.8.2.1 $ $Name: not supported by cvs2svn $
     9 *  @date $Date: 2009-02-19 17:59:50 $
    1010 *  Copyright 2009 Institute for Astronomy, University of Hawaii
    1111 */
     
    1616
    1717    psFree (config);
    18     pmAstromVisualClose ();
     18    pmVisualClose ();
    1919
    2020    psTimerStop ();
  • trunk/psphot

  • trunk/psphot/src/psphot.h

    r23195 r23242  
    171171
    172172// psphotVisual functions
    173 bool psphotSetVisual (bool mode);
    174173bool psphotVisualShowImage (pmReadout *readout);
    175174bool psphotVisualShowBackground (pmConfig *config, const pmFPAview *view, pmReadout *readout);
  • trunk/psphot/src/psphotArguments.c

    r21458 r23242  
    8282    if ((N = psArgumentGet (argc, argv, "-visual"))) {
    8383        psArgumentRemove (N, &argc, argv);
    84         psphotSetVisual (true);
    85         // pmSourceSetVisual (true);
     84        pmVisualSetVisual(true);
    8685    }
    8786
  • trunk/psphot/src/psphotVisual.c

    r21519 r23242  
    1818// these are invoked by the -visual options
    1919
    20 static bool isVisual = false;
    2120static int kapa = -1;
    2221static int kapa2 = -1;
    2322static int kapa3 = -1;
    2423
    25 bool psphotSetVisual (bool mode) {
    26 
    27     isVisual = mode;
    28     return true;
    29 }
    3024
    3125bool psphotVisualShowMask (int kapaFD, psImage *inImage, const char *name, int channel) {
     
    135129bool psphotVisualShowImage (pmReadout *readout) {
    136130
    137     if (!isVisual) return true;
     131    if (!pmVisualIsVisual()) return true;
    138132
    139133    if (kapa == -1) {
     
    141135        if (kapa == -1) {
    142136            fprintf (stderr, "failure to open kapa; visual mode disabled\n");
    143             isVisual = false;
     137            pmVisualSetVisual(false);
    144138            return false;
    145139        }
     
    164158    pmReadout *backgnd;
    165159
    166     if (!isVisual) return true;
     160    if (!pmVisualIsVisual()) return true;
    167161
    168162    if (kapa == -1) {
     
    170164        if (kapa == -1) {
    171165            fprintf (stderr, "failure to open kapa; visual mode disabled\n");
    172             isVisual = false;
     166            pmVisualSetVisual(false);
    173167            return false;
    174168        }
     
    199193bool psphotVisualShowSignificance (psImage *image) {
    200194
    201     if (!isVisual) return true;
     195    if (!pmVisualIsVisual()) return true;
    202196
    203197    if (kapa == -1) {
     
    205199        if (kapa == -1) {
    206200            fprintf (stderr, "failure to open kapa; visual mode disabled\n");
    207             isVisual = false;
     201            pmVisualSetVisual(false);
    208202            return false;
    209203        }
     
    228222    KiiOverlay *overlay;
    229223
    230     if (!isVisual) return true;
     224    if (!pmVisualIsVisual()) return true;
    231225
    232226    if (kapa == -1) {
     
    306300    KiiOverlay *overlay;
    307301
    308     if (!isVisual) return true;
     302    if (!pmVisualIsVisual()) return true;
    309303
    310304    if (kapa == -1) {
     
    423417    psEllipseAxes axes;
    424418
    425     if (!isVisual) return true;
     419    if (!pmVisualIsVisual()) return true;
    426420
    427421    if (kapa == -1) {
     
    478472    Graphdata graphdata;
    479473
    480     if (!isVisual) return true;
     474    if (!pmVisualIsVisual()) return true;
    481475
    482476    if (kapa3 == -1) {
     
    484478        if (kapa3 == -1) {
    485479            fprintf (stderr, "failure to open kapa; visual mode disabled\n");
    486             isVisual = false;
     480            pmVisualSetVisual(false);
    487481            return false;
    488482        }
     
    694688bool psphotVisualShowRoughClass (psArray *sources) {
    695689
    696     if (!isVisual) return true;
     690    if (!pmVisualIsVisual()) return true;
    697691
    698692    if (kapa == -1) {
     
    723717bool psphotVisualShowPSFModel (pmReadout *readout, pmPSF *psf) {
    724718
    725     if (!isVisual) return true;
     719    if (!pmVisualIsVisual()) return true;
    726720
    727721    if (kapa2 == -1) {
     
    729723        if (kapa2 == -1) {
    730724            fprintf (stderr, "failure to open kapa; visual mode disabled\n");
    731             isVisual = false;
     725            pmVisualSetVisual(false);
    732726            return false;
    733727        }
     
    801795    bool status;
    802796
    803     if (!isVisual) return true;
     797    if (!pmVisualIsVisual()) return true;
    804798
    805799    if (kapa2 == -1) {
     
    807801        if (kapa2 == -1) {
    808802            fprintf (stderr, "failure to open kapa; visual mode disabled\n");
    809             isVisual = false;
     803            pmVisualSetVisual(false);
    810804            return false;
    811805        }
     
    961955    bool status;
    962956
    963     if (!isVisual) return true;
     957    if (!pmVisualIsVisual()) return true;
    964958
    965959    if (kapa2 == -1) {
     
    967961        if (kapa2 == -1) {
    968962            fprintf (stderr, "failure to open kapa; visual mode disabled\n");
    969             isVisual = false;
     963            pmVisualSetVisual(false);
    970964            return false;
    971965        }
     
    12141208    KapaSection section;  // put the positive profile in one and the residuals in another?
    12151209
    1216     if (!isVisual) return true;
     1210    if (!pmVisualIsVisual()) return true;
    12171211
    12181212    if (kapa3 == -1) {
     
    12201214        if (kapa3 == -1) {
    12211215            fprintf (stderr, "failure to open kapa; visual mode disabled\n");
    1222             isVisual = false;
     1216            pmVisualSetVisual(false);
    12231217            return false;
    12241218        }
     
    12861280    psEllipseAxes axes;
    12871281
    1288     if (!isVisual) return true;
     1282    if (!pmVisualIsVisual()) return true;
    12891283
    12901284    if (kapa == -1) {
     
    13871381    KiiOverlay *overlay;
    13881382
    1389     if (!isVisual) return true;
     1383    if (!pmVisualIsVisual()) return true;
    13901384
    13911385    if (kapa == -1) {
     
    14641458    KapaSection section;
    14651459
    1466     if (!isVisual) return true;
     1460    if (!pmVisualIsVisual()) return true;
    14671461
    14681462    if (kapa3 == -1) {
     
    14701464        if (kapa3 == -1) {
    14711465            fprintf (stderr, "failure to open kapa; visual mode disabled\n");
    1472             isVisual = false;
     1466            pmVisualSetVisual(false);
    14731467            return false;
    14741468        }
     
    16041598bool psphotVisualShowResidualImage (pmReadout *readout) {
    16051599
    1606     if (!isVisual) return true;
     1600    if (!pmVisualIsVisual()) return true;
    16071601
    16081602    if (kapa == -1) {
     
    16101604        if (kapa == -1) {
    16111605            fprintf (stderr, "failure to open kapa; visual mode disabled\n");
    1612             isVisual = false;
     1606            pmVisualSetVisual(false);
    16131607            return false;
    16141608        }
     
    16311625    Graphdata graphdata;
    16321626
    1633     if (!isVisual) return true;
     1627    if (!pmVisualIsVisual()) return true;
    16341628
    16351629    if (kapa3 == -1) {
     
    16371631        if (kapa3 == -1) {
    16381632            fprintf (stderr, "failure to open kapa; visual mode disabled\n");
    1639             isVisual = false;
     1633            pmVisualSetVisual(false);
    16401634            return false;
    16411635        }
     
    17121706# else
    17131707
    1714 bool psphotSetVisual (bool mode){}
    17151708bool psphotVisualShowImage (pmConfig *config, pmReadout *readout) { return true; }
    17161709bool psphotVisualShowBackground (pmConfig *config, const pmFPAview *view, pmReadout *readout) { return true; }
  • trunk/pswarp/src/pswarpArguments.c

    r22736 r23242  
    4141        if ((arg = psArgumentGet(argc, argv, "-psphot-visual"))) {
    4242            psArgumentRemove(arg, &argc, argv);
    43             psphotSetVisual(true);
     43            pmVisualSetVisual(true);
    4444        }
    4545    }
Note: See TracChangeset for help on using the changeset viewer.