Merge branch 'cb/fsmonitor-intfix' into maint
[gitweb.git] / packfile.h
index ea7a690fc6e3e4f6753032abfa3eb88e54023ac2..b678d35c0b6df11623f2d29f7b7ea7dfe0e1bea1 100644 (file)
@@ -31,6 +31,12 @@ char *sha1_pack_name(const unsigned char *sha1);
  */
 char *sha1_pack_index_name(const unsigned char *sha1);
 
+/*
+ * Return the basename of the packfile, omitting any containing directory
+ * (e.g., "pack-1234abcd[...].pack").
+ */
+const char *pack_basename(struct packed_git *p);
+
 struct packed_git *parse_pack_index(unsigned char *sha1, const char *idx_path);
 
 typedef void each_file_in_pack_dir_fn(const char *full_path, size_t full_path_len,
@@ -57,7 +63,8 @@ struct packed_git *get_all_packs(struct repository *r);
  * Give a rough count of objects in the repository. This sacrifices accuracy
  * for speed.
  */
-unsigned long approximate_object_count(void);
+unsigned long repo_approximate_object_count(struct repository *r);
+#define approximate_object_count() repo_approximate_object_count(the_repository)
 
 struct packed_git *find_sha1_pack(const unsigned char *sha1,
                                  struct packed_git *packs);
@@ -76,6 +83,8 @@ int open_pack_index(struct packed_git *);
  */
 void close_pack_index(struct packed_git *);
 
+int close_pack_fd(struct packed_git *p);
+
 uint32_t get_pack_fanout(struct packed_git *p, uint32_t value);
 
 unsigned char *use_pack(struct packed_git *, struct pack_window **, off_t, unsigned long *);