Changeset 3661 in Sophya for trunk/SophyaLib


Ignore:
Timestamp:
Oct 23, 2009, 9:49:14 PM (16 years ago)
Author:
cmv
Message:
  • 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

Location:
trunk/SophyaLib
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • trunk/SophyaLib/BaseTools/fiondblock.cc

    r3385 r3661  
    117117inline void PIOSReadArray(PInPersist & is, uint_1 * arr, size_t n)
    118118{ is.GetBytes(arr, n); }
     119inline void PIOSReadArray(PInPersist & is, int_1 * arr, size_t n)
     120{ is.Get(arr, n); }
    119121inline void PIOSReadArray(PInPersist & is, uint_2 * arr, size_t n)
    120122{ is.Get(arr, n); }
     
    184186#pragma define_template FIO_NDataBlock<uint_1>
    185187#pragma define_template FIO_NDataBlock<uint_2>
     188#pragma define_template FIO_NDataBlock<uint_4>
     189#pragma define_template FIO_NDataBlock<uint_8>
     190#pragma define_template FIO_NDataBlock<int_1>
    186191#pragma define_template FIO_NDataBlock<int_2>
    187192#pragma define_template FIO_NDataBlock<int_4>
    188193#pragma define_template FIO_NDataBlock<int_8>
    189 #pragma define_template FIO_NDataBlock<uint_4>
    190 #pragma define_template FIO_NDataBlock<uint_8>
    191194#pragma define_template FIO_NDataBlock<r_8>
    192195#pragma define_template FIO_NDataBlock<r_4>
     
    200203template class FIO_NDataBlock<uint_1>;
    201204template class FIO_NDataBlock<uint_2>;
     205template class FIO_NDataBlock<uint_4>;
     206template class FIO_NDataBlock<uint_8>;
     207template class FIO_NDataBlock<int_1>;
    202208template class FIO_NDataBlock<int_2>;
    203209template class FIO_NDataBlock<int_4>;
    204210template class FIO_NDataBlock<int_8>;
    205 template class FIO_NDataBlock<uint_4>;
    206 template class FIO_NDataBlock<uint_8>;
    207211template class FIO_NDataBlock<r_8>;
    208212template class FIO_NDataBlock<r_4>;
  • trunk/SophyaLib/BaseTools/mutyv.h

    r3525 r3661  
    3232  inline MuTyV() { typ = MTVInteger; iv = 0;  dv = dv_im = 0.;  strv = NULL; }
    3333         MuTyV(MuTyV const & a);
     34  inline MuTyV(uint_1 i) { typ = MTVInteger; iv = (int_8)i;  dv = (r_8)i;  dv_im = 0.;  strv = NULL; }
    3435  inline MuTyV(uint_2 i) { typ = MTVInteger; iv = (int_8)i;  dv = (r_8)i;  dv_im = 0.;  strv = NULL; }
    3536  inline MuTyV(uint_4 i) { typ = MTVInteger; iv = (int_8)i;  dv = (r_8)i;  dv_im = 0.;  strv = NULL; }
    3637  inline MuTyV(uint_8 i) { typ = MTVInteger; iv = (int_8)i;  dv = (r_8)i;  dv_im = 0.;  strv = NULL; }
     38  inline MuTyV(int_1 i)  { typ = MTVInteger; iv = (int_8)i;  dv = (r_8)i;  dv_im = 0.;  strv = NULL; }
    3739  inline MuTyV(int_2 i)  { typ = MTVInteger; iv = (int_8)i;  dv = (r_8)i;  dv_im = 0.;  strv = NULL; }
    3840  inline MuTyV(int_4 i)  { typ = MTVInteger; iv = (int_8)i;  dv = (r_8)i;  dv_im = 0.;  strv = NULL; }
     
    5254 
    5355         MuTyV & operator= (MuTyV const & a);
     56  inline MuTyV & operator= (uint_1 v)  { typ = MTVInteger; iv = (int_8)v;  dv = (r_8)v;  dv_im = 0.;  return(*this); }
    5457  inline MuTyV & operator= (uint_2 v)  { typ = MTVInteger; iv = (int_8)v;  dv = (r_8)v;  dv_im = 0.;  return(*this); }
    5558  inline MuTyV & operator= (uint_4 v)  { typ = MTVInteger; iv = (int_8)v;  dv = (r_8)v;  dv_im = 0.;  return(*this); }
    5659  inline MuTyV & operator= (uint_8 v)  { typ = MTVInteger; iv = (int_8)v;  dv = (r_8)v;  dv_im = 0.;  return(*this); }
     60  inline MuTyV & operator= (int_1 v)  { typ = MTVInteger; iv = (int_8)v;  dv = (r_8)v;  dv_im = 0.;  return(*this); }
    5761  inline MuTyV & operator= (int_2 v)  { typ = MTVInteger; iv = (int_8)v;  dv = (r_8)v;  dv_im = 0.;  return(*this); }
    5862  inline MuTyV & operator= (int_4 v)  { typ = MTVInteger; iv = (int_8)v;  dv = (r_8)v;  dv_im = 0.;  return(*this); }
     
    6872         TimeStamp const& operator= (TimeStamp const & s);
    6973
     74  inline operator uint_1() const { return((uint_1)iv); }
    7075  inline operator uint_2() const { return((uint_2)iv); }
    7176  inline operator uint_4() const { return((uint_4)iv); }
    7277  inline operator uint_8() const { return((uint_8)iv); }
     78  inline operator int_1()  const { return((int_1)iv); }
    7379  inline operator int_2()  const { return((int_2)iv); }
    7480  inline operator int_4()  const { return((int_4)iv); }
     
    8288         operator TimeStamp() const ;
    8389
     90  inline uint_1 Convert(uint_1& x) const { x = (uint_1)iv; return x; }
    8491  inline uint_2 Convert(uint_2& x) const { x = (uint_2)iv; return x; }
    8592  inline uint_4 Convert(uint_4& x) const { x = (uint_4)iv; return x; }
    8693  inline uint_8 Convert(uint_8& x) const { x = (uint_8)iv; return x; }
    87   inline int_4 Convert(int_2& x) const { x = (int_2)iv; return x; }
     94  inline int_1 Convert(int_1& x) const { x = (int_1)iv; return x; }
     95  inline int_2 Convert(int_2& x) const { x = (int_2)iv; return x; }
    8896  inline int_4 Convert(int_4& x) const { x = (int_4)iv; return x; }
    8997  inline int_8 Convert(int_8& x) const { x = iv; return x; }
  • trunk/SophyaLib/BaseTools/ndatablock.cc

    r3619 r3661  
    812812#pragma define_template NDataBlock<uint_1>
    813813#pragma define_template NDataBlock<uint_2>
     814#pragma define_template NDataBlock<int_1>
    814815#pragma define_template NDataBlock<int_2>
    815816#pragma define_template NDataBlock<int_4>
     
    827828template class NDataBlock<uint_1>;
    828829template class NDataBlock<uint_2>;
     830template class NDataBlock<int_1>;
    829831template class NDataBlock<int_2>;
    830832template class NDataBlock<int_4>;
  • trunk/SophyaLib/NTools/cimage.cc

    r3526 r3661  
    187187#pragma define_template Image< complex<r_8> >
    188188
     189#pragma define_template FIO_Image<uint_1>
    189190#pragma define_template FIO_Image<uint_2>
    190191#pragma define_template FIO_Image<uint_4>
    191192#pragma define_template FIO_Image<uint_8>
     193#pragma define_template FIO_Image<int_1>
    192194#pragma define_template FIO_Image<int_2>
    193195#pragma define_template FIO_Image<int_4>
     
    212214template class Image< complex<r_8> >;
    213215
     216template class FIO_Image<uint_1>;
    214217template class FIO_Image<uint_2>;
    215218template class FIO_Image<uint_4>;
    216219template class FIO_Image<uint_8>;
     220template class FIO_Image<int_1>;
    217221template class FIO_Image<int_2>;
    218222template class FIO_Image<int_4>;
  • trunk/SophyaLib/NTools/generaldata.cc

    r3235 r3661  
    980980if(str[0]=='o') return 2*NVar()+2;
    981981if(str[0]=='x') {sscanf(str,"x%d",&k); return k;}
    982 if(str[0]=='e')
     982if(str[0]=='e') {
    983983  if(str[1]=='y') return 2*NVar()+1;
    984984  else if(str[1]=='x') {sscanf(str,"ex%d",&k); return NVar()+k;}
     985 }
    985986return -1;
    986987}
  • trunk/SophyaLib/NTools/objfitter.cc

    r3526 r3661  
    454454///////////////////////////////////////////////////////////////
    455455#ifdef __CXX_PRAGMA_TEMPLATES__
     456#pragma define_template ArrayFitter<uint_1>
    456457#pragma define_template ArrayFitter<uint_2>
    457458#pragma define_template ArrayFitter<uint_4>
    458459#pragma define_template ArrayFitter<uint_8>
     460#pragma define_template ArrayFitter<int_1>
    459461#pragma define_template ArrayFitter<int_2>
    460462#pragma define_template ArrayFitter<int_4>
     
    473475#if defined(ANSI_TEMPLATES) || defined(GNU_TEMPLATES)
    474476namespace SOPHYA {
     477template class ArrayFitter<uint_1>;
    475478template class ArrayFitter<uint_2>;
    476479template class ArrayFitter<uint_4>;
    477480template class ArrayFitter<uint_8>;
     481template class ArrayFitter<int_1>;
    478482template class ArrayFitter<int_2>;
    479483template class ArrayFitter<int_4>;
  • trunk/SophyaLib/TArray/fioarr.cc

    r2927 r3661  
    217217#ifdef __CXX_PRAGMA_TEMPLATES__
    218218// Instances des delegues FileIO (PPersist)
    219 // #pragma define_template FIO_TArray<uint_1>
     219#pragma define_template FIO_TArray<uint_1>
    220220#pragma define_template FIO_TArray<uint_2>
    221221#pragma define_template FIO_TArray<uint_4>
    222222#pragma define_template FIO_TArray<uint_8>
     223#pragma define_template FIO_TArray<int_1>
    223224#pragma define_template FIO_TArray<int_2>
    224225#pragma define_template FIO_TArray<int_4>
     
    233234namespace SOPHYA {
    234235// Instances des delegues FileIO (PPersist)
    235 // template class FIO_TArray<uint_1>;
     236template class FIO_TArray<uint_1>;
    236237template class FIO_TArray<uint_2>;
    237238template class FIO_TArray<uint_4>;
    238239template class FIO_TArray<uint_8>;
     240template class FIO_TArray<int_1>;
    239241template class FIO_TArray<int_2>;
    240242template class FIO_TArray<int_4>;
  • trunk/SophyaLib/TArray/tarray.cc

    r3619 r3661  
    16391639///////////////////////////////////////////////////////////////
    16401640#ifdef __CXX_PRAGMA_TEMPLATES__
    1641 /*
    16421641#pragma define_template TArray<uint_1>
    1643 */
    16441642#pragma define_template TArray<uint_2>
    16451643#pragma define_template TArray<uint_4>
    16461644#pragma define_template TArray<uint_8>
     1645#pragma define_template TArray<int_1>
    16471646#pragma define_template TArray<int_2>
    16481647#pragma define_template TArray<int_4>
     
    16551654
    16561655#if defined(ANSI_TEMPLATES) || defined(GNU_TEMPLATES)
    1657 /*
    16581656template class TArray<uint_1>;
    1659 */
    16601657template class TArray<uint_2>;
    16611658template class TArray<uint_4>;
    16621659template class TArray<uint_8>;
     1660template class TArray<int_1>;
    16631661template class TArray<int_2>; 
    16641662template class TArray<int_4>;
  • trunk/SophyaLib/TArray/tarrinit.cc

    r3298 r3661  
    3333 
    3434
    35   //  PPRegister(FIO_TArray<uint_1>);
    36   //  DObjRegister(FIO_TArray<uint_1>, TArray<uint_1>);
     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
    3745  PPRegister(FIO_TArray<uint_2>);
    3846  DObjRegister(FIO_TArray<uint_2>, TArray<uint_2>);
     
    4553  DObjRegister(FIO_TArray<int_2>, TVector<int_2>);
    4654
     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
    4760  PPRegister(FIO_TArray<int_4>);
    4861  DObjRegister(FIO_TArray<int_4>, TArray<int_4>);
     
    5063  DObjRegister(FIO_TArray<int_4>, TVector<int_4>);
    5164
     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
    5270  PPRegister(FIO_TArray<int_8>);
    5371  DObjRegister(FIO_TArray<int_8>, TArray<int_8>);
    5472  DObjRegister(FIO_TArray<int_8>, TMatrix<int_8>);
    5573  DObjRegister(FIO_TArray<int_8>, TVector<int_8>);
    56 
    57   PPRegister(FIO_TArray<uint_4>);
    58   DObjRegister(FIO_TArray<uint_4>, TArray<uint_4>);
    59   DObjRegister(FIO_TArray<uint_4>, TMatrix<uint_4>);
    60   DObjRegister(FIO_TArray<uint_4>, TVector<uint_4>);
    61 
    62   PPRegister(FIO_TArray<uint_8>);
    63   DObjRegister(FIO_TArray<uint_8>, TArray<uint_8>);
    64   DObjRegister(FIO_TArray<uint_8>, TMatrix<uint_8>);
    65   DObjRegister(FIO_TArray<uint_8>, TVector<uint_8>);
    6674
    6775  PPRegister(FIO_TArray<r_4>);
  • trunk/SophyaLib/TArray/tmatrix.cc

    r3101 r3661  
    1 // $Id: tmatrix.cc,v 1.37 2006-11-02 14:57:20 ansari Exp $
     1// $Id: tmatrix.cc,v 1.38 2009-10-23 19:48:27 cmv Exp $
    22//                         C.Magneville          04/99
    33#include "sopnamsp.h"
     
    672672///////////////////////////////////////////////////////////////
    673673#ifdef __CXX_PRAGMA_TEMPLATES__
     674#pragma define_template TMatrix<uint_1>
    674675#pragma define_template TMatrix<uint_2>
    675676#pragma define_template TMatrix<uint_4>
    676677#pragma define_template TMatrix<uint_8>
     678#pragma define_template TMatrix<int_1>
    677679#pragma define_template TMatrix<int_2>
    678680#pragma define_template TMatrix<int_4>
     
    686688#if defined(ANSI_TEMPLATES) || defined(GNU_TEMPLATES)
    687689namespace SOPHYA {
     690template class TMatrix<uint_1>;
    688691template class TMatrix<uint_2>;
    689692template class TMatrix<uint_4>;
    690693template class TMatrix<uint_8>;
     694template class TMatrix<int_1>;
    691695template class TMatrix<int_2>;
    692696template class TMatrix<int_4>;
  • trunk/SophyaLib/TArray/tvector.cc

    r2927 r3661  
    1 // $Id: tvector.cc,v 1.22 2006-04-03 08:55:26 ansari Exp $
     1// $Id: tvector.cc,v 1.23 2009-10-23 19:48:27 cmv Exp $
    22//                         C.Magneville          04/99
    33#include "sopnamsp.h"
     
    245245///////////////////////////////////////////////////////////////
    246246#ifdef __CXX_PRAGMA_TEMPLATES__
     247#pragma define_template TVector<uint_1>
    247248#pragma define_template TVector<uint_2>
    248249#pragma define_template TVector<uint_4>
    249250#pragma define_template TVector<uint_8>
     251#pragma define_template TVector<int_1>
    250252#pragma define_template TVector<int_2>
    251253#pragma define_template TVector<int_4>
     
    259261#if defined(ANSI_TEMPLATES) || defined(GNU_TEMPLATES)
    260262namespace SOPHYA {
     263template class TVector<uint_1>;
    261264template class TVector<uint_2>;
    262265template class TVector<uint_4>;
    263266template class TVector<uint_8>;
     267template class TVector<int_1>;
    264268template class TVector<int_2>;
    265269template class TVector<int_4>;
Note: See TracChangeset for help on using the changeset viewer.