5#ifndef CORE_FXGE_CALCULATE_PITCH_H_
6#define CORE_FXGE_CALCULATE_PITCH_H_
18 uint32_t components_per_pixel,
29 uint32_t components_per_pixel,
fxcodec::BasicModule BasicModule
fxcrt::ByteString ByteString
void SetHeight(int height)
void SetFormat(FXDIB_Format format)
void SetPaletteArgb(int index, uint32_t color)
void SetPitch(uint32_t pitch)
std::vector< RetainPtr< CPDF_Object > >::const_iterator const_iterator
static uint32_t ComponentsForFamily(Family family)
uint32_t ComponentCount() const
static RetainPtr< CPDF_ColorSpace > GetStockCS(Family family)
RetainPtr< CPDF_DIB > DetachMask()
size_t GetEstimatedImageMemoryBurden() const override
uint32_t GetMatteColor() const
bool SkipToScanline(int line, PauseIndicatorIface *pPause) const override
RetainPtr< CPDF_ColorSpace > GetColorSpace() const
LoadState ContinueLoadDIBBase(PauseIndicatorIface *pPause)
pdfium::span< const uint8_t > GetScanline(int line) const override
LoadState StartLoadDIBBase(bool bHasMask, const CPDF_Dictionary *pFormResources, const CPDF_Dictionary *pPageResources, bool bStdCS, CPDF_ColorSpace::Family GroupFamily, bool bLoadMask, const CFX_Size &max_size_required)
std::map< ByteString, RetainPtr< CPDF_Object >, std::less<> > DictMap
static bool IsValidJpegBitsPerComponent(int32_t bpc)
static bool IsValidJpegComponent(int32_t comps)
static DataVector< uint8_t > RunLengthEncode(pdfium::span< const uint8_t > src_span)
static std::unique_ptr< ScanlineDecoder > CreateRunLengthDecoder(pdfium::span< const uint8_t > src_buf, int width, int height, int nComps, int bpc)
BasicModule & operator=(const BasicModule &)=delete
BasicModule(const BasicModule &)=delete
static DataVector< uint8_t > A85Encode(pdfium::span< const uint8_t > src_span)
static void Sycc420ToRgbForTesting(opj_image_t *img)
static constexpr uint8_t kMaxResolutionsToSkip
bool Decode(pdfium::span< uint8_t > dest_buf, uint32_t pitch, bool swap_rgb, uint32_t component_count)
JpxImageInfo GetInfo() const
static std::unique_ptr< CJPX_Decoder > Create(pdfium::span< const uint8_t > src_span, CJPX_Decoder::ColorSpaceOption option, uint8_t resolution_levels_to_skip, bool strict_mode)
pdfium::raw_span< const uint8_t > m_pGlobalSpan
pdfium::raw_span< const uint8_t > m_pSrcSpan
std::unique_ptr< CJBig2_Context > m_pContext
pdfium::raw_span< uint8_t > m_dest_buf
static FXCODEC_STATUS StartDecode(Jbig2Context *pJbig2Context, JBig2_DocumentContext *pJbig2DocumentContext, uint32_t width, uint32_t height, pdfium::span< const uint8_t > src_span, uint64_t src_key, pdfium::span< const uint8_t > global_span, uint64_t global_key, pdfium::span< uint8_t > dest_buf, uint32_t dest_pitch, PauseIndicatorIface *pPause)
static FXCODEC_STATUS ContinueDecode(Jbig2Context *pJbig2Context, PauseIndicatorIface *pPause)
Jbig2Decoder(const Jbig2Decoder &)=delete
Jbig2Decoder & operator=(const Jbig2Decoder &)=delete
JpegModule & operator=(const JpegModule &)=delete
static std::unique_ptr< ScanlineDecoder > CreateDecoder(pdfium::span< const uint8_t > src_span, uint32_t width, uint32_t height, int nComps, bool ColorTransform)
static std::optional< ImageInfo > LoadInfo(pdfium::span< const uint8_t > src_span)
JpegModule(const JpegModule &)=delete
virtual pdfium::span< uint8_t > GetNextLine()=0
ScanlineDecoder(int nOrigWidth, int nOrigHeight, int nOutputWidth, int nOutputHeight, int nComps, int nBpc, uint32_t nPitch)
pdfium::raw_span< uint8_t > m_pLastScanline
virtual ~ScanlineDecoder()
bool SkipToScanline(int line, PauseIndicatorIface *pPause)
virtual uint32_t GetSrcOffset()=0
pdfium::span< const uint8_t > GetScanline(int line)
bool operator==(const char *ptr) const
bool operator!=(const char *ptr) const
constexpr size_t kHugeImageSize
CFX_STemplate< int32_t > CFX_Size
pdfium::CheckedNumeric< uint32_t > FX_SAFE_UINT32
fxcodec::Jbig2Decoder Jbig2Decoder
fxcodec::Jbig2Context Jbig2Context
fxcodec::JpegModule JpegModule
std::optional< uint32_t > CalculatePitch8(uint32_t bits_per_component, uint32_t components_per_pixel, int width_in_pixels)
std::optional< uint32_t > CalculatePitch32(int bits_per_pixel, int width_in_pixels)
uint32_t CalculatePitch8OrDie(uint32_t bits_per_component, uint32_t components_per_pixel, int width_in_pixels)
uint32_t CalculatePitch32OrDie(int bits_per_pixel, int width_in_pixels)
#define CONSTRUCT_VIA_MAKE_RETAIN
fxcodec::ScanlineDecoder ScanlineDecoder