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
fx_bmp.h
Go to the documentation of this file.
1// Copyright 2014 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_BMP_FX_BMP_H_
8#define CORE_FXCODEC_BMP_FX_BMP_H_
9
10#include <stdint.h>
11
12#pragma pack(1)
14 uint16_t bfType;
15 uint32_t bfSize;
16 uint16_t bfReserved1;
17 uint16_t bfReserved2;
18 uint32_t bfOffBits;
19};
20
22 uint32_t bcSize;
23 uint16_t bcWidth;
24 uint16_t bcHeight;
25 uint16_t bcPlanes;
26 uint16_t bcBitCount;
27};
28
30 uint32_t biSize;
31 int32_t biWidth;
32 int32_t biHeight;
33 uint16_t biPlanes;
34 uint16_t biBitCount;
35 uint32_t biCompression;
36 uint32_t biSizeImage;
39 uint32_t biClrUsed;
41};
42#pragma pack()
43
44static_assert(sizeof(BmpFileHeader) == 14, "BmpFileHeader has wrong size");
45static_assert(sizeof(BmpCoreHeader) == 12, "BmpCoreHeader has wrong size");
46static_assert(sizeof(BmpInfoHeader) == 40, "BmpInfoHeader has wrong size");
47
48#endif // CORE_FXCODEC_BMP_FX_BMP_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
UnownedPtr< BmpDecoder::Delegate > const m_pDelegate
CFX_BmpContext(BmpDecoder::Delegate *pDelegate)
CFX_BmpDecompressor m_Bmp
CFX_BmpDecompressor(const CFX_BmpContext *context)
const std::vector< uint32_t > * palette() const
void SetInputBuffer(RetainPtr< CFX_CodecMemory > codec_memory)
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
uint16_t bcBitCount
Definition fx_bmp.h:26
uint16_t bcWidth
Definition fx_bmp.h:23
uint16_t bcHeight
Definition fx_bmp.h:24
uint16_t bcPlanes
Definition fx_bmp.h:25
uint32_t bcSize
Definition fx_bmp.h:22
uint32_t bfSize
Definition fx_bmp.h:15
uint32_t bfOffBits
Definition fx_bmp.h:18
uint16_t bfReserved2
Definition fx_bmp.h:17
uint16_t bfType
Definition fx_bmp.h:14
uint16_t bfReserved1
Definition fx_bmp.h:16
uint32_t biClrUsed
Definition fx_bmp.h:39
int32_t biWidth
Definition fx_bmp.h:31
uint32_t biSizeImage
Definition fx_bmp.h:36
uint16_t biPlanes
Definition fx_bmp.h:33
int32_t biHeight
Definition fx_bmp.h:32
uint16_t biBitCount
Definition fx_bmp.h:34
uint32_t biCompression
Definition fx_bmp.h:35
int32_t biYPelsPerMeter
Definition fx_bmp.h:38
uint32_t biSize
Definition fx_bmp.h:30
uint32_t biClrImportant
Definition fx_bmp.h:40
int32_t biXPelsPerMeter
Definition fx_bmp.h:37