Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
Loading...
Searching...
No Matches
png_decoder.h
Go to the documentation of this file.
1
// Copyright 2016 The PDFium Authors
2
// Use of this source code is governed by a BSD-style license that can be
3
// found in the LICENSE file.
4
5
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6
7
#
ifndef
CORE_FXCODEC_PNG_PNG_DECODER_H_
8
#
define
CORE_FXCODEC_PNG_PNG_DECODER_H_
9
10
#
include
<
memory
>
11
12
#
include
"core/fxcodec/progressive_decoder_iface.h"
13
#
include
"core/fxcrt/retain_ptr.h"
14
15
#
ifndef
PDF_ENABLE_XFA_PNG
16
#
error
"PNG must be enabled"
17
#
endif
18
19
namespace
fxcodec
{
20
21
class
CFX_DIBAttribute;
22
23
class
PngDecoder
{
24
public
:
25
class
Delegate
{
26
public
:
27
virtual
bool
PngReadHeader
(
int
width,
28
int
height,
29
int
bpc,
30
int
pass,
31
int
* color_type,
32
double
* gamma) = 0;
33
34
// `line` must be within [0, height].
35
virtual
uint8_t*
PngAskScanlineBuf
(
int
line) = 0;
36
37
virtual
void
PngFillScanlineBufCompleted
(
int
pass,
int
line) = 0;
38
};
39
40
static
std
::
unique_ptr
<
ProgressiveDecoderIface
::
Context
>
StartDecode
(
41
Delegate
* pDelegate);
42
43
static
bool
ContinueDecode
(
ProgressiveDecoderIface
::
Context
* pContext,
44
RetainPtr
<CFX_CodecMemory> codec_memory,
45
CFX_DIBAttribute* pAttribute);
46
47
PngDecoder
() =
delete
;
48
PngDecoder
(
const
PngDecoder
&) =
delete
;
49
PngDecoder
&
operator
=(
const
PngDecoder
&) =
delete
;
50
};
51
52
}
// namespace fxcodec
53
54
using
PngDecoder
=
fxcodec
::
PngDecoder
;
55
56
#
endif
// CORE_FXCODEC_PNG_PNG_DECODER_H_
CPngContext::CPngContext
CPngContext(PngDecoder::Delegate *pDelegate)
Definition
png_decoder.cpp:171
CPngContext::~CPngContext
~CPngContext() override
Definition
png_decoder.cpp:174
CPngContext::m_szLastError
char m_szLastError[PNG_ERROR_SIZE]
Definition
png_decoder.cpp:33
CPngContext::m_pInfo
png_infop m_pInfo
Definition
png_decoder.cpp:31
CPngContext::m_pPng
png_structp m_pPng
Definition
png_decoder.cpp:30
CPngContext::m_pDelegate
UnownedPtr< PngDecoder::Delegate > const m_pDelegate
Definition
png_decoder.cpp:32
fxcodec::PngDecoder::Delegate
Definition
png_decoder.h:25
fxcodec::PngDecoder::Delegate::PngFillScanlineBufCompleted
virtual void PngFillScanlineBufCompleted(int pass, int line)=0
fxcodec::PngDecoder::Delegate::PngAskScanlineBuf
virtual uint8_t * PngAskScanlineBuf(int line)=0
fxcodec::PngDecoder::Delegate::PngReadHeader
virtual bool PngReadHeader(int width, int height, int bpc, int pass, int *color_type, double *gamma)=0
fxcodec::PngDecoder
Definition
png_decoder.h:23
fxcodec::PngDecoder::ContinueDecode
static bool ContinueDecode(ProgressiveDecoderIface::Context *pContext, RetainPtr< CFX_CodecMemory > codec_memory, CFX_DIBAttribute *pAttribute)
Definition
png_decoder.cpp:205
fxcodec::PngDecoder::PngDecoder
PngDecoder()=delete
fxcodec::PngDecoder::PngDecoder
PngDecoder(const PngDecoder &)=delete
fxcodec::PngDecoder::StartDecode
static std::unique_ptr< ProgressiveDecoderIface::Context > StartDecode(Delegate *pDelegate)
Definition
png_decoder.cpp:182
fxcodec::PngDecoder::operator=
PngDecoder & operator=(const PngDecoder &)=delete
fxcodec::ProgressiveDecoderIface::Context
Definition
progressive_decoder_iface.h:23
fxcodec::ProgressiveDecoderIface
Definition
progressive_decoder_iface.h:21
fxcrt::RetainPtr
Definition
retain_ptr.h:28
fxcrt::UnownedPtr
Definition
unowned_ptr.h:76
fxcodec
Definition
fpdf_parser_decode.h:28
std
[33]
Definition
src_corelib_tools_qhash.cpp:421
_png_get_header_func
void _png_get_header_func(png_structp png_ptr, png_infop info_ptr)
Definition
png_decoder.cpp:83
_png_warning_data
void _png_warning_data(png_structp png_ptr, png_const_charp error_msg)
Definition
png_decoder.cpp:47
_png_error_data
void _png_error_data(png_structp png_ptr, png_const_charp error_msg)
Definition
png_decoder.cpp:38
_png_load_bmp_attribute
void _png_load_bmp_attribute(png_structp png_ptr, png_infop info_ptr, CFX_DIBAttribute *pAttribute)
Definition
png_decoder.cpp:49
_png_get_row_func
void _png_get_row_func(png_structp png_ptr, png_bytep new_row, png_uint_32 row_num, int pass)
Definition
png_decoder.cpp:153
PNG_ERROR_SIZE
#define PNG_ERROR_SIZE
Definition
png_decoder.cpp:23
_png_get_end_func
void _png_get_end_func(png_structp png_ptr, png_infop info_ptr)
Definition
png_decoder.cpp:151
PngDecoder
fxcodec::PngDecoder PngDecoder
Definition
png_decoder.h:54
CHECK
#define CHECK(cvref)
Definition
q23utility.cpp:15
qtwebengine
src
3rdparty
chromium
third_party
pdfium
core
fxcodec
png
png_decoder.h
Generated on
for Qt by
1.18.0