// Guy Le Meur 04/2000 #ifndef FITSTARRAY_SEEN #define FITSTARRAY_SEEN #include "pexceptions.h" #include "tarray.h" #include "fitsfile.h" namespace SOPHYA { ///////////////////////////////////////////////////////////////////////// // Classe pour la gestion de persistance sur fichiers fits ///////////////////////////////////////////////////////////////////////// template class FITS_TArray : public FitsIOHandler { public: FITS_TArray(); FITS_TArray(const char inputfile[],int hdunum=0); FITS_TArray(const TArray & obj); FITS_TArray(TArray *obj); virtual ~FITS_TArray(); virtual AnyDataObj* DataObj(); virtual void SetDataObj(AnyDataObj & o); inline operator TArray() { return(*dobj_); } protected : void ReadFromFits(FitsInFile& is); void WriteToFits(FitsOutFile& os) ; TArray * dobj_; bool ownobj_; }; ////////////////////////////////////////////////////////////////// template inline FitsOutFile& operator << (FitsOutFile& fios, TArray & arr) { FITS_TArray fih(&arr); fih.Write(fios); return (fios); } template inline FitsInFile& operator >> (FitsInFile& fiis, TArray & arr) { FITS_TArray fih(&arr); fih.Read(fiis); return (fiis); } } // Fin du namespace #endif