Pimpl RecordCache class
[yazpp-moved-to-github.git] / include / yazpp / record-cache.h
index b7f1e31..8fa2254 100644 (file)
 #include <yaz/z-core.h>
 
 namespace yazpp_1 {
-struct RecordCache_Entry;
 
 class YAZ_EXPORT RecordCache {
  public:
     RecordCache ();
     ~RecordCache ();
-    void add (ODR o, Z_NamePlusRecordList *npr, int start, int hits);
+    void add(ODR o, Z_NamePlusRecordList *npr, int start, int hits);
 
-    int lookup (ODR o, Z_NamePlusRecordList **npr, int start, int num,
-                Odr_oid *syntax, Z_RecordComposition *comp);
+    int lookup(ODR o, Z_NamePlusRecordList **npr, int start, int num,
+               Odr_oid *syntax, Z_RecordComposition *comp);
     void clear();
 
     void copy_searchRequest(Z_SearchRequest *sr);
     void copy_presentRequest(Z_PresentRequest *pr);
     void set_max_size(size_t sz);
  private:
-    NMEM m_mem;
-    RecordCache_Entry *m_entries;
-    Z_SearchRequest *m_searchRequest;
-    Z_PresentRequest *m_presentRequest;
-    int match(RecordCache_Entry *entry, Odr_oid *syntax, int offset,
-              Z_RecordComposition *comp);
-    size_t m_max_size;
+    struct RecordCache_Entry;
+    struct Rep;
+
+    Rep *m_p;
 };
 };
 /*