source: Sophya/trunk/SophyaLib/NTools/ntoolsinit.cc@ 3839

Last change on this file since 3839 was 3667, checked in by ansari, 16 years ago

Ajout instanciation explicite Image<int_1> Image<uint_1> et enregistrement PPFHandler de ces images dans ntoolsinit.cc , Reza 24/10/2009

File size: 2.6 KB
Line 
1// Classe d'initialisation du module NTools
2
3#include "sopnamsp.h"
4#include "machdefs.h"
5#include "ntoolsinit.h"
6
7#include "poly.h"
8#include "generaldata.h"
9#include "cimage.h"
10
11#include "tabmath.h"
12#include "dates.h"
13#include "datime.h"
14
15/*!
16 \defgroup NTools NTools module
17*/
18
19int NToolsInitiator::FgInit = 0;
20
21// Module version number 1.5, Jul 06
22// Module version number 1.55, Oct 08
23#define MOD_VERS 1.55
24
25/*!
26 \class SOPHYA::NToolsInitiator
27 \ingroup NTools
28 \brief NTools module initializer.
29
30 This module contains various tools for Sophya, in particular numerical algorithms
31 such as :
32 - Non linear fitting (parameter determination) : GeneralFit , MinZSimplex
33 - FFT (FFTServerInterface, FFTPackServer)
34 - Spline interpolation
35 - Numerical integration and differential equations
36 - Date/time manipulation and some usual astronomical quantities (datime.c .h)
37*/
38NToolsInitiator::NToolsInitiator()
39 : TArrayInitiator()
40{
41 FgInit++;
42 if (FgInit > 1) return;
43
44// Enregistrement des classes PPersist du modules NTools
45
46 // Objets Poly et Poly2 (pas encore a la norme Sophya::PPersist)
47 PPRegister(ObjFileIO<Poly>);
48 PPRegister(ObjFileIO<Poly2>);
49
50 // Classe GeneralFitData et son PPersist handler
51 PPRegister(ObjFileIO<GeneralFitData>);
52 DObjRegister(ObjFileIO<GeneralFitData>, GeneralFitData);
53
54 // Classes Image<T> et leurs PPersist handler
55 PPRegister(FIO_Image<uint_1>);
56 DObjRegister(FIO_Image<uint_1>, Image<uint_1>);
57 PPRegister(FIO_Image<uint_2>);
58 DObjRegister(FIO_Image<uint_2>, Image<uint_2>);
59 PPRegister(FIO_Image<uint_4>);
60 DObjRegister(FIO_Image<uint_4>, Image<uint_4>);
61 PPRegister(FIO_Image<uint_8>);
62 DObjRegister(FIO_Image<uint_8>, Image<uint_8>);
63 PPRegister(FIO_Image<int_1>);
64 DObjRegister(FIO_Image<int_1>, Image<int_1>);
65 PPRegister(FIO_Image<int_2>);
66 DObjRegister(FIO_Image<int_2>, Image<int_2>);
67 PPRegister(FIO_Image<int_4>);
68 DObjRegister(FIO_Image<int_4>, Image<int_4>);
69 PPRegister(FIO_Image<int_8>);
70 DObjRegister(FIO_Image<int_8>, Image<int_8>);
71 PPRegister(FIO_Image<r_4>);
72 DObjRegister(FIO_Image<r_4>, Image<r_4>);
73 PPRegister(FIO_Image<r_8>);
74 DObjRegister(FIO_Image<r_8>, Image<r_8>);
75
76
77// TSidSetupLaSilla(); Old-Eros
78
79 gTimeZone = new TimeZone;
80
81 ptabFExp = new TabFExp;
82
83 SophyaInitiator::RegisterModule("NTools", MOD_VERS); // Module name and version number registration
84}
85
86NToolsInitiator::~NToolsInitiator()
87{
88 FgInit--;
89}
90
91
92// On met un objet initiator en statique, pour les loaders qui savent
93// appeler le constructeur des objets statiques Reza 08/98
94#ifndef Darwin
95static NToolsInitiator ntoolsinit;
96#endif
97
Note: See TracBrowser for help on using the repository browser.