24 const int64_t tag = input_block->
tag();
26 unsigned char *input_data = input_block->
data();
27 size_t remaining_in_input = input_block->
size();
41 unsigned char *output_data = output_block->
data() + output_block->
size();
43 size_t remaining_in_output =
46 done = compressor->Deflate(flush,
47 &input_data, &remaining_in_input, &output_data, &remaining_in_output);
49 output_block->
set_size(output_block->
size() + remaining_in_output);
51 if (output_block->
IsFull()) {
59 }
while ((remaining_in_input > 0) || (flush && !done));
64 if (output_block->
size() > 0)
virtual void Process(BlockItem *input_block)
void SetChunkItem(ChunkItem *item)
zlib::Compressor * GetCompressor()
assert((mem||(size==0))&&"Out Of Memory")
void SetFileItem(FileItem *item)
ItemAllocator * allocator_
void set_size(uint32_t val)
Tube< ItemT >::Link * Dispatch(ItemT *item)
void MakeData(uint32_t capacity)
void Insert(const Key &key, const Value &value)
static const unsigned kCompressedBlockSize
bool Erase(const Key &key)
bool Lookup(const Key &key, Value *value) const
TubeGroup< BlockItem > * tubes_out_