7#ifndef CORE_FPDFAPI_PAGE_CPDF_SAMPLEDFUNC_H_
8#define CORE_FPDFAPI_PAGE_CPDF_SAMPLEDFUNC_H_
12#include "core/fpdfapi/page/cpdf_function.h"
13#include "core/fxcrt/retain_ptr.h"
35 bool v_Call(pdfium::span<
const float> inputs,
36 pdfium::span<
float> results)
const override;
43#if defined(PDF_USE_SKIA)
44 RetainPtr<CPDF_StreamAcc> GetSampleStream()
const;
48 std::vector<SampleEncodeInfo> m_EncodeInfo;
49 std::vector<SampleDecodeInfo> m_DecodeInfo;
50 uint32_t m_nBitsPerSample = 0;
51 uint32_t m_SampleMax = 0;
52 RetainPtr<CPDF_StreamAcc> m_pSampleStream;
int GetIntegerFor(const ByteString &key) const
bool Init(const CPDF_Object *pObj, VisitedSet *pVisited)
absl::optional< uint32_t > Call(pdfium::span< const float > inputs, pdfium::span< float > results) const
@ kType2ExponentialInterpolation
float Interpolate(float x, float xmin, float xmax, float ymin, float ymax) const
RetainPtr< const CPDF_Dictionary > GetDict() const
const CPDF_Stream * AsStream() const
bool DoOperator(PDF_PSOP op)
bool Parse(pdfium::span< const uint8_t > input)
uint32_t GetStackSize() const
bool v_Init(const CPDF_Object *pObj, VisitedSet *pVisited) override
bool v_Call(pdfium::span< const float > inputs, pdfium::span< float > results) const override
void Execute(CPDF_PSEngine *pEngine)
float GetFloatValue() const
bool Parse(CPDF_SimpleParser *parser, int depth)
bool Execute(CPDF_PSEngine *pEngine)
size_t num_operators() const
const std::unique_ptr< CPDF_PSOP > & last_operator()
bool Parse(CPDF_SimpleParser *parser, int depth)
void AddOperatorForTesting(ByteStringView word)
uint32_t GetBitsPerSample() const
const std::vector< SampleEncodeInfo > & GetEncodeInfo() const
bool v_Call(pdfium::span< const float > inputs, pdfium::span< float > results) const override
~CPDF_SampledFunc() override
bool v_Init(const CPDF_Object *pObj, VisitedSet *pVisited) override