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
cpdf_transferfuncdib.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_FPDFAPI_PAGE_CPDF_TRANSFERFUNCDIB_H_
8#define CORE_FPDFAPI_PAGE_CPDF_TRANSFERFUNCDIB_H_
9
10#include <stdint.h>
11
12#include "core/fxcrt/data_vector.h"
13#include "core/fxcrt/retain_ptr.h"
14#include "core/fxge/dib/cfx_dibbase.h"
15#include "third_party/base/containers/span.h"
16
17class CPDF_TransferFunc;
18
19class CPDF_TransferFuncDIB final : public CFX_DIBBase {
20 public:
22
23 // CFX_DIBBase:
24 pdfium::span<const uint8_t> GetScanline(int line) const override;
25
26 private:
27 CPDF_TransferFuncDIB(RetainPtr<CFX_DIBBase> pSrc,
28 RetainPtr<CPDF_TransferFunc> pTransferFunc);
30
31 void TranslateScanline(pdfium::span<const uint8_t> src_span) const;
32 FXDIB_Format GetDestFormat() const;
33
34 RetainPtr<CFX_DIBBase> const m_pSrc;
35 RetainPtr<CPDF_TransferFunc> const m_pTransferFunc;
36 const pdfium::span<const uint8_t> m_RampR;
37 const pdfium::span<const uint8_t> m_RampG;
38 const pdfium::span<const uint8_t> m_RampB;
39 mutable DataVector<uint8_t> m_Scanline;
40};
41
42#endif // CORE_FPDFAPI_PAGE_CPDF_TRANSFERFUNCDIB_H_
pdfium::span< const uint8_t > GetScanline(int line) const override
~CPDF_TransferFuncDIB() override
~CPDF_TransferFunc() override
pdfium::span< const uint8_t > GetSamplesR() const
RetainPtr< CFX_DIBBase > TranslateImage(RetainPtr< CFX_DIBBase > pSrc)
pdfium::span< const uint8_t > GetSamplesB() const
FX_COLORREF TranslateColor(FX_COLORREF colorref) const
pdfium::span< const uint8_t > GetSamplesG() const
FXDIB_Format
Definition fx_dib.h:19
#define CONSTRUCT_VIA_MAKE_RETAIN
Definition retain_ptr.h:224