source: Sophya/trunk/SophyaLib/TArray/tarrinit.cc@ 3661

Last change on this file since 3661 was 3661, checked in by cmv, 16 years ago
  • ajout des TArray/TMatrix/TVector <uint_1> et <int_1>
  • cet ajout n'a pas ete porte dans Image<T>
  • correction petit bug:

inline int_4 Convert(int_2& x) const {...}
-> inline int_2 Convert(int_2& x) const {...}

cmv 23/10/2009

File size: 3.4 KB
RevLine 
[762]1// Classe d'initialisation du module TArray (template Arrays)
[2615]2#include "sopnamsp.h"
[762]3#include "machdefs.h"
4#include "tarrinit.h"
5
[772]6#include "fioarr.h"
[762]7
[920]8/*!
9 \defgroup TArray TArray module
[1371]10 This module contains template arrays, matrices and vectors.
[920]11*/
[762]12
[920]13/*!
14 \class SOPHYA::TArrayInitiator
15 \ingroup TArray
16 Array Matrices and Vector initiator
17*/
[926]18
19int TArrayInitiator::FgInit = 0;
20
[3017]21// Module version number - 2.0 , Jul 2006
[3298]22// V= 2.04 , Jan/Fev 2007: Ajout TArray::ZeroSize() , RenewObjId() et methodes de cast (arrctcast.h)
23// V= 2.1 , Avr/Jul 2007: Constr.copie/extrac sous-tableaux thread-safe
24#define MOD_VERS 2.1
[3017]25
[762]26TArrayInitiator::TArrayInitiator()
27 : SophyaInitiator()
28{
29 FgInit++;
30 if (FgInit > 1) return;
31
32// Enregistrement des classes PPersist du modules TArray
33
34
[3661]35 PPRegister(FIO_TArray<uint_1>);
36 DObjRegister(FIO_TArray<uint_1>, TArray<uint_1>);
37 DObjRegister(FIO_TArray<uint_1>, TMatrix<uint_1>);
38 DObjRegister(FIO_TArray<uint_1>, TVector<uint_1>);
39
40 PPRegister(FIO_TArray<int_1>);
41 DObjRegister(FIO_TArray<int_1>, TArray<int_1>);
42 DObjRegister(FIO_TArray<int_1>, TMatrix<int_1>);
43 DObjRegister(FIO_TArray<int_1>, TVector<int_1>);
44
[772]45 PPRegister(FIO_TArray<uint_2>);
[804]46 DObjRegister(FIO_TArray<uint_2>, TArray<uint_2>);
[813]47 DObjRegister(FIO_TArray<uint_2>, TMatrix<uint_2>);
48 DObjRegister(FIO_TArray<uint_2>, TVector<uint_2>);
49
[2927]50 PPRegister(FIO_TArray<int_2>);
51 DObjRegister(FIO_TArray<int_2>, TArray<int_2>);
52 DObjRegister(FIO_TArray<int_2>, TMatrix<int_2>);
53 DObjRegister(FIO_TArray<int_2>, TVector<int_2>);
[813]54
[3661]55 PPRegister(FIO_TArray<uint_4>);
56 DObjRegister(FIO_TArray<uint_4>, TArray<uint_4>);
57 DObjRegister(FIO_TArray<uint_4>, TMatrix<uint_4>);
58 DObjRegister(FIO_TArray<uint_4>, TVector<uint_4>);
59
[772]60 PPRegister(FIO_TArray<int_4>);
[804]61 DObjRegister(FIO_TArray<int_4>, TArray<int_4>);
[813]62 DObjRegister(FIO_TArray<int_4>, TMatrix<int_4>);
63 DObjRegister(FIO_TArray<int_4>, TVector<int_4>);
64
[3661]65 PPRegister(FIO_TArray<uint_8>);
66 DObjRegister(FIO_TArray<uint_8>, TArray<uint_8>);
67 DObjRegister(FIO_TArray<uint_8>, TMatrix<uint_8>);
68 DObjRegister(FIO_TArray<uint_8>, TVector<uint_8>);
69
[772]70 PPRegister(FIO_TArray<int_8>);
[804]71 DObjRegister(FIO_TArray<int_8>, TArray<int_8>);
[813]72 DObjRegister(FIO_TArray<int_8>, TMatrix<int_8>);
73 DObjRegister(FIO_TArray<int_8>, TVector<int_8>);
74
[772]75 PPRegister(FIO_TArray<r_4>);
[804]76 DObjRegister(FIO_TArray<r_4>, TArray<r_4>);
[813]77 DObjRegister(FIO_TArray<r_4>, TMatrix<r_4>);
78 DObjRegister(FIO_TArray<r_4>, TVector<r_4>);
79
[772]80 PPRegister(FIO_TArray<r_8>);
[804]81 DObjRegister(FIO_TArray<r_8>, TArray<r_8>);
[813]82 DObjRegister(FIO_TArray<r_8>, TMatrix<r_8>);
83 DObjRegister(FIO_TArray<r_8>, TVector<r_8>);
84
[772]85 PPRegister(FIO_TArray< complex<r_4> >);
[804]86 DObjRegister(FIO_TArray< complex<r_4> >, TArray< complex<r_4> >);
[813]87 DObjRegister(FIO_TArray< complex<r_4> >, TMatrix< complex<r_4> >);
88 DObjRegister(FIO_TArray< complex<r_4> >, TVector< complex<r_4> >);
89
[772]90 PPRegister(FIO_TArray< complex<r_8> >);
[804]91 DObjRegister(FIO_TArray< complex<r_8> >, TArray< complex<r_8> >);
[813]92 DObjRegister(FIO_TArray< complex<r_8> >, TMatrix< complex<r_8> >);
93 DObjRegister(FIO_TArray< complex<r_8> >, TVector< complex<r_8> >);
[772]94
[3017]95 SophyaInitiator::RegisterModule("TArray", MOD_VERS); // Module name and version number registration
[762]96}
97
98TArrayInitiator::~TArrayInitiator()
99{
100 FgInit--;
101}
102
103
104// On met un objet initiator en statique, pour les loaders qui savent
105// appeler le constructeur des objets statiques Reza 08/98
106static TArrayInitiator tarrayinit;
107
Note: See TracBrowser for help on using the repository browser.