Changeset 2686 in Sophya for trunk/SophyaProg/Tests/tnt.cc
- Timestamp:
- Apr 25, 2005, 6:57:51 PM (20 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/SophyaProg/Tests/tnt.cc
r2615 r2686 9 9 #include "ntuple.h" 10 10 #include "xntuple.h" 11 #include "datatable.h" 12 13 /* Programme test des classes DVList, NTuple,, XNTuple */ 14 /* DataTable et les handlers PPF */ 15 /* SOPHYA - R. Ansari (LAL) - 2000 - 2005 */ 11 16 12 17 void test_dvl(); … … 14 19 void test_xntuple() ; 15 20 void test_Xntuple() ; 21 void test_DataTable() ; 16 22 17 23 int main(int narg, char *arg[]) … … 19 25 SophyaInit(); 20 26 if (narg < 2) { 21 cout << " tnt/Erreur arg - Usage: tnt d/n/x/X \n"22 << " d:DVList n:NTuple x/X:XNTuple test \n" << endl;27 cout << " tnt/Erreur arg - Usage: tnt d/n/x/X/DB \n" 28 << " d:DVList n:NTuple x/X:XNTuple DB: DataTable test \n" << endl; 23 29 exit(0); 24 30 } … … 29 35 else if (*arg[1] == 'x') test_xntuple(); 30 36 else if (*arg[1] == 'X') test_Xntuple(); 37 else if (strcmp(arg[1],"DB") == 0) test_DataTable(); 31 38 } 32 39 catch(PThrowable exc ) { … … 163 170 164 171 } 172 void test_DataTable() 173 { 174 cout << "======= test_DataTable: simple DataTable test ======= " << endl; 175 DataTable dt(64); 176 dt.AddIntegerColumn("line"); 177 dt.AddDoubleColumn("x"); 178 dt.AddFloatColumn("f_sin"); 179 dt.AddFloatColumn("f_cos"); 180 dt.AddDoubleColumn("f_sinxcos"); 181 dt.AddDoubleColumn("f_x2"); 182 MuTyV rec[10]; 183 cout << " 1/ First 1000 lines .... " << endl; 184 for(int k = 0; k<1000; k++) { 185 rec[0] = k; 186 double x = M_PI*k/100.; 187 double fx = sin(x)*cos(x); 188 rec[1] = x; 189 rec[2] = sin(x); 190 rec[3] = cos(x); 191 rec[4] = fx; 192 rec[5] = x*x; 193 dt.AddLine(rec); 194 } 195 cout << "1.b/ Use of = operator to make copy of dt " << endl; 196 DataTable dtc1; 197 dtc1 = dt; 198 199 dt.Show(); 200 cout << " 2/ Lines 1000-2000 .... " << endl; 201 for(int k = 1000; k<2000; k++) { 202 rec[0] = k; 203 double x = M_PI*k/100.; 204 double fx = sin(x)*cos(x); 205 rec[1] = x; 206 rec[2] = sin(x); 207 rec[3] = cos(x); 208 rec[4] = fx; 209 rec[5] = x*x; 210 dt.AddLine(rec); 211 } 212 cout << "2.b/ dt.Show(); : " << endl; 213 dt.Show(); 214 cout << "2.c/ dtc1.Show(); : " << endl; 215 dtc1.Show(); 216 cout << "2.d/ dt.LineHeaderToString() dt.LineToString(k) : " << endl; 217 cout << dt.LineHeaderToString() ; 218 for(int k = 0; k<1500; k+=75) 219 cout << "Line[" << k << "] " << dt.LineToString(k) << endl ; 220 { 221 cout << "3/ Writing DataTable dt to PPF stream dtable.ppf " << endl; 222 POutPersist po("dtable.ppf"); 223 po << dt; 224 } 225 { 226 cout << "4/ Reading DataTable dtr from PPF stream dtable.ppf " << endl; 227 PInPersist pi("dtable.ppf"); 228 DataTable dtr; 229 pi >> dtr; 230 cout << "4.b/ cout << dtr; " << endl; 231 cout << dtr; 232 cout << "4.c/ dtr.LineHeaderToString() dtr.LineToString(k) : " << endl; 233 cout << dtr.LineHeaderToString() ; 234 for(int k = 0; k<1500; k+=75) 235 cout << "Line[" << k << "] " << dtr.LineToString(k) << endl ; 236 237 } 238 239 cout << "============ FIN test_DataTable ============== " << endl; 240 } 165 241 166 242 void test_Xntuple()
Note:
See TracChangeset
for help on using the changeset viewer.