int main() { printf("sizeof(portable_off_t)=%d\n",(int)sizeof(portable_off_t)); Store s; if (s.open("test.db")==0) { const char *str1 = "This is a test message... "; const char *str2 = "Another message. "; int i,j; for (j=0;j<5;j++) { char buf[100]; portable_off_t handle = s.alloc(); for (i=0;i<1000000000;i++) { s.write(str1,strlen(str1)+1); } s.end(); portable_off_t handle2 = s.alloc(); for (i=0;i<10;i++) { s.write(str2,strlen(str2)+1); } s.end(); s.seek(handle); for (i=0;i<3;i++) { s.read(buf,strlen(str1)+1); printf("i=%d Read: %s\n",i,buf); } s.release(handle); s.seek(handle2); for (i=0;i<3;i++) { s.read(buf,strlen(str2)+1); printf("i=%d Read: %s\n",i,buf); } s.release(handle2); } s.close(); } else { printf("Open failed! %s\n",strerror(errno)); } }
void assim(Store& s, char* store_fname, char* text_fname, int order){ s.open(store_fname); order++; if (!s.is_init()){ wcerr << "Store is not initialized, initializing..." << endl; s.init(); wcerr << "Store initialized!" << endl; } string txt = read_text(text_fname); #ifndef CHARS assimilate_text(txt, s, order); #else assimilate_text_chars(txt, s, order); #endif s.close(store_fname); }