Changeset 1441 in Sophya for trunk/SophyaProg/PrgUtil/scanfits.cc


Ignore:
Timestamp:
Mar 14, 2001, 5:25:02 PM (25 years ago)
Author:
ansari
Message:

documentation PrgUtil (fichiers .cc) pour doxygen - Reza 14/3/2001

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/SophyaProg/PrgUtil/scanfits.cc

    r1306 r1441  
    1111#include "fitsntuple.h"
    1212
     13/*!
     14  \ingroup PrgUtil
     15  \file scanfits.cc
     16  \brief \b scanfits: Check and scan FITS files
     17
     18  Scan FITS files and prints information on each FITS bloc in file.
     19  Uses the FitsIOServer module.
     20
     21  \verbatim
     22  Usage: scanfits FITSFilename
     23  \endverbatim
     24 */
     25
     26string FITSExtType2String(FitsFile::FitsExtensionType exttype)
     27{
     28  if (exttype == FitsFile::FitsExtensionType_IMAGE) return("IMAGE");
     29  else if (exttype == FitsFile::FitsExtensionType_ASCII_TBL) return("ASCII_TBL");
     30  else if (exttype == FitsFile::FitsExtensionType_BINARY_TBL) return("BINARY_TBL");
     31  else if (exttype == FitsFile::FitsExtensionType_EOF) return("EOF");
     32  else if (exttype == FitsFile::FitsExtensionType_ERROR) return("ERROR");
     33  else return("Unknown?");
     34}
     35
     36string FITSDataType2String(FitsFile::FitsDataType datatype)
     37{
     38  if (datatype == FitsFile::FitsDataType_double) return("double");
     39  else if (datatype == FitsFile::FitsDataType_float) return("float");
     40  else if (datatype == FitsFile::FitsDataType_int) return("int");
     41  else if (datatype == FitsFile::FitsDataType_long) return("long");
     42  else if (datatype == FitsFile::FitsDataType_byte) return("byte");
     43  else if (datatype == FitsFile::FitsDataType_char) return("char");
     44  else if (datatype == FitsFile::FitsDataType_ASCII) return("ASCII");
     45  else if (datatype == FitsFile::FitsDataType_NULL) return("NULL");
     46  else return("Unknown?");
     47}
     48
    1349int main(int narg, char *arg[])
    1450{
     
    2157    string flnm = arg[1];
    2258    int nbblk = FitsInFile::NbBlocks(arg[1]);
    23     cout << " :::: File " << flnm << " has " << nbblk << " blocks " << endl;
    24     DVList header;
    25     FitsFile::FitsExtensionType exttype;
    26     FitsFile::FitsDataType datatype;
     59    cout << " :::::::: File " << flnm << " has " << nbblk << " blocks "
     60         << " :::::::: " << endl;
    2761
    28     cout << " FitsFile::FitsExtensionType : FitsExtensionType_IMAGE= " <<
    29       (int)FitsFile::FitsExtensionType_IMAGE <<
    30       "  FitsExtensionType_ASCII_TBL= " << (int)FitsFile::FitsExtensionType_ASCII_TBL <<
    31       "  FitsExtensionType_BINARY_TBL= " << (int)FitsFile::FitsExtensionType_BINARY_TBL << endl;
    32     cout << " FitsFile::FitsDataType: FitsDataType_double= " <<
    33       (int)FitsFile::FitsDataType_double <<
    34       " FitsDataType_float= " << (int)FitsFile::FitsDataType_float <<
    35       " FitsDataType_int= " << (int)FitsFile::FitsDataType_int <<
    36       " FitsDataType_char= " << (int)FitsFile::FitsDataType_char <<
    37       " FitsDataType_ASCII= " << (int)FitsFile::FitsDataType_ASCII << endl << endl;
     62    //    cout << " FitsFile::FitsExtensionType : FitsExtensionType_IMAGE= " <<
     63    //      (int)FitsFile::FitsExtensionType_IMAGE <<
     64    //      "  FitsExtensionType_ASCII_TBL= " << (int)FitsFile::FitsExtensionType_ASCII_TBL <<
     65    //      "  FitsExtensionType_BINARY_TBL= " << (int)FitsFile::FitsExtensionType_BINARY_TBL << endl;
     66    //    cout << " FitsFile::FitsDataType: FitsDataType_double= " <<
     67    //      (int)FitsFile::FitsDataType_double <<
     68    //      " FitsDataType_float= " << (int)FitsFile::FitsDataType_float <<
     69    //      " FitsDataType_int= " << (int)FitsFile::FitsDataType_int <<
     70    //      " FitsDataType_char= " << (int)FitsFile::FitsDataType_char <<
     71    //      " FitsDataType_ASCII= " << (int)FitsFile::FitsDataType_ASCII << endl << endl;
    3872
    39     int naxis;
    40     vector<int> axis;
    4173    for(int i=1; i<=nbblk; i++) {
     74      int naxis;
     75      vector<int> axis;
     76      DVList header;
     77      FitsFile::FitsExtensionType exttype;
     78      FitsFile::FitsDataType datatype;
     79
    4280      FitsInFile::GetBlockType(arg[1], i, exttype, naxis, axis, datatype, header);
    43       cout << " --------- Header Num " << i << " Type " << (int)exttype
    44            << " NAxis= " << naxis << " (" << axis.size() << " )"
    45            << " DataType= " << (int)datatype << endl;
    46       for(int j=0; j<axis.size(); j++) cout  << axis[j] << " x "  ;
    47       cout << endl;
     81      cout << "\n--------- Header Num " << i << " Type " << FITSExtType2String(exttype)
     82           << "  --- NAxis= " << naxis
     83           << " DataType= " << FITSDataType2String(datatype) << endl;
     84      if (axis.size() > 0) {
     85        cout << " >> Axis Sizes: " ;
     86        for(int j=0; j<axis.size(); j++) {
     87          if (j > 0) cout << " x " ;
     88          cout  << axis[j] ;
     89        }
     90        cout << endl;
     91      }
     92      cout << " >>> Header info : " ;
    4893      cout << header << endl;
    49       cout << "----------------------------------------------------" << endl;
     94      cout << "----------------------------------------------------------------------"
     95           << endl;
    5096    }
    5197 
    5298  }
    5399  catch (PThrowable & exc) {
    54     cerr << " Catched Exception " << (string)typeid(exc).name()
    55          << " - Msg= " << exc.Msg() << endl;
     100    cerr << "sanfits: Catched Exception " << (string)typeid(exc).name()
     101         << "\n .... Msg= " << exc.Msg() << endl;
    56102  }
    57103  catch (...) {
Note: See TracChangeset for help on using the changeset viewer.