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_devicecs.h
Go to the documentation of this file.
1// Copyright 2017 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_DEVICECS_H_
8#define CORE_FPDFAPI_PAGE_CPDF_DEVICECS_H_
9
10#include <set>
11
12#include "core/fpdfapi/page/cpdf_colorspace.h"
13#include "core/fxcrt/retain_ptr.h"
14
15class CPDF_DeviceCS final : public CPDF_ColorSpace {
16 public:
18 ~CPDF_DeviceCS() override;
19
20 // CPDF_ColorSpace:
21 std::optional<FX_RGB_STRUCT<float>> GetRGB(
22 pdfium::span<const float> pBuf) const override;
23 void TranslateImageLine(pdfium::span<uint8_t> dest_span,
24 pdfium::span<const uint8_t> src_span,
25 int pixels,
26 int image_width,
27 int image_height,
28 bool bTransMask) const override;
29 uint32_t v_Load(CPDF_Document* pDoc,
30 const CPDF_Array* pArray,
31 std::set<const CPDF_Object*>* pVisited) override;
32
33 private:
34 explicit CPDF_DeviceCS(Family family);
35};
36
37#endif // CORE_FPDFAPI_PAGE_CPDF_DEVICECS_H_
fxcrt::ByteString ByteString
Definition bytestring.h:180
#define DCHECK
Definition check.h:33
#define DCHECK_LT(x, y)
Definition check_op.h:19
bool IsEmpty() const
Definition cpdf_array.h:40
std::vector< RetainPtr< CPDF_Object > >::const_iterator const_iterator
Definition cpdf_array.h:29
CPDF_BasedCS(Family family)
virtual const CPDF_IndexedCS * AsIndexedCS() const
static void InitializeGlobals()
Family GetFamily() const
~CPDF_ColorSpace() override
static void DestroyGlobals()
virtual const CPDF_PatternCS * AsPatternCS() const
virtual bool IsNormal() const
virtual void EnableStdConversion(bool bEnabled)
std::vector< float > CreateBufAndSetDefaultColor() const
CPDF_ColorSpace(Family family)
static uint32_t ComponentsForFamily(Family family)
virtual void TranslateImageLine(pdfium::span< uint8_t > dest_span, pdfium::span< const uint8_t > src_span, int pixels, int image_width, int image_height, bool bTransMask) const
static RetainPtr< CPDF_ColorSpace > GetStockCSForName(const ByteString &name)
uint32_t ComponentCount() const
bool HasSameArray(const CPDF_Object *pObj) const
void SetComponentsForStockCS(uint32_t nComponents)
static RetainPtr< CPDF_ColorSpace > GetStockCS(Family family)
virtual void GetDefaultValue(int iComponent, float *value, float *min, float *max) const
~CPDF_DeviceCS() override
std::optional< FX_RGB_STRUCT< float > > GetRGB(pdfium::span< const float > pBuf) const override
void TranslateImageLine(pdfium::span< uint8_t > dest_span, pdfium::span< const uint8_t > src_span, int pixels, int image_width, int image_height, bool bTransMask) const override
uint32_t v_Load(CPDF_Document *pDoc, const CPDF_Array *pArray, std::set< const CPDF_Object * > *pVisited) override
std::map< ByteString, RetainPtr< CPDF_Object >, std::less<> > DictMap
virtual ByteString GetString() const
bool IsName() const
const CPDF_Array * AsArray() const
const CPDF_Stream * AsStream() const
void SetComps(pdfium::span< const float > comps)
PatternValue(const PatternValue &that)
static bool IsValidIccComponents(int components)
bool operator==(const char *ptr) const
#define UNSAFE_TODO(...)
pdfium::CheckedNumeric< int32_t > FX_SAFE_INT32
constexpr uint32_t FXBSTR_ID(uint8_t c1, uint8_t c2, uint8_t c3, uint8_t c4)
Definition fx_string.h:19
void ReverseRGB(pdfium::span< uint8_t > pDestBuf, pdfium::span< const uint8_t > pSrcBuf, int pixels)
Definition fx_codec.cpp:23
#define NOTREACHED_NORETURN()
Definition notreached.h:22
#define CHECK(cvref)
#define CONSTRUCT_VIA_MAKE_RETAIN
Definition retain_ptr.h:222
fxcrt::ByteStringView ByteStringView