IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Jan 4, 2006, 10:00:28 PM (21 years ago)
Author:
eugene
Message:

fixes for skyregion, generate

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Ohana/src/libdvo/src/skyregion_io.c

    r5451 r5900  
    9090  int status;
    9191
    92   /* first option: catdir/SkyTable.fits */
     92  /* first option: CATDIR/SkyTable.fits */
     93  sprintf (filename, "%s/SkyTable.fits", catdir);
     94  if (stat (filename, &filestat)) goto SKYFILE;
     95  if (!check_file_access (filename, FALSE, verbose)) goto SKYFILE;
     96  sky = SkyTableLoad (filename, verbose);
     97  if (sky == NULL) {
     98    fprintf (stderr, "error loading sky table\n");
     99    exit (1);
     100  }
     101  return (sky);
     102
     103SKYFILE:
     104  /* second option: SKYFILE */
     105  if (skyfile == NULL) goto GSCFILE;
     106  if (skyfile[0] != 0) goto GSCFILE;
     107  if (stat (skyfile, &filestat)) goto GSCFILE;
     108  if (!check_file_access (skyfile, FALSE, verbose)) goto GSCFILE;
     109  sky = SkyTableLoad (skyfile, verbose);
     110  if (sky == NULL) {
     111    fprintf (stderr, "error loading sky table\n");
     112    exit (1);
     113  }
     114  /* set the depths to the default depth */
     115  SkyTableSetDepth (sky, depth);
     116
     117  /* create CATDIR copy */
    93118  sprintf (filename, "%s/SkyTable.fits", catdir);
    94119  check_file_access (filename, FALSE, verbose);
     120  SkyTableSave (sky, filename);
     121  fits_convert_SkyRegion (sky[0].regions, sizeof (SkyTable), sky[0].Nregions);
     122  return (sky);
    95123
    96   /* check for file existence */
    97   status = stat (filename, &filestat);
    98   if (status == 0) { /* file exists, are permissions OK? */
    99     sky = SkyTableLoad (filename, verbose);
    100     if (sky == NULL) {
    101       fprintf (stderr, "error loading sky table\n");
    102       exit (1);
    103     }
    104     return (sky);
    105   }
    106 
    107   /* first option: SKY_TABLE */
    108   if ((skyfile != NULL) && (skyfile[0] != 0)) {
    109     status = stat (skyfile, &filestat);
    110     if (status == 0) { /* file exists, are permissions OK? */
    111       sky = SkyTableLoad (skyfile, verbose);
    112       if (sky == NULL) {
    113         fprintf (stderr, "error loading sky table\n");
    114         exit (1);
    115       }
    116       SkyTableSetDepth (sky, depth);
    117 
    118       /* write CATDIR copy */
    119       sprintf (filename, "%s/SkyTable.fits", catdir);
    120       check_file_access (filename, FALSE, verbose);
    121       SkyTableSave (sky, filename);
    122       fits_convert_SkyRegion (sky[0].regions, sizeof (SkyTable), sky[0].Nregions);
    123       return (sky);
    124     }
    125   }
    126 
     124GSCFILE:
     125  /* third option: GSCFILE */
    127126  sky = SkyTableFromGSC (gscfile, depth, verbose);
    128127  if (sky == NULL) {
     
    131130  }
    132131
    133   /* write CATDIR copy */
     132  /* create CATDIR copy */
    134133  sprintf (filename, "%s/SkyTable.fits", catdir);
    135134  check_file_access (filename, FALSE, verbose);
    136135  SkyTableSave (sky, filename);
    137136  fits_convert_SkyRegion (sky[0].regions, sizeof (SkyRegion), sky[0].Nregions);
    138 
    139137  return (sky);
    140138}
Note: See TracChangeset for help on using the changeset viewer.