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
CStretchEngine Class Reference

#include <cstretchengine.h>

Collaboration diagram for CStretchEngine:

Classes

struct  PixelWeight
class  WeightTable

Public Member Functions

 CStretchEngine (ScanlineComposerIface *pDestBitmap, FXDIB_Format dest_format, int dest_width, int dest_height, const FX_RECT &clip_rect, const RetainPtr< const CFX_DIBBase > &pSrcBitmap, const FXDIB_ResampleOptions &options)
 ~CStretchEngine ()
bool Continue (PauseIndicatorIface *pPause)
bool StartStretchHorz ()
bool ContinueStretchHorz (PauseIndicatorIface *pPause)
void StretchVert ()
const FXDIB_ResampleOptionsGetResampleOptionsForTest () const

Static Public Member Functions

static uint32_t FixedFromDouble (double d)
static uint8_t PixelFromFixed (uint32_t fixed)
static bool UseInterpolateBilinear (const FXDIB_ResampleOptions &options, int dest_width, int dest_height, int src_width, int src_height)

Static Public Attributes

static constexpr uint32_t kFixedPointBits = 16
static constexpr uint32_t kFixedPointOne = 1 << kFixedPointBits

Detailed Description

Definition at line 26 of file cstretchengine.h.

Constructor & Destructor Documentation

◆ CStretchEngine()

CStretchEngine::CStretchEngine ( ScanlineComposerIface * pDestBitmap,
FXDIB_Format dest_format,
int dest_width,
int dest_height,
const FX_RECT & clip_rect,
const RetainPtr< const CFX_DIBBase > & pSrcBitmap,
const FXDIB_ResampleOptions & options )

Definition at line 187 of file cstretchengine.cpp.

References CStretchEngine(), FX_RECT::FX_RECT(), FX_RECT::FX_RECT(), FXDIB_ResampleOptions::bInterpolateBilinear, FXDIB_ResampleOptions::bNoSmoothing, FX_RECT::bottom, fxge::CalculatePitch32OrDie(), GetBppFromFormat(), FX_RECT::Intersect(), kBgra, kBgrx, FX_RECT::left, FX_RECT::right, FX_RECT::top, UseInterpolateBilinear(), and FX_RECT::Width().

Referenced by CStretchEngine().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ~CStretchEngine()

CStretchEngine::~CStretchEngine ( )
default

Member Function Documentation

◆ Continue()

bool CStretchEngine::Continue ( PauseIndicatorIface * pPause)

Definition at line 273 of file cstretchengine.cpp.

References ContinueStretchHorz(), and StretchVert().

Here is the call graph for this function:

◆ ContinueStretchHorz()

bool CStretchEngine::ContinueStretchHorz ( PauseIndicatorIface * pPause)

Definition at line 308 of file cstretchengine.cpp.

References FX_RECT::bottom, CStretchEngine::PixelWeight::GetWeightForPosition(), kBgr, FX_RECT::left, CStretchEngine::PixelWeight::m_SrcEnd, CStretchEngine::PixelWeight::m_SrcStart, PauseIndicatorIface::NeedToPauseNow(), PixelFromFixed(), and FX_RECT::right.

Referenced by Continue().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FixedFromDouble()

uint32_t CStretchEngine::FixedFromDouble ( double d)
inlinestatic

Definition at line 31 of file cstretchengine.h.

References FXSYS_round(), and kFixedPointOne.

Referenced by CStretchEngine::WeightTable::CalculateWeights().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetResampleOptionsForTest()

const FXDIB_ResampleOptions & CStretchEngine::GetResampleOptionsForTest ( ) const
inline

Definition at line 121 of file cstretchengine.h.

Referenced by TEST().

Here is the caller graph for this function:

◆ PixelFromFixed()

uint8_t CStretchEngine::PixelFromFixed ( uint32_t fixed)
inlinestatic

Definition at line 35 of file cstretchengine.h.

References kFixedPointBits.

Referenced by ContinueStretchHorz(), and StretchVert().

Here is the caller graph for this function:

◆ StartStretchHorz()

bool CStretchEngine::StartStretchHorz ( )

Definition at line 284 of file cstretchengine.cpp.

References FX_RECT::Height(), and FX_RECT::top.

Here is the call graph for this function:

◆ StretchVert()

void CStretchEngine::StretchVert ( )

Definition at line 436 of file cstretchengine.cpp.

References FX_RECT::bottom, CStretchEngine::WeightTable::CalculateWeights(), CStretchEngine::WeightTable::GetPixelWeight(), CStretchEngine::PixelWeight::GetWeightForPosition(), FX_RECT::left, CStretchEngine::PixelWeight::m_SrcEnd, CStretchEngine::PixelWeight::m_SrcStart, PixelFromFixed(), FX_RECT::right, and FX_RECT::top.

Referenced by Continue().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ UseInterpolateBilinear()

bool CStretchEngine::UseInterpolateBilinear ( const FXDIB_ResampleOptions & options,
int dest_width,
int dest_height,
int src_width,
int src_height )
static

Definition at line 45 of file cstretchengine.cpp.

References FXDIB_ResampleOptions::bInterpolateBilinear, and FXDIB_ResampleOptions::bNoSmoothing.

Referenced by CStretchEngine().

Here is the caller graph for this function:

Member Data Documentation

◆ kFixedPointBits

uint32_t CStretchEngine::kFixedPointBits = 16
staticconstexpr

Definition at line 28 of file cstretchengine.h.

Referenced by PixelFromFixed().

◆ kFixedPointOne

uint32_t CStretchEngine::kFixedPointOne = 1 << kFixedPointBits
staticconstexpr

The documentation for this class was generated from the following files: