Show
Ignore:
Timestamp:
04/07/07 00:25:03 (1 year ago)
Author:
ug
Message:

Snapshot/restore functionality for GameList class.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • 06/libkombilo/cpptest.cpp

    r244 r248  
    2929    gl.start_processing(); 
    3030    directory_iterator end_itr; 
    31     string path = "/home/ug/go/kombilo/06/tests1/libkombilo"; 
     31    // string path = "/home/ug/go/kombilo/06/tests1/libkombilo"; 
    3232    // string path = "/home/ug/go/gtl/reviews"; 
    33     // string path = "/home/ug/go/gogod06/1998"; 
     33    string path = "/home/ug/go/gogod06/1998"; 
    3434    int counter = 0; 
    3535    for(directory_iterator it(path); it != end_itr; ++it) { 
     
    9494   
    9595  // -------------------- do pattern search -------------------------------------- 
    96   // gl.search(p, &so); 
     96  gl.search(p, &so); 
    9797 
    9898  // ------------------- print some information about current list of games ------------ 
    99   // printf("num games: %d, num hits: %d\n", gl.size(), gl.numHits()); 
     99  printf("num games: %d, num hits: %d\n", gl.size(), gl.numHits()); 
    100100  // vector<string> res = gl.currentEntriesAsStrings(); 
    101101  // for(vector<string>::iterator it = res.begin(); it != res.end(); it++) 
     
    130130 
    131131  // ------------------- check for duplicates --------------------------------- 
     132  // gl.reset(); 
     133  // int nd = gl.find_duplicates(19); 
     134  // printf("duplicates:\n"); 
     135  // for(int i=0; i<nd; i++) { 
     136  //   // 1st method: retrieve_duplicates_VI 
     137  //   // vector<int> dupl_vector = gl.retrieve_duplicates_VI(i); 
     138  //   // for(vector<int>::iterator it = dupl_vector.begin(); it != dupl_vector.end(); it++) { 
     139  //   //   printf("%s%s\n", gl.currentEntryAsString(*it).c_str(), gl.getSignature(*it).c_str()); 
     140  //   // } 
     141  //    
     142  //   // 2nd method: retrieve_duplicates_PI 
     143  //   int * dupl_vector = gl.retrieve_duplicates_PI(i); 
     144  //   int j = 0; 
     145  //   while(dupl_vector[j] != -1) { 
     146  //     printf("%s%s\n", gl.currentEntryAsString(dupl_vector[j]).c_str(), gl.getSignature(dupl_vector[j]).c_str()); 
     147  //     j++; 
     148  //   } 
     149  //   delete [] dupl_vector; 
     150 
     151  //   printf("--------------------------------------------------- \n"); 
     152  // } 
     153 
     154  // ------------------- snapshot --------------------------------------------- 
     155 
     156  gl.delete_all_snapshots(); 
     157  int handle = gl.snapshot(); 
     158  printf("num games: %d, num hits: %d\n", gl.size(), gl.numHits()); 
     159 
    132160  gl.reset(); 
    133   int nd = gl.find_duplicates(19); 
    134   printf("duplicates:\n"); 
    135   for(int i=0; i<nd; i++) { 
    136     // 1st method: retrieve_duplicates_VI 
    137     // vector<int> dupl_vector = gl.retrieve_duplicates_VI(i); 
    138     // for(vector<int>::iterator it = dupl_vector.begin(); it != dupl_vector.end(); it++) { 
    139     //   printf("%s%s\n", gl.currentEntryAsString(*it).c_str(), gl.getSignature(*it).c_str()); 
    140     // } 
    141      
    142     // 2nd method: retrieve_duplicates_PI 
    143     int * dupl_vector = gl.retrieve_duplicates_PI(i); 
    144     int j = 0; 
    145     while(dupl_vector[j] != -1) { 
    146       printf("%s%s\n", gl.currentEntryAsString(dupl_vector[j]).c_str(), gl.getSignature(dupl_vector[j]).c_str()); 
    147       j++; 
    148     } 
    149     delete [] dupl_vector; 
     161  printf("num games: %d, num hits: %d\n", gl.size(), gl.numHits()); 
    150162 
    151     printf("--------------------------------------------------- \n"); 
    152   } 
     163  gl.restore(handle, true); 
     164  printf("num games: %d, num hits: %d\n", gl.size(), gl.numHits()); 
    153165 
    154166  // ------------------- resetFormat ------------------------------------------