source: Sophya/trunk/SophyaLib/SkyMap/skymapinit.cc@ 3862

Last change on this file since 3862 was 3862, checked in by ansari, 15 years ago

MAJ numero de version V=1.7 pour module SkyMap, Reza 12/08/2010

File size: 3.7 KB
RevLine 
[764]1// Classe d'initialisation du module Outils++
[2615]2#include "sopnamsp.h"
[841]3#include "machdefs.h"
4#include "skymapinit.h"
5
[764]6#include <unistd.h>
7#include "spherethetaphi.h"
[841]8#include "fiospherehealpix.h"
9#include "fiospherethetaphi.h"
10#include "fiolocalmap.h"
[2610]11#include "fiosphereecp.h"
[841]12
[1371]13/*!
14 \defgroup SkyMap SkyMap module
15 This module contains classes for handling partial and full sky (spherical) maps
16*/
17
18/*!
19 \class SOPHYA::SkyMapInitiator
20 \ingroup SkyMap
21 Class handling initialization for module SkyMap
22*/
23
[764]24int SkyMapInitiator::FgInit = 0;
25
[3020]26// Module version number - 1.6, Jul 06
[3300]27// V=1.61 , Fev 2007: Ajout RenewObjId() pour SphereHealPix,ThetaPhi,ECP,LocalMap
[3862]28// V=1.62 , Aou 2007: correction ds LocalMap::PixToSphereC()
29// V=1.7 , Aou 2010
30#define MOD_VERS 1.70`
[3020]31
[764]32SkyMapInitiator::SkyMapInitiator()
[841]33 : SophyaInitiator()
[764]34{
[841]35 FgInit++;
36 if (FgInit > 1) return;
[764]37
[841]38// Enregistrement des classes PPersist du module SkyMap
[764]39
[2082]40 // ---------- Les SphereThetaPhi ---------
41
[764]42 PPRegister(FIO_SphereCoordSys);
[841]43 DObjRegister(FIO_SphereCoordSys, SphereCoordSys);
[764]44
[2082]45 PPRegister(FIO_SphereThetaPhi<int_4>);
46 DObjRegister(FIO_SphereThetaPhi<int_4>, SphereThetaPhi<int_4>);
47
[764]48 PPRegister(FIO_SphereThetaPhi<r_4>);
[841]49 DObjRegister(FIO_SphereThetaPhi<r_4>, SphereThetaPhi<r_4>);
50
[764]51 PPRegister(FIO_SphereThetaPhi<r_8>);
[841]52 DObjRegister(FIO_SphereThetaPhi<r_8>, SphereThetaPhi<r_8>);
53
[764]54 PPRegister(FIO_SphereThetaPhi< complex<r_4> >);
[841]55 DObjRegister(FIO_SphereThetaPhi< complex<r_4> >, SphereThetaPhi< complex<r_4> >);
56
[764]57 PPRegister(FIO_SphereThetaPhi< complex<r_8> >);
[841]58 DObjRegister(FIO_SphereThetaPhi< complex<r_8> >, SphereThetaPhi< complex<r_8> >);
[764]59
[2082]60
61 // ---------- Les SphereHEALPix ---------
62
[2978]63 PPRegister(FIO_SphereHEALPix<uint_2>);
64 DObjRegister(FIO_SphereHEALPix<uint_2>, SphereHEALPix<uint_2>);
65
[2082]66 PPRegister(FIO_SphereHEALPix<int_4>);
67 DObjRegister(FIO_SphereHEALPix<int_4>, SphereHEALPix<int_4>);
68
[853]69 PPRegister(FIO_SphereHEALPix<r_4>);
70 DObjRegister(FIO_SphereHEALPix<r_4>, SphereHEALPix<r_4>);
[764]71
[853]72 PPRegister(FIO_SphereHEALPix<r_8>);
73 DObjRegister(FIO_SphereHEALPix<r_8>, SphereHEALPix<r_8>);
[841]74
[853]75 PPRegister(FIO_SphereHEALPix< complex<r_4> >);
76 DObjRegister(FIO_SphereHEALPix< complex<r_4> >, SphereHEALPix< complex<r_4> >);
[841]77
[853]78 PPRegister(FIO_SphereHEALPix< complex<r_8> >);
79 DObjRegister(FIO_SphereHEALPix< complex<r_8> >, SphereHEALPix< complex<r_8> >);
[841]80
[2082]81 // ------------ Les LocalMap ---------
82 PPRegister(FIO_LocalMap<int_4>);
83 DObjRegister(FIO_LocalMap<int_4>, LocalMap<int_4>);
84
[764]85 PPRegister(FIO_LocalMap<r_4>);
[841]86 DObjRegister(FIO_LocalMap<r_4>, LocalMap<r_4>);
87
[764]88 PPRegister(FIO_LocalMap<r_8>);
[841]89 DObjRegister(FIO_LocalMap<r_8>, LocalMap<r_8>);
90
[764]91 PPRegister(FIO_LocalMap< complex<r_4> >);
[841]92 DObjRegister(FIO_LocalMap< complex<r_4> >, LocalMap< complex<r_4> >);
93
[764]94 PPRegister(FIO_LocalMap< complex<r_8> >);
[841]95 DObjRegister(FIO_LocalMap< complex<r_8> >, LocalMap< complex<r_8> >);
[764]96
[2610]97 // ---------- Les SphereECP ---------
[764]98
[2610]99 PPRegister(FIO_SphereECP<int_4>);
100 DObjRegister(FIO_SphereECP<int_4>, SphereECP<int_4>);
101
102 PPRegister(FIO_SphereECP<r_4>);
103 DObjRegister(FIO_SphereECP<r_4>, SphereECP<r_4>);
104
105 PPRegister(FIO_SphereECP<r_8>);
106 DObjRegister(FIO_SphereECP<r_8>, SphereECP<r_8>);
107
108 PPRegister(FIO_SphereECP< complex<r_4> >);
109 DObjRegister(FIO_SphereECP< complex<r_4> >, SphereECP< complex<r_4> >);
110
111 PPRegister(FIO_SphereECP< complex<r_8> >);
112 DObjRegister(FIO_SphereECP< complex<r_8> >, SphereECP< complex<r_8> >);
113
[3020]114 SophyaInitiator::RegisterModule("SkyMap", MOD_VERS); // Module name and version number registration
[764]115}
116
117SkyMapInitiator::~SkyMapInitiator()
118{
[841]119 FgInit--;
[764]120}
121
122
123// On met un objet initiator en statique, pour les loaders qui savent
124// appeler le constructeur des objets statiques Reza 08/98
125static SkyMapInitiator s_sskymapinit_;
126
[841]127
Note: See TracBrowser for help on using the repository browser.