// G. Le Meur 04/2000 #ifndef FIOSPHEREHEALPIX_SEEN #define FIOSPHEREHEALPIX_SEEN #include "sphericalmap.h" #include "tvector.h" #include "ndatablock.h" #include "spherehealpix.h" #include "anydataobj.h" #include "ppersist.h" // // ------------- Classes pour la gestion de persistance -- // namespace SOPHYA { template class FIO_SphereHEALPix : public PPersist { public: FIO_SphereHEALPix(); FIO_SphereHEALPix(string const & filename); FIO_SphereHEALPix(const SphereHEALPix& obj); FIO_SphereHEALPix(SphereHEALPix* obj); virtual ~FIO_SphereHEALPix(); virtual AnyDataObj* DataObj(); virtual void SetDataObj(AnyDataObj & o); inline operator SphereHEALPix() { return(*dobj_); } protected : virtual void ReadSelf(PInPersist&); virtual void WriteSelf(POutPersist&) const; SphereHEALPix* dobj_; bool ownobj; }; /*! \ingroup SkyMap \fn operator<<(POutPersist&,SphereHEALPix&) \brief Write SphereHEALPix \b obj into POutPersist stream \b os */ template inline POutPersist& operator << (POutPersist& os, SphereHEALPix & obj) { FIO_SphereHEALPix fio(&obj); fio.Write(os); return(os); } /*! \ingroup SkyMap \fn operator>>(PInPersist&,SphereHEALPix&) \brief Read SphereHEALPix \b obj from PInPersist stream \b os */ template inline PInPersist& operator >> (PInPersist& is, SphereHEALPix & obj) { FIO_SphereHEALPix fio(&obj); fio.Read(is); return(is); } } // Fin du namespace #endif