diff options
Diffstat (limited to 'src/pack-objects.h')
-rw-r--r-- | src/pack-objects.h | 101 |
1 files changed, 0 insertions, 101 deletions
diff --git a/src/pack-objects.h b/src/pack-objects.h deleted file mode 100644 index 04514daa6..000000000 --- a/src/pack-objects.h +++ /dev/null @@ -1,101 +0,0 @@ -/* - * Copyright (C) the libgit2 contributors. All rights reserved. - * - * This file is part of libgit2, distributed under the GNU GPL v2 with - * a Linking Exception. For full terms see the included COPYING file. - */ - -#ifndef INCLUDE_pack_objects_h__ -#define INCLUDE_pack_objects_h__ - -#include "common.h" - -#include "buffer.h" -#include "hash.h" -#include "oidmap.h" -#include "netops.h" -#include "zstream.h" -#include "pool.h" -#include "indexer.h" - -#include "git2/oid.h" -#include "git2/pack.h" - -#define GIT_PACK_WINDOW 10 /* number of objects to possibly delta against */ -#define GIT_PACK_DEPTH 50 /* max delta depth */ -#define GIT_PACK_DELTA_CACHE_SIZE (256 * 1024 * 1024) -#define GIT_PACK_DELTA_CACHE_LIMIT 1000 -#define GIT_PACK_BIG_FILE_THRESHOLD (512 * 1024 * 1024) - -typedef struct git_pobject { - git_oid id; - git_object_t type; - off64_t offset; - - size_t size; - - unsigned int hash; /* name hint hash */ - - struct git_pobject *delta; /* delta base object */ - struct git_pobject *delta_child; /* deltified objects who bases me */ - struct git_pobject *delta_sibling; /* other deltified objects - * who uses the same base as - * me */ - - void *delta_data; - size_t delta_size; - size_t z_delta_size; - - int written:1, - recursing:1, - tagged:1, - filled:1; -} git_pobject; - -struct git_packbuilder { - git_repository *repo; /* associated repository */ - git_odb *odb; /* associated object database */ - - git_hash_ctx ctx; - git_zstream zstream; - - uint32_t nr_objects, - nr_deltified, - nr_written, - nr_remaining; - - size_t nr_alloc; - - git_pobject *object_list; - - git_oidmap *object_ix; - - git_oidmap *walk_objects; - git_pool object_pool; - - git_oid pack_oid; /* hash of written pack */ - - /* synchronization objects */ - git_mutex cache_mutex; - git_mutex progress_mutex; - git_cond progress_cond; - - /* configs */ - size_t delta_cache_size; - size_t max_delta_cache_size; - size_t cache_max_small_delta_size; - size_t big_file_threshold; - size_t window_memory_limit; - - unsigned int nr_threads; /* nr of threads to use */ - - git_packbuilder_progress progress_cb; - void *progress_cb_payload; - double last_progress_report_time; /* the time progress was last reported */ - - bool done; -}; - -int git_packbuilder_write_buf(git_buf *buf, git_packbuilder *pb); - -#endif |