1 #ifndef GENESIS_UTILS_IO_GZIP_INPUT_SOURCE_H_
2 #define GENESIS_UTILS_IO_GZIP_INPUT_SOURCE_H_
100 std::shared_ptr<BaseInputSource> input_source,
121 static const size_t BlockLength = 1 << 20;
128 void create_zstream_();
135 void destroy_zstream_();
140 size_t read_(
char* buffer,
size_t size )
override;
145 std::string source_name_()
const override
147 return format_name_ +
"-compressed " + input_source_->source_name();
154 std::string source_string_()
const override;
165 bool is_trivial_()
const override
173 int get_format_(
Format format )
const;
178 std::string translate_format_(
Format format )
const;
184 std::shared_ptr<BaseInputSource> input_source_;
187 std::string format_name_;
198 std::unique_ptr<ZlibData, void (*)(ZlibData *)> zlib_data_;
205 #endif // include guard