openMSX
Public Member Functions | List of all members
openmsx::HQ3xScaler< Pixel > Class Template Referencefinal

Runs the hq3x scaler algorithm. More...

#include <HQ3xScaler.hh>

Inheritance diagram for openmsx::HQ3xScaler< Pixel >:
Inheritance graph
[legend]
Collaboration diagram for openmsx::HQ3xScaler< Pixel >:
Collaboration graph
[legend]

Public Member Functions

 HQ3xScaler (const PixelOperations< Pixel > &pixelOps)
 
void scale2x1to9x3 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) override
 
void scale1x1to3x3 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) override
 
void scale4x1to9x3 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) override
 
void scale2x1to3x3 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) override
 
void scale8x1to9x3 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) override
 
void scale4x1to3x3 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) override
 
- Public Member Functions inherited from openmsx::Scaler3< Pixel >
void scaleImage (FrameSource &src, const RawFrame *superImpose, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) override
 Scales the image in the given area, which must consist of lines which are all equally wide. More...
 
- Public Member Functions inherited from openmsx::Scaler< Pixel >
virtual ~Scaler ()=default
 
virtual void scaleImage (FrameSource &src, const RawFrame *superImpose, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY)=0
 Scales the image in the given area, which must consist of lines which are all equally wide. More...
 

Additional Inherited Members

- Protected Member Functions inherited from openmsx::Scaler3< Pixel >
 Scaler3 (const PixelOperations< Pixel > &pixelOps)
 
void dispatchScale (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY)
 
virtual void scaleBlank1to3 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY)
 
virtual void scaleBlank2to3 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY)
 
virtual void scale2x1to9x3 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY)
 
virtual void scale2x2to9x3 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY)
 
virtual void scale1x1to3x3 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY)
 
virtual void scale1x2to3x3 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY)
 
virtual void scale4x1to9x3 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY)
 
virtual void scale4x2to9x3 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY)
 
virtual void scale2x1to3x3 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY)
 
virtual void scale2x2to3x3 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY)
 
virtual void scale8x1to9x3 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY)
 
virtual void scale8x2to9x3 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY)
 
virtual void scale4x1to3x3 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY)
 
virtual void scale4x2to3x3 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY)
 
- Protected Attributes inherited from openmsx::Scaler3< Pixel >
const PixelOperations< PixelpixelOps
 

Detailed Description

template<std::unsigned_integral Pixel>
class openmsx::HQ3xScaler< Pixel >

Runs the hq3x scaler algorithm.

Definition at line 12 of file HQ3xScaler.hh.

Constructor & Destructor Documentation

◆ HQ3xScaler()

template<std::unsigned_integral Pixel>
openmsx::HQ3xScaler< Pixel >::HQ3xScaler ( const PixelOperations< Pixel > &  pixelOps)
explicit

Definition at line 105 of file HQ3xScaler.cc.

Member Function Documentation

◆ scale1x1to3x3()

template<std::unsigned_integral Pixel>
void openmsx::HQ3xScaler< Pixel >::scale1x1to3x3 ( FrameSource src,
unsigned  srcStartY,
unsigned  srcEndY,
unsigned  srcWidth,
ScalerOutput< Pixel > &  dst,
unsigned  dstStartY,
unsigned  dstEndY 
)
overridevirtual

Reimplemented from openmsx::Scaler3< Pixel >.

Definition at line 124 of file HQ3xScaler.cc.

References openmsx::createEdgeHQ().

◆ scale2x1to3x3()

template<std::unsigned_integral Pixel>
void openmsx::HQ3xScaler< Pixel >::scale2x1to3x3 ( FrameSource src,
unsigned  srcStartY,
unsigned  srcEndY,
unsigned  srcWidth,
ScalerOutput< Pixel > &  dst,
unsigned  dstStartY,
unsigned  dstEndY 
)
overridevirtual

Reimplemented from openmsx::Scaler3< Pixel >.

Definition at line 148 of file HQ3xScaler.cc.

References openmsx::createEdgeHQ().

◆ scale2x1to9x3()

template<std::unsigned_integral Pixel>
void openmsx::HQ3xScaler< Pixel >::scale2x1to9x3 ( FrameSource src,
unsigned  srcStartY,
unsigned  srcEndY,
unsigned  srcWidth,
ScalerOutput< Pixel > &  dst,
unsigned  dstStartY,
unsigned  dstEndY 
)
overridevirtual

Reimplemented from openmsx::Scaler3< Pixel >.

Definition at line 112 of file HQ3xScaler.cc.

References openmsx::createEdgeHQ().

◆ scale4x1to3x3()

template<std::unsigned_integral Pixel>
void openmsx::HQ3xScaler< Pixel >::scale4x1to3x3 ( FrameSource src,
unsigned  srcStartY,
unsigned  srcEndY,
unsigned  srcWidth,
ScalerOutput< Pixel > &  dst,
unsigned  dstStartY,
unsigned  dstEndY 
)
overridevirtual

Reimplemented from openmsx::Scaler3< Pixel >.

Definition at line 172 of file HQ3xScaler.cc.

References openmsx::createEdgeHQ().

◆ scale4x1to9x3()

template<std::unsigned_integral Pixel>
void openmsx::HQ3xScaler< Pixel >::scale4x1to9x3 ( FrameSource src,
unsigned  srcStartY,
unsigned  srcEndY,
unsigned  srcWidth,
ScalerOutput< Pixel > &  dst,
unsigned  dstStartY,
unsigned  dstEndY 
)
overridevirtual

Reimplemented from openmsx::Scaler3< Pixel >.

Definition at line 136 of file HQ3xScaler.cc.

References openmsx::createEdgeHQ().

◆ scale8x1to9x3()

template<std::unsigned_integral Pixel>
void openmsx::HQ3xScaler< Pixel >::scale8x1to9x3 ( FrameSource src,
unsigned  srcStartY,
unsigned  srcEndY,
unsigned  srcWidth,
ScalerOutput< Pixel > &  dst,
unsigned  dstStartY,
unsigned  dstEndY 
)
overridevirtual

Reimplemented from openmsx::Scaler3< Pixel >.

Definition at line 160 of file HQ3xScaler.cc.

References openmsx::createEdgeHQ().


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