#pragma once #include "BitStream.h" #include "Image.h" class ImageBitStream : public BitStream { public: ImageBitStream(Image* image); bool isFinished() const override; std::vector peekNextNBytes(unsigned n) const override; std::optional readNextByte() override; void writeByte(unsigned char data, bool checkOverflow = true) override; void writeBytes(const std::vector data) override { } unsigned getBytesPerScanline() const { return mImage->getBytesPerRow(); } private: Image* mImage{nullptr}; };