MCPcopy Create free account
hub / github.com/apache/orc / BlockDecompressionStream

Class BlockDecompressionStream

c++/src/Compression.cc:789–807  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

787 }
788
789 class BlockDecompressionStream : public DecompressionStream {
790 public:
791 BlockDecompressionStream(std::unique_ptr<SeekableInputStream> inStream, size_t blockSize,
792 MemoryPool& pool, ReaderMetrics* metrics);
793
794 virtual ~BlockDecompressionStream() override {}
795 virtual std::string getName() const override = 0;
796
797 protected:
798 virtual void NextDecompress(const void** data, int* size, size_t availableSize) override;
799
800 virtual uint64_t decompress(const char* input, uint64_t length, char* output,
801 size_t maxOutputLength) = 0;
802
803 private:
804 // may need to stitch together multiple input buffers;
805 // to give snappy a contiguous block
806 DataBuffer<char> inputDataBuffer_;
807 };
808
809 BlockDecompressionStream::BlockDecompressionStream(std::unique_ptr<SeekableInputStream> inStream,
810 size_t blockSize, MemoryPool& pool,

Callers 1

Compression.ccFile · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected