1// Copyright 2017 The Chromium OS Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#ifndef _BSDIFF_BZ2_DECOMPRESSOR_H_ 6#define _BSDIFF_BZ2_DECOMPRESSOR_H_ 7 8#include <bzlib.h> 9 10#include "bsdiff/decompressor_interface.h" 11 12namespace bsdiff { 13 14class BZ2Decompressor : public DecompressorInterface { 15 public: 16 BZ2Decompressor() = default; 17 18 bool SetInputData(const uint8_t* input_data, size_t size) override; 19 20 bool Read(uint8_t* output_data, size_t bytes_to_output) override; 21 22 bool Close() override; 23 24 private: 25 bz_stream stream_; 26}; 27 28} // namespace bsdiff 29 30#endif 31