1 | #include "sopnamsp.h"
|
---|
2 | #include "machdefs.h"
|
---|
3 | #include "piinit.h"
|
---|
4 | #include "nobjmgr.h"
|
---|
5 | #include "servnobjm.h"
|
---|
6 |
|
---|
7 | #include "nomdvladapter.h"
|
---|
8 | #include "nomhistadapter.h"
|
---|
9 | #include "nomherradapter.h"
|
---|
10 | #include "nomgfdadapter.h"
|
---|
11 | #include "nomimagadapter.h"
|
---|
12 |
|
---|
13 | #ifdef SANS_EVOLPLANCK
|
---|
14 | #include "nommatvecadapter.h"
|
---|
15 | #include "fitsimage.h"
|
---|
16 | #include "nomstladapter.h"
|
---|
17 | #else
|
---|
18 | #include <complex>
|
---|
19 | #include "nomtmatvecadapter.h"
|
---|
20 | #include "nomtarradapter.h"
|
---|
21 |
|
---|
22 | #include "datatable.h"
|
---|
23 | #include "swppfdtable.h"
|
---|
24 |
|
---|
25 | #include "nomskymapadapter.h"
|
---|
26 | #include "spherethetaphi.h"
|
---|
27 | #include "spherehealpix.h"
|
---|
28 | #include "localmap.h"
|
---|
29 | #include "sphereecp.h"
|
---|
30 |
|
---|
31 | #include "specrespvector.h"
|
---|
32 | #include "gaussfilt.h"
|
---|
33 | #include "nomspecrespadapter.h"
|
---|
34 |
|
---|
35 | #include "piaversion.h"
|
---|
36 |
|
---|
37 | #endif
|
---|
38 |
|
---|
39 | int PIAppInitiator::FgInit = 0;
|
---|
40 |
|
---|
41 | PIAppInitiator::PIAppInitiator(PIStdImgApp * app)
|
---|
42 | #ifdef SANS_EVOLPLANCK
|
---|
43 | : PeidaStarRecoInitiator()
|
---|
44 | #else
|
---|
45 | : SambaInitiator()
|
---|
46 | #endif
|
---|
47 | {
|
---|
48 | FgInit++;
|
---|
49 | if (FgInit > 1) return;
|
---|
50 |
|
---|
51 | Services2NObjMgr* serv = app->ObjMgr()->GetServiceObj();
|
---|
52 |
|
---|
53 | serv->RegisterClass(new DVList, new NOMAdapter_DVList );
|
---|
54 | serv->RegisterClass(new Histo, new NOMAdapter_Histo );
|
---|
55 | serv->RegisterClass(new HProf, new NOMAdapter_Histo );
|
---|
56 | serv->RegisterClass(new Histo2D, new NOMAdapter_Histo2D );
|
---|
57 |
|
---|
58 | serv->RegisterClass(new HistoErr, new NOMAdapter_HistoErr );
|
---|
59 | serv->RegisterClass(new Histo2DErr, new NOMAdapter_Histo2DErr );
|
---|
60 |
|
---|
61 | serv->RegisterClass(new NTuple, new NOMAdapter_NTuple );
|
---|
62 |
|
---|
63 | serv->RegisterClass(new DataTable, new NOMAdapter_DataTable );
|
---|
64 | serv->RegisterClass(new SwPPFDataTable, new NOMAdapter_DataTable );
|
---|
65 | char* varenv=NULL;
|
---|
66 | if ( (varenv=getenv("PEIDA_TMP")) == NULL ) varenv=getenv("TMPDIR") ;
|
---|
67 | if (varenv) XNTuple::SetSwapPath(varenv);
|
---|
68 |
|
---|
69 | serv->RegisterClass(new GeneralFitData, new NOMAdapter_GeneralFitData );
|
---|
70 |
|
---|
71 | #ifdef SANS_EVOLPLANCK
|
---|
72 | serv->RegisterClass(new Vector, new NOMAdapter_Vector );
|
---|
73 | serv->RegisterClass(new Matrix, new NOMAdapter_Matrix );
|
---|
74 | #else
|
---|
75 | // Octobre 2008 : prise en charge tableaux/matrice/vecteurs en uint_4 uint_8
|
---|
76 | serv->RegisterClass(new TArray<uint_2>, new NOMAdapter_TArray<uint_2> );
|
---|
77 | serv->RegisterClass(new TArray<uint_4>, new NOMAdapter_TArray<uint_4> );
|
---|
78 | serv->RegisterClass(new TArray<uint_8>, new NOMAdapter_TArray<uint_8> );
|
---|
79 | serv->RegisterClass(new TArray<int_2>, new NOMAdapter_TArray<int_2> );
|
---|
80 | serv->RegisterClass(new TArray<int_4>, new NOMAdapter_TArray<int_4> );
|
---|
81 | serv->RegisterClass(new TArray<int_8>, new NOMAdapter_TArray<int_8> );
|
---|
82 | serv->RegisterClass(new TArray<r_4>, new NOMAdapter_TArray<r_4> );
|
---|
83 | serv->RegisterClass(new TArray<r_8>, new NOMAdapter_TArray<r_8> );
|
---|
84 | serv->RegisterClass(new TArray<complex<r_4> >, new NOMAdapter_TArray<complex<r_4> > );
|
---|
85 | serv->RegisterClass(new TArray<complex<r_8> >, new NOMAdapter_TArray<complex<r_8> > );
|
---|
86 |
|
---|
87 | serv->RegisterClass(new TVector<uint_2>, new NOMAdapter_TMatrix<uint_2> );
|
---|
88 | serv->RegisterClass(new TMatrix<uint_2>, new NOMAdapter_TMatrix<uint_2> );
|
---|
89 | serv->RegisterClass(new TVector<uint_4>, new NOMAdapter_TMatrix<uint_4> );
|
---|
90 | serv->RegisterClass(new TMatrix<uint_4>, new NOMAdapter_TMatrix<uint_4> );
|
---|
91 | serv->RegisterClass(new TVector<uint_8>, new NOMAdapter_TMatrix<uint_8> );
|
---|
92 | serv->RegisterClass(new TMatrix<uint_8>, new NOMAdapter_TMatrix<uint_8> );
|
---|
93 | serv->RegisterClass(new TVector<int_2>, new NOMAdapter_TMatrix<int_2> );
|
---|
94 | serv->RegisterClass(new TMatrix<int_2>, new NOMAdapter_TMatrix<int_2> );
|
---|
95 | serv->RegisterClass(new TVector<int_4>, new NOMAdapter_TMatrix<int_4> );
|
---|
96 | serv->RegisterClass(new TMatrix<int_4>, new NOMAdapter_TMatrix<int_4> );
|
---|
97 | serv->RegisterClass(new TVector<int_8>, new NOMAdapter_TMatrix<int_8> );
|
---|
98 | serv->RegisterClass(new TMatrix<int_8>, new NOMAdapter_TMatrix<int_8> );
|
---|
99 | serv->RegisterClass(new TVector<r_4>, new NOMAdapter_TMatrix<r_4> );
|
---|
100 | serv->RegisterClass(new TMatrix<r_4>, new NOMAdapter_TMatrix<r_4> );
|
---|
101 | serv->RegisterClass(new TVector<r_8>, new NOMAdapter_TMatrix<r_8> );
|
---|
102 | serv->RegisterClass(new TMatrix<r_8>, new NOMAdapter_TMatrix<r_8> );
|
---|
103 | serv->RegisterClass(new TVector<complex<r_4> >, new NOMAdapter_TMatrix<complex<r_4> > );
|
---|
104 | serv->RegisterClass(new TMatrix<complex<r_4> >, new NOMAdapter_TMatrix<complex<r_4> > );
|
---|
105 | serv->RegisterClass(new TVector<complex<r_8> >, new NOMAdapter_TMatrix<complex<r_8> > );
|
---|
106 | serv->RegisterClass(new TMatrix<complex<r_8> >, new NOMAdapter_TMatrix<complex<r_8> > );
|
---|
107 | #endif
|
---|
108 |
|
---|
109 | /* Avril 2007 : Prise en charge des images par NOMAdapter_TMatrix au lieu de
|
---|
110 | NOMAdapter_Image<T> , deplace ci-dessous dans SANS_EVOLPLANCK */
|
---|
111 | serv->RegisterClass(new Image<uint_2>, new NOMAdapter_TMatrix<uint_2> );
|
---|
112 | serv->RegisterClass(new Image<uint_4>, new NOMAdapter_TMatrix<uint_4> );
|
---|
113 | serv->RegisterClass(new Image<uint_8>, new NOMAdapter_TMatrix<uint_8> );
|
---|
114 | serv->RegisterClass(new Image<int_2>, new NOMAdapter_TMatrix<int_2> );
|
---|
115 | serv->RegisterClass(new Image<int_4>, new NOMAdapter_TMatrix<int_4> );
|
---|
116 | serv->RegisterClass(new Image<int_8>, new NOMAdapter_TMatrix<int_8> );
|
---|
117 | serv->RegisterClass(new Image<r_4>, new NOMAdapter_TMatrix<r_4> );
|
---|
118 | serv->RegisterClass(new Image<r_8>, new NOMAdapter_TMatrix<r_8> );
|
---|
119 | serv->RegisterClass(new Image<complex<r_4> >, new NOMAdapter_TMatrix<complex<r_4> > );
|
---|
120 | serv->RegisterClass(new Image<complex<r_8> >, new NOMAdapter_TMatrix<complex<r_8> > );
|
---|
121 |
|
---|
122 | #ifdef SANS_EVOLPLANCK
|
---|
123 | serv->RegisterClass(new Image<uint_2>, new NOMAdapter_Image<uint_2> );
|
---|
124 | serv->RegisterClass(new Image<int_2>, new NOMAdapter_Image<int_2> );
|
---|
125 | serv->RegisterClass(new Image<int_4>, new NOMAdapter_Image<int_4> );
|
---|
126 | serv->RegisterClass(new Image<r_4>, new NOMAdapter_Image<r_4> );
|
---|
127 | serv->RegisterClass(new Image<r_8>, new NOMAdapter_Image<r_8> );
|
---|
128 |
|
---|
129 | serv->RegisterClass(new FitsImage<uint_2>, new NOMAdapter_Image<uint_2> );
|
---|
130 | serv->RegisterClass(new FitsImage<int_2>, new NOMAdapter_Image<int_2> );
|
---|
131 | serv->RegisterClass(new FitsImage<int_4>, new NOMAdapter_Image<int_4> );
|
---|
132 | serv->RegisterClass(new FitsImage<r_4>, new NOMAdapter_Image<r_4> );
|
---|
133 |
|
---|
134 | serv->RegisterClass(new StarList, new NOMAdapter_StarList );
|
---|
135 | #else
|
---|
136 | serv->RegisterClass(new LocalMap<int_4>, new NOMAdapter_PixelMap<int_4> );
|
---|
137 | serv->RegisterClass(new SphereThetaPhi<int_4>, new NOMAdapter_PixelMap<int_4> );
|
---|
138 | serv->RegisterClass(new SphereHEALPix<int_4>, new NOMAdapter_PixelMap<int_4> );
|
---|
139 | serv->RegisterClass(new SphereECP<int_4>, new NOMAdapter_PixelMap<int_4> );
|
---|
140 | serv->RegisterClass(new LocalMap<r_4>, new NOMAdapter_PixelMap<r_4> );
|
---|
141 | serv->RegisterClass(new SphereThetaPhi<r_4>, new NOMAdapter_PixelMap<r_4> );
|
---|
142 | serv->RegisterClass(new SphereHEALPix<r_4>, new NOMAdapter_PixelMap<r_4> );
|
---|
143 | serv->RegisterClass(new SphereECP<r_4>, new NOMAdapter_PixelMap<r_4> );
|
---|
144 | serv->RegisterClass(new LocalMap<r_8>, new NOMAdapter_PixelMap<r_8> );
|
---|
145 | serv->RegisterClass(new SphereThetaPhi<r_8>, new NOMAdapter_PixelMap<r_8> );
|
---|
146 | serv->RegisterClass(new SphereHEALPix<r_8>, new NOMAdapter_PixelMap<r_8> );
|
---|
147 | serv->RegisterClass(new SphereECP<r_8>, new NOMAdapter_PixelMap<r_8> );
|
---|
148 | serv->RegisterClass(new LocalMap<complex<float> >, new NOMAdapter_PixelMap<complex<float> > );
|
---|
149 | serv->RegisterClass(new SphereThetaPhi<complex<float> >, new NOMAdapter_PixelMap<complex<float> > );
|
---|
150 | serv->RegisterClass(new SphereHEALPix<complex<float> >, new NOMAdapter_PixelMap<complex<float> > );
|
---|
151 | serv->RegisterClass(new SphereECP<complex<float> >, new NOMAdapter_PixelMap<complex<float> > );
|
---|
152 | serv->RegisterClass(new LocalMap<complex<double> >, new NOMAdapter_PixelMap<complex<double> > );
|
---|
153 | serv->RegisterClass(new SphereThetaPhi<complex<double> >, new NOMAdapter_PixelMap<complex<double> > );
|
---|
154 | serv->RegisterClass(new SphereHEALPix<complex<double> >, new NOMAdapter_PixelMap<complex<double> > );
|
---|
155 | serv->RegisterClass(new SphereECP<complex<double> >, new NOMAdapter_PixelMap<complex<double> > );
|
---|
156 |
|
---|
157 | serv->RegisterClass(new GaussianFilter, new NOMAdapter_SpectralResponse );
|
---|
158 | serv->RegisterClass(new SpecRespVec, new NOMAdapter_SpectralResponse );
|
---|
159 |
|
---|
160 | SophyaInitiator::RegisterModule("PIext/piapp", PIAPP_VERSIONNUMBER);
|
---|
161 | #endif
|
---|
162 | }
|
---|
163 |
|
---|
164 | PIAppInitiator::~PIAppInitiator()
|
---|
165 | {
|
---|
166 | FgInit--;
|
---|
167 | /* if (FgInit == 0)
|
---|
168 | {
|
---|
169 | } */
|
---|
170 | }
|
---|
171 |
|
---|