9 #ifndef CVMFS_FILE_CHUNK_H_
10 #define CVMFS_FILE_CHUNK_H_
14 #include <sys/types.h>
99 pthread_mutex_t *
Handle2Lock(
const uint64_t handle)
const;
102 int retval = pthread_mutex_lock(
lock);
107 int retval = pthread_mutex_unlock(
lock);
157 int retval = pthread_mutex_lock(
lock_);
162 int retval = pthread_mutex_unlock(
lock_);
170 #endif // CVMFS_FILE_CHUNK_H_
size_t size_
uncompressed size of the data chunk
static const unsigned kVersion
FileChunkReflist chunk_reflist
std::vector< OpenChunks > fd_table_
SmallHashDynamic< uint64_t, uint64_t > handle2uniqino
zlib::Algorithms compression_alg
const shash::Any & content_hash() const
assert((mem||(size==0))&&"Out Of Memory")
SmallHashDynamic< uint64_t, ChunkFd > handle2fd
BigVector< FileChunk > FileChunkList
shash::Any content_hash_
content hash of the compressed file chunk
static const unsigned kNumHandleLocks
pthread_mutex_t * Handle2Lock(const uint64_t handle) const
unsigned FindChunkIdx(const uint64_t offset)
SmallHashDynamic< uint64_t, uint32_t > inode2references
ChunkTables & operator=(const ChunkTables &other)
off_t offset_
byte offset in the uncompressed input file
FileChunkReflist(FileChunkList *l, const PathString &p, zlib::Algorithms alg, bool external)
int Add(FileChunkReflist chunks)
BigVector< pthread_mutex_t * > handle_locks
shash::Any HashChunkList()
void CopyFrom(const ChunkTables &other)
FileChunk(const shash::Any &hash, const off_t offset, const size_t size)
SmallHashDynamic< uint64_t, FileChunkReflist > inode2chunks