LIBPOLYMNIA
jpegio.h
[詳解]
1 /**************************************************************************
2  * jpegio.h
3  *
4  * (c) 2002-2018 oZ/acy. ALL RIGHTS RESERVED.
5  *
6  * JPEG IO
7  * JPEG`摜o̓NX (libjpegbp)
8  *
9  * 2018.12.23 C++17 */ #ifndef INC_POLYMNIA_JPEGIO_H__ #define INC_POLYMNIA_JPEGIO_H__ #include "picture.h" #include "pictio.h" namespace polymnia { class JpegLoader; class JpegSaver; } /*--------------------- * JpegLoader * JPEG`[_ *-------------------*/ class polymnia::JpegLoader : public polymnia::PictLoader<polymnia::Picture> { public: JpegLoader() {} ~JpegLoader() {} polymnia::Picture* load(const std::filesystem::path& path) override; }; /*--------------------- * JpegSaver * JPEG`Z[o *-------------------*/ class polymnia::JpegSaver : public polymnia::PictSaver<polymnia::Picture> { private: int quality; bool prog; public: JpegSaver(int q=75, bool g =false) : quality(q), prog(g) {} ~JpegSaver() {} void setQuality(int q) { quality = q; } void setProgressive(bool g) { prog = g; } bool save( const polymnia::Picture* p, const std::filesystem::path& path) override; }; #endif // INC_POLYMNIA_JPEGIO_H__
10  */
11 #ifndef INC_POLYMNIA_JPEGIO_H__
12 #define INC_POLYMNIA_JPEGIO_H__
13 
14 #include "picture.h"
15 #include "pictio.h"
16 
17 namespace polymnia
18 {
19  class JpegLoader;
20  class JpegSaver;
21 }
22 
23 
24 /*---------------------
25  * JpegLoader
26  * JPEG`[_
27  *-------------------*/
28 class polymnia::JpegLoader : public polymnia::PictLoader<polymnia::Picture>
29 {
30 public:
33 
34  polymnia::Picture* load(const std::filesystem::path& path) override;
35 };
36 
37 
38 /*---------------------
39  * JpegSaver
40  * JPEG`Z[o
41  *-------------------*/
42 class polymnia::JpegSaver : public polymnia::PictSaver<polymnia::Picture>
43 {
44 private:
45  int quality;
46  bool prog;
47 
48 public:
49  JpegSaver(int q=75, bool g =false) : quality(q), prog(g) {}
51  void setQuality(int q) { quality = q; }
52  void setProgressive(bool g) { prog = g; }
53 
54  bool
55  save(
56  const polymnia::Picture* p, const std::filesystem::path& path) override;
57 };
58 
59 
60 #endif // INC_POLYMNIA_JPEGIO_H__
void setProgressive(bool g)
Definition: jpegio.h:52
Definition: dibio.h:20
Definition: jpegio.h:42
polymnia::Picture * load(const std::filesystem::path &path) override
Definition: jpegin.cpp:56
~JpegLoader()
Definition: jpegio.h:32
~JpegSaver()
Definition: jpegio.h:50
void setQuality(int q)
Definition: jpegio.h:51
RGB24bitカラー畫像バッファ
Definition: picture.h:31
Definition: pictio.h:26
bool save(const polymnia::Picture *p, const std::filesystem::path &path) override
Definition: jpegout.cpp:54
Definition: jpegio.h:28
RGB24bit色とRGB256パレットカラーの畫像バッファクラス
JpegLoader()
Definition: jpegio.h:31
JpegSaver(int q=75, bool g=false)
Definition: jpegio.h:49
Definition: pictio.h:25