Changeset 1156 in Sophya for trunk/SophyaLib/TArray/fioarr.cc
- Timestamp:
- Aug 29, 2000, 6:10:32 PM (25 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/SophyaLib/TArray/fioarr.cc
r926 r1156 93 93 uint_4 itab[5]; 94 94 is.Get(itab,5); 95 96 // Checking version number 97 if (itab[0] < 2) 98 FileFormatExc("FIO_TArray<T>::ReadSelf() - Unsupported (old V<2) version"); 99 95 100 if (dobj == NULL) { 96 101 if (itab[1] == 12) dobj = new TMatrix<T>; … … 99 104 } 100 105 // On lit les tailles, etc ... 101 is.Get(dobj->ndim_); 102 is.Get(dobj->size_, BASEARRAY_MAXNDIMS); 103 is.Get(dobj->totsize_); 104 is.Get(dobj->step_, BASEARRAY_MAXNDIMS); 105 is.Get(dobj->minstep_); 106 is.Get(dobj->moystep_); 107 is.Get(dobj->offset_); 108 is.Get(dobj->marowi_); 109 is.Get(dobj->macoli_); 110 is.Get(dobj->veceli_); 106 // On ecrit les tailles, etc ... 107 int_4 tmpi4s[5]; 108 is.Get(tmpi4s, 5); 109 dobj->ndim_ = tmpi4s[0]; 110 dobj->marowi_ = tmpi4s[1]; 111 dobj->macoli_ = tmpi4s[2]; 112 dobj->veceli_ = tmpi4s[3]; 113 // tmpi4s[4] Reserved for future use 114 115 // Tous les sa_size_t sont ecrit/lu en int_8 afin de maintenir la compatibilite 116 // entre version du programme utilisant int_4 OU int_8 pour sa_size_t 117 int_8 tmpi8s[BASEARRAY_MAXNDIMS]; 118 119 is.Get(tmpi8s, BASEARRAY_MAXNDIMS); 120 for(int kk=0; kk<BASEARRAY_MAXNDIMS; kk++) 121 dobj->size_[kk] = tmpi8s[kk]; 122 is.Get(tmpi8s, BASEARRAY_MAXNDIMS); 123 for(int kk=0; kk<BASEARRAY_MAXNDIMS; kk++) 124 dobj->step_[kk] = tmpi8s[kk]; 125 126 is.Get(tmpi8s, 5); 127 dobj->totsize_ = tmpi8s[0]; 128 dobj->offset_ = tmpi8s[1]; 129 dobj->minstep_ = tmpi8s[2]; 130 dobj->moystep_ = tmpi8s[3]; 131 // tmpi8s[4] Reserved for future use 132 111 133 // On lit le datablock 112 134 is >> dobj->DataBlock(); … … 132 154 133 155 uint_4 itab[5]; 134 itab[0] = 1; // Numero de version a 1156 itab[0] = 2; // Numero de version a 2 depuis Aout 2000 - Reza 135 157 itab[1] = typa; // Real object type 136 158 itab[2] = (dobj->mInfo != NULL) ? 1 : 0; 137 159 itab[3] = itab[4] = 0; 138 160 os.Put(itab,5); 161 139 162 // On ecrit les tailles, etc ... 140 os.Put(dobj->ndim_); 141 os.Put(dobj->size_, BASEARRAY_MAXNDIMS); 142 os.Put(dobj->totsize_); 143 os.Put(dobj->step_, BASEARRAY_MAXNDIMS); 144 os.Put(dobj->minstep_); 145 os.Put(dobj->moystep_); 146 os.Put(dobj->offset_); 147 os.Put(dobj->marowi_); 148 os.Put(dobj->macoli_); 149 os.Put(dobj->veceli_); 163 int_4 tmpi4s[5]; 164 // os.Put(dobj->ndim_); 165 // os.Put(dobj->marowi_); 166 // os.Put(dobj->macoli_); 167 // os.Put(dobj->veceli_); 168 tmpi4s[0] = dobj->ndim_; 169 tmpi4s[1] = dobj->marowi_; 170 tmpi4s[2] = dobj->macoli_; 171 tmpi4s[3] = dobj->veceli_; 172 tmpi4s[4] = 0; // Reserved for future use 173 os.Put(tmpi4s, 5); 174 175 // Tous les sa_size_t sont ecrit en int_8 afin de pouvoir etre ecrit/relu 176 // entre version du programme utilisant int_4 OU int_8 pour sa_size_t 177 int_8 tmpi8s[BASEARRAY_MAXNDIMS]; 178 179 // os.Put(dobj->size_, BASEARRAY_MAXNDIMS); 180 for(int kk=0; kk<BASEARRAY_MAXNDIMS; kk++) 181 tmpi8s[kk] = dobj->size_[kk]; 182 os.Put(tmpi8s, BASEARRAY_MAXNDIMS); 183 // os.Put(dobj->step_, BASEARRAY_MAXNDIMS); 184 for(int kk=0; kk<BASEARRAY_MAXNDIMS; kk++) 185 tmpi8s[kk] = dobj->step_[kk]; 186 os.Put(tmpi8s, BASEARRAY_MAXNDIMS); 187 188 // os.Put(dobj->totsize_); 189 // os.Put(dobj->offset_); 190 // os.Put(dobj->minstep_); 191 // os.Put(dobj->moystep_); 192 tmpi8s[0] = dobj->totsize_; 193 tmpi8s[1] = dobj->offset_; 194 tmpi8s[2] = dobj->minstep_; 195 tmpi8s[3] = dobj->moystep_; 196 tmpi8s[4] = 0; // Reserved for future use 197 os.Put(tmpi8s, 5); 198 150 199 // On ecrit le datablock 151 200 os << dobj->DataBlock();
Note:
See TracChangeset
for help on using the changeset viewer.