Disable profiling collection entirely when no data is requested
[bluesky.git] / bluesky / bluesky.h
index 6bbf4a2..9921091 100644 (file)
@@ -10,6 +10,7 @@
 #define _BLUESKY_H
 
 #include <stdint.h>
+#include <stdio.h>
 #include <inttypes.h>
 #include <glib.h>
 
@@ -355,6 +356,7 @@ void bluesky_file_read(BlueSkyInode *inode, uint64_t offset,
                        char *buf, gint len);
 
 void bluesky_inode_fetch(BlueSkyFS *fs, uint64_t inum);
+void bluesky_inode_prefetch(BlueSkyFS *fs, uint64_t inum);
 
 gint bluesky_dirent_compare(gconstpointer a, gconstpointer b,
                             gpointer unused);
@@ -368,6 +370,8 @@ void bluesky_debug_dump(BlueSkyFS *fs);
 
 /* Request response time tracking. */
 typedef struct BlueSkyProfile {
+    int magic;
+    GMutex *lock;
     char *description;
     GList *events;
 } BlueSkyProfile;
@@ -378,6 +382,7 @@ void bluesky_profile_add_event(BlueSkyProfile *profile, char *message);
 void bluesky_profile_print(BlueSkyProfile *profile);
 BlueSkyProfile *bluesky_profile_get();
 void bluesky_profile_set(BlueSkyProfile *profile);
+void bluesky_profile_set_output(FILE *stream);
 
 #ifdef __cplusplus
 }