JpegReader.h
1/* Copyright (C) 2016 Marc Boris Duerner
2 *
3 * This library is free software; you can redistribute it and/or
4 * modify it under the terms of the GNU Lesser General Public
5 * License as published by the Free Software Foundation; either
6 * version 2.1 of the License, or (at your option) any later version.
7 *
8 * As a special exception, you may use this file as part of a free
9 * software library without restriction. Specifically, if other files
10 * instantiate templates or use macros or inline functions from this
11 * file, or you compile this file and link it with other files to
12 * produce an executable, this file does not by itself cause the
13 * resulting executable to be covered by the GNU General Public
14 * License. This exception does not however invalidate any other
15 * reasons why the executable file might be covered by the GNU Library
16 * General Public License.
17 *
18 * This library is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
21 * Lesser General Public License for more details.
22 *
23 * You should have received a copy of the GNU Lesser General Public
24 * License along with this library; if not, write to the Free Software
25 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
26 * MA 02110-1301 USA
27 */
28
29#ifndef PT_GFX_JEPGREADER_H
30#define PT_GFX_JEPGREADER_H
31
32#include <Pt/Gfx/Api.h>
33#include <iosfwd>
34
35namespace Pt {
36
37namespace Gfx {
38
39// TODO: ImageIOHandler used by ImageReader and ImageWriter
40
54class PT_GFX_API JpegReader
55{
56 public:
60
63 JpegReader(std::istream& is, Image& image);
64
68
71 void attach(std::istream& is, Image& image);
72
75 void detach();
76
79 void reset();
80
83 Image* advance();
84
87 Image& get();
88
89 private:
90 class JpegReaderImpl* _impl;
91};
92
93} // namespace
94
95} // namespace
96
97#endif
void attach(std::istream &is, Image &image)
Attach to target stream and image.
~JpegReader()
Destructor.
JpegReader()
Default Constructor.
Image * advance()
Reads image data from the target stream.
Image & get()
Reads the whole image from the stream.
void detach()
Detach from target stream.
JpegReader(std::istream &is, Image &image)
Construct with target stream and image.
void reset()
Reset to begin new compression/decompression.
Graphics and imaging services.
Definition Api-Argb32Image.h:12
Core module.
Definition Allocator.h:33