RawSpeed
fast raw decoding library
Loading...
Searching...
No Matches
LJpegDecoder.h
Go to the documentation of this file.
1
/*
2
RawSpeed - RAW file decoder.
3
4
Copyright (C) 2017 Axel Waggershauser
5
6
This library is free software; you can redistribute it and/or
7
modify it under the terms of the GNU Lesser General Public
8
License as published by the Free Software Foundation; either
9
version 2 of the License, or (at your option) any later version.
10
11
This library is distributed in the hope that it will be useful,
12
but WITHOUT ANY WARRANTY; without even the implied warranty of
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
Lesser General Public License for more details.
15
16
You should have received a copy of the GNU Lesser General Public
17
License along with this library; if not, write to the Free Software
18
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19
*/
20
21
#pragma once
22
23
#include "
adt/Point.h
"
24
#include "
decompressors/AbstractLJpegDecoder.h
"
25
#include <cstdint>
26
27
namespace
rawspeed
{
28
29
class
ByteStream
;
30
class
RawImage
;
31
32
// Decompresses Lossless JPEGs, with 2-4 components
33
34
class
LJpegDecoder
final :
public
AbstractLJpegDecoder
{
35
[[nodiscard]]
ByteStream::size_type
decodeScan
()
override
;
36
37
uint32_t
offX
= 0;
38
uint32_t
offY
= 0;
39
uint32_t
w
= 0;
40
uint32_t
h
= 0;
41
42
iPoint2D
maxDim
;
43
44
public
:
45
LJpegDecoder
(
ByteStream
bs,
const
RawImage
& img);
46
47
void
decode
(
uint32_t
offsetX,
uint32_t
offsetY,
uint32_t
width,
48
uint32_t
height,
iPoint2D
maxDim
,
bool
fixDng16Bug_);
49
};
50
51
}
// namespace rawspeed
AbstractLJpegDecoder.h
Point.h
rawspeed::AbstractLJpegDecoder::AbstractLJpegDecoder
AbstractLJpegDecoder(ByteStream bs, RawImage img)
Definition
AbstractLJpegDecoder.cpp:49
rawspeed::Buffer::size_type
uint32_t size_type
Definition
Buffer.h:49
rawspeed::ByteStream
Definition
ByteStream.h:43
rawspeed::LJpegDecoder::offY
uint32_t offY
Definition
LJpegDecoder.h:38
rawspeed::LJpegDecoder::offX
uint32_t offX
Definition
LJpegDecoder.h:37
rawspeed::LJpegDecoder::LJpegDecoder
LJpegDecoder(ByteStream bs, const RawImage &img)
Definition
LJpegDecoder.cpp:43
rawspeed::LJpegDecoder::h
uint32_t h
Definition
LJpegDecoder.h:40
rawspeed::LJpegDecoder::decodeScan
ByteStream::size_type decodeScan() override
Definition
LJpegDecoder.cpp:104
rawspeed::LJpegDecoder::decode
void decode(uint32_t offsetX, uint32_t offsetY, uint32_t width, uint32_t height, iPoint2D maxDim, bool fixDng16Bug_)
Definition
LJpegDecoder.cpp:66
rawspeed::LJpegDecoder::maxDim
iPoint2D maxDim
Definition
LJpegDecoder.h:42
rawspeed::LJpegDecoder::w
uint32_t w
Definition
LJpegDecoder.h:39
rawspeed::RawImage
Definition
RawImage.h:247
rawspeed::iPoint2D
Definition
Point.h:35
uint32_t
rawspeed
Definition
CoalescingOutputIteratorBenchmark.cpp:35
librawspeed
decompressors
LJpegDecoder.h
Generated by
1.15.0