#ifndef IMAGE_HPP #define IMAGE_HPP #include "bookmouse_types.hpp" #include #include #include // const int foo[] = {O_RDONLY, O_WRONLY, O_RDWR, O_TRUNC, O_APPEND, O_CREAT}; namespace bookmouse { enum class ImageError { FileError, JpegError, }; using ImageOutput = std::vector; using ImageResult = fud::Result; class Image { public: virtual ~Image() = default; virtual ImageResult output() const = 0; }; class JpegImage : public Image { public: virtual ImageResult output() const override; private: fud::String m_filename; }; } // namespace bookmouse #endif