Changeset 1954 in Sophya


Ignore:
Timestamp:
Mar 28, 2002, 2:10:57 PM (24 years ago)
Author:
ansari
Message:

protection/lancement exception ds HEALPix::xxx et FIO_SphereHEALPix<T>::SetDataObj() - Reza 28/3/2002

Location:
trunk/SophyaLib/SkyMap
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/SophyaLib/SkyMap/HEALPixUtils.cc

    r1392 r1954  
    175175 
    176176  if(  nside<1 ||  nside>ns_max ) {
    177     cout << "nside out of range" << endl;
    178     exit(0);
     177    char buff[64];
     178    sprintf(buff,"HEALPix::nest2ring nside(=%d) out of range ", nside);
     179    throw RangeCheckError(PExcLongMessage(buff));
    179180  }
    180181  npix = 12 *  nside* nside;
    181182  if( ipnest<0 || ipnest>npix-1 ) {
    182     cout << "ipnest out of range" << endl;
    183     exit(0);
     183    char buff[64];
     184    sprintf(buff,"HEALPix::nest2ring ipnest(=%d) out of range ", ipnest);
     185    throw RangeCheckError(PExcLongMessage(buff));
    184186  }
    185187
     
    261263 
    262264  if( nside<1 || nside>ns_max ) {
    263     cout << "nside out of range" << endl;
    264     exit(0);
     265    char buff[64];
     266    sprintf(buff,"HEALPix::ring2nest nside(=%d) out of range ", nside);
     267    throw RangeCheckError(PExcLongMessage(buff));
    265268  }
    266269  npix = 12 * nside*nside;
    267270  if( ipring<0 || ipring>npix-1 ) {
    268     cout << "ipring out of range" << endl;
    269     exit(0);
     271    char buff[64];
     272    sprintf(buff,"HEALPix::ring2nest ipring(=%d) out of range ", ipring);
     273    throw RangeCheckError(PExcLongMessage(buff));
    270274  }
    271275 
     
    364368
    365369  if( nside<1 || nside>ns_max ) {
    366     cout << "nside out of range" << endl;
    367     exit(0);
     370    char buff[64];
     371    sprintf(buff,"HEALPix::ang2pix_ring nside(=%d) out of range ", nside);
     372    throw RangeCheckError(PExcLongMessage(buff));
    368373  }
    369374
    370375  if( theta<0. || theta>Pi) {
    371     cout << "theta out of range" << endl;
    372     exit(0);
     376    char buff[64];
     377    sprintf(buff,"HEALPix::ang2pix_ring theta(=%g) out of range ", theta);
     378    throw RangeCheckError(PExcLongMessage(buff));
    373379  }
    374380
     
    447453 
    448454  if( nside<1 || nside>ns_max ) {
    449     cout << "nside out of range" << endl;
    450     exit(0);
     455    char buff[64];
     456    sprintf(buff,"HEALPix:::ang2pix_nest nside(=%d) out of range ", nside);
     457    throw RangeCheckError(PExcLongMessage(buff));
    451458  }
    452459  if( theta<0 || theta>Pi ) {
    453     cout << "theta out of range" << endl;
    454     exit(0);
     460    char buff[64];
     461    sprintf(buff,"HEALPix:::ang2pix_nest theta(=%g) out of range ", theta);
     462    throw RangeCheckError(PExcLongMessage(buff));
    455463  }
    456464  z  = cos(theta);
     
    531539 
    532540  if( nside<1 || nside>ns_max ) {
    533     cout << "nside out of range" << endl;
    534     exit(0);
     541    char buff[64];
     542    sprintf(buff,"HEALPix::pix2ang_ring nside(=%d) out of range ", nside);
     543    throw RangeCheckError(PExcLongMessage(buff));
    535544  }
    536545  npix = 12*nside*nside;      // ! total number of points
    537546  if( ipix<0 || ipix>npix-1 ) {
    538     cout << "ipix out of range" << endl;
    539     exit(0);
     547    char buff[64];
     548    sprintf(buff,"HEALPix::pix2ang_ring ipix(=%d) out of range ", ipix);
     549    throw RangeCheckError(PExcLongMessage(buff));
    540550  }
    541551 
     
    609619 
    610620  if( nside<1 || nside>ns_max ) {
    611     cout << "nside out of range" << endl;
    612     exit(0);
     621    char buff[64];
     622    sprintf(buff,"HEALPix::pix2ang_nest nside(=%d) out of range ", nside);
     623    throw RangeCheckError(PExcLongMessage(buff));
    613624  }
    614625  npix = 12 * nside*nside;
    615626  if( ipix<0 || ipix>npix-1 ) {
    616     cout << "ipix out of range" << endl;
    617     exit(0);
     627    char buff[64];
     628    sprintf(buff,"HEALPix::pix2ang_nest ipix(=%d) out of range ", ipix);
     629    throw RangeCheckError(PExcLongMessage(buff));
    618630  }
    619631 
  • trunk/SophyaLib/SkyMap/fiospherehealpix.cc

    r1624 r1954  
    44#include "pexceptions.h"
    55#include "fiondblock.h"
     6#include "datatype.h"
     7#include <typeinfo>
    68
    79//*******************************************************************
     
    5557{
    5658  SphereHEALPix<T> * po = dynamic_cast< SphereHEALPix<T> * >(&o);
    57   if (po == NULL) return;
     59  if (po == NULL) {
     60    char buff[160];
     61    sprintf(buff,"FIO_SphereHEALPix<%s>::SetDataObj(%s) - Object type error ! ",
     62            DataTypeInfo<T>::getTypeName().c_str(), typeid(o).name());
     63    throw TypeMismatchExc(PExcLongMessage(buff));
     64  }
    5865  if (ownobj && dobj_) delete dobj_;
    5966  dobj_ = po; ownobj = false;
     
    93100  is.GetR8(Omega);
    94101  dobj_->setParameters(nSide,nPix, Omega);
    95 
     102  cout << " DBG-FIO_SphereHEALPix<T> nSide=" << nSide << " nPix=" << nPix << endl;
    96103// On lit les DataBlocks;
    97104  FIO_NDataBlock<T> fio_nd(&dobj_->pixels_);
     
    101108  FIO_NDataBlock<int_4> fio_ndi2(&dobj_->sliceLenght_);
    102109  fio_ndi2.Read(is);
     110
     111  cout << " DBG-2 SizeIndex()= " << dobj_->SizeIndex()
     112       << " NbPixels()= " << dobj_->NbPixels() << endl;
    103113}
    104114 
Note: See TracChangeset for help on using the changeset viewer.