Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
progressive_decoder_iface.h
Go to the documentation of this file.
1// Copyright 2018 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_PROGRESSIVE_DECODER_IFACE_H_
8#define CORE_FXCODEC_PROGRESSIVE_DECODER_IFACE_H_
9
10#include "core/fxcrt/fx_types.h"
11#include "core/fxcrt/retain_ptr.h"
12
13#ifndef PDF_ENABLE_XFA
14#error "XFA Only"
15#endif
16
17class CFX_CodecMemory;
18
19namespace fxcodec {
20
22 public:
23 class Context {
24 public:
25 virtual ~Context() = default;
26 };
27
28 virtual ~ProgressiveDecoderIface() = default;
29
30 // Returns the number of unprocessed bytes remaining in the input buffer.
31 virtual FX_FILESIZE GetAvailInput(Context* pContext) const = 0;
32
33 // Provides a new input buffer to the codec. Returns true on success.
34 virtual bool Input(Context* pContext,
35 RetainPtr<CFX_CodecMemory> codec_memory) = 0;
36};
37
38} // namespace fxcodec
39
40using fxcodec::ProgressiveDecoderIface;
41
42#endif // CORE_FXCODEC_PROGRESSIVE_DECODER_IFACE_H_
virtual void BmpReadScanline(uint32_t row_num, pdfium::span< const uint8_t > row_buf)=0
virtual bool BmpInputImagePositionBuf(uint32_t rcd_pos)=0
static bool Input(ProgressiveDecoderIface::Context *pContext, RetainPtr< CFX_CodecMemory > codec_memory)
static Status ReadHeader(ProgressiveDecoderIface::Context *pContext, int32_t *width, int32_t *height, bool *tb_flag, int32_t *components, int32_t *pal_num, const std::vector< uint32_t > **palette, CFX_DIBAttribute *pAttribute)
BmpDecoder(const BmpDecoder &)=delete
static Status LoadImage(ProgressiveDecoderIface::Context *pContext)
static std::unique_ptr< ProgressiveDecoderIface::Context > StartDecode(Delegate *pDelegate)
static FX_FILESIZE GetAvailInput(ProgressiveDecoderIface::Context *pContext)
BmpDecoder & operator=(const BmpDecoder &)=delete
virtual FX_FILESIZE GetAvailInput(Context *pContext) const =0
virtual bool Input(Context *pContext, RetainPtr< CFX_CodecMemory > codec_memory)=0
virtual ~ProgressiveDecoderIface()=default
#define FX_FILESIZE
Definition fx_types.h:19