Public Member Functions | List of all members
openmsx::Scaler< Pixel > Class Template Referenceabstract

Abstract base class for scalers. More...

#include <Scaler.hh>

Inheritance diagram for openmsx::Scaler< Pixel >:
Inheritance graph

Public Member Functions

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...

Detailed Description

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

Abstract base class for scalers.

A scaler is an algorithm that converts low-res graphics to hi-res graphics.

Definition at line 15 of file Scaler.hh.

Constructor & Destructor Documentation

◆ ~Scaler()

template<std::unsigned_integral Pixel>
virtual openmsx::Scaler< Pixel >::~Scaler ( )

Member Function Documentation

◆ scaleImage()

template<std::unsigned_integral Pixel>
virtual void openmsx::Scaler< Pixel >::scaleImage ( FrameSource src,
const RawFrame superImpose,
unsigned  srcStartY,
unsigned  srcEndY,
unsigned  srcWidth,
ScalerOutput< Pixel > &  dst,
unsigned  dstStartY,
unsigned  dstEndY 
pure virtual

Scales the image in the given area, which must consist of lines which are all equally wide.

Scaling factor depends on the concrete scaler.

srcSource: the frame to be scaled.
superImposeThe to-be-superimposed image (can be nullptr).
srcStartYY-coordinate of the top source line (inclusive).
srcEndYY-coordinate of the bottom source line (exclusive).
srcWidthThe number of pixels per line for the given area.
dstDestination: image to store the scaled output in.
dstStartYY-coordinate of the top destination line (inclusive).
dstEndYY-coordinate of the bottom destination line (exclusive).

Implemented in openmsx::MLAAScaler< Pixel >, openmsx::RGBTriplet3xScaler< Pixel >, openmsx::Scaler1< Pixel >, openmsx::Scaler2< Pixel >, and openmsx::Scaler3< Pixel >.

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