| Last change
 on this file since 1220 was             908, checked in by ansari, 26 years ago | 
        
          | 
divers nettoyages : const. de copie, surcharge = etc.
 | 
        
          | File size:
            1.3 KB | 
      
      
| Rev | Line |  | 
|---|
| [764] | 1 | #ifndef SPHERICALMAP_SEEN | 
|---|
|  | 2 | #define SPHERICALMAP_SEEN | 
|---|
|  | 3 |  | 
|---|
|  | 4 | // valeurs de Pi, 2*Pi, etc | 
|---|
|  | 5 | #include "smathconst.h" | 
|---|
|  | 6 | #include <math.h> | 
|---|
|  | 7 | #include "pixelmap.h" | 
|---|
|  | 8 | #include "tvector.h" | 
|---|
|  | 9 |  | 
|---|
|  | 10 | // Map of pixels on a whole sphere. | 
|---|
|  | 11 | // Class hierarchy : | 
|---|
|  | 12 | //   PixelMap | 
|---|
|  | 13 | //      SphericalMap | 
|---|
|  | 14 | //         SphereThetaPhi | 
|---|
|  | 15 | //         SphereGorski | 
|---|
|  | 16 | //         SphereIco | 
|---|
|  | 17 | //      LocalMap | 
|---|
|  | 18 |  | 
|---|
| [908] | 19 |  | 
|---|
|  | 20 |  | 
|---|
|  | 21 |  | 
|---|
|  | 22 | namespace SOPHYA { | 
|---|
|  | 23 |  | 
|---|
|  | 24 |  | 
|---|
|  | 25 |  | 
|---|
| [764] | 26 | template<class T> | 
|---|
|  | 27 | class SphericalMap : public PixelMap<T> | 
|---|
|  | 28 | { | 
|---|
|  | 29 |  | 
|---|
|  | 30 | public : | 
|---|
|  | 31 |  | 
|---|
|  | 32 | SphericalMap() {}; | 
|---|
|  | 33 | virtual  ~SphericalMap() {}; | 
|---|
|  | 34 |  | 
|---|
|  | 35 | // Overloading of () to access pixel number k. | 
|---|
|  | 36 | inline T& operator()(int k) {return(PixVal(k));} | 
|---|
|  | 37 | inline T  const& operator()(int k) const {return(PixVal(k));} | 
|---|
|  | 38 | inline T& operator()(double theta,double phi) {return(PixValSph(theta,phi));}; | 
|---|
|  | 39 | inline T  const& operator()(double theta,double phi) const {return(PixValSph(theta,phi));}; | 
|---|
|  | 40 |  | 
|---|
|  | 41 | // index characterizing the size pixelization : m for SphereThetaPhi | 
|---|
|  | 42 | // nside for Gorski sphere... | 
|---|
| [783] | 43 | virtual void Resize(int_4 m)=0; | 
|---|
| [764] | 44 | virtual uint_4 NbThetaSlices() const=0; | 
|---|
|  | 45 | virtual void GetThetaSlice(int_4 index,r_8& theta, TVector<r_8>& phi, TVector<T>& value) const=0; | 
|---|
|  | 46 | virtual void GetThetaSlice(int_4 sliceIndex, r_8& theta, r_8& phi0, TVector<int_4>& pixelIndices,TVector<T>& value) const=0 ; | 
|---|
|  | 47 | }; | 
|---|
| [908] | 48 |  | 
|---|
|  | 49 |  | 
|---|
|  | 50 | } // Fin du namespace | 
|---|
|  | 51 |  | 
|---|
|  | 52 |  | 
|---|
|  | 53 |  | 
|---|
|  | 54 |  | 
|---|
| [764] | 55 | #endif | 
|---|
|  | 56 |  | 
|---|
|  | 57 |  | 
|---|
|  | 58 |  | 
|---|
|  | 59 |  | 
|---|
|  | 60 |  | 
|---|
|  | 61 |  | 
|---|
       
      
  Note:
 See   
TracBrowser
 for help on using the repository browser.