Add a prefetch method. At the moment it is a no-op.
[bluesky.git] / bluesky / bluesky-private.h
index 0f9d29d..dcd7c48 100644 (file)
@@ -332,6 +332,7 @@ void bluesky_cloudlog_sync(BlueSkyCloudLog *log);
 void bluesky_cloudlog_insert(BlueSkyCloudLog *log);
 void bluesky_cloudlog_insert_locked(BlueSkyCloudLog *log);
 BlueSkyCloudLog *bluesky_cloudlog_get(BlueSkyFS *fs, BlueSkyCloudID id);
+void bluesky_cloudlog_prefetch(BlueSkyCloudLog *log);
 void bluesky_cloudlog_fetch(BlueSkyCloudLog *log);
 BlueSkyCloudPointer bluesky_cloudlog_serialize(BlueSkyCloudLog *log,
                                                BlueSkyFS *fs);
@@ -382,6 +383,7 @@ struct BlueSkyCacheFile {
     gint mapcount;              // References to the mmaped data
     const char *addr;           // May be null if data is not mapped in memory
     size_t len;
+    int disk_used;
     BlueSkyFS *fs;
     BlueSkyLog *log;
     gboolean fetching, ready;   // Cloud data: downloading or ready for use
@@ -395,14 +397,13 @@ void bluesky_log_finish_all(GList *log_items);
 BlueSkyCloudLog *bluesky_log_get_commit_point(BlueSkyFS *fs);
 void bluesky_log_write_commit_point(BlueSkyFS *fs, BlueSkyCloudLog *marker);
 
-BlueSkyRCStr *bluesky_log_map_object(BlueSkyFS *fs, int log_dir,
-                                     int log_seq, int log_offset, int log_size,
-                                     gboolean map_data);
+BlueSkyRCStr *bluesky_log_map_object(BlueSkyCloudLog *item, gboolean map_data);
 void bluesky_mmap_unref(BlueSkyCacheFile *mmap);
 void bluesky_cachefile_unref(BlueSkyCacheFile *cachefile);
 
 BlueSkyCacheFile *bluesky_cachefile_lookup(BlueSkyFS *fs,
-                                           int clouddir, int log_seq);
+                                           int clouddir, int log_seq,
+                                           gboolean start_fetch);
 void bluesky_cachefile_gc(BlueSkyFS *fs);
 
 void bluesky_replay(BlueSkyFS *fs);