openMSX
|
2xSaI algorithm: edge-detection which produces a rounded look. More...
#include <SaI2xScaler.hh>
Public Member Functions | |
SaI2xScaler (const PixelOperations< Pixel > &pixelOps) | |
void | scaleBlank1to2 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) override |
void | scale1x1to2x2 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) override |
void | scale1x1to1x2 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) override |
Public Member Functions inherited from openmsx::Scaler2< 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::Scaler2< Pixel > | |
Scaler2 (const PixelOperations< Pixel > &pixelOps) | |
void | dispatchScale (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) |
virtual void | scaleBlank1to2 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) |
virtual void | scaleBlank1to1 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) |
virtual void | scale1x1to3x2 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) |
virtual void | scale1x1to3x1 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) |
virtual void | scale1x1to2x2 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) |
virtual void | scale1x1to2x1 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) |
virtual void | scale2x1to3x2 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) |
virtual void | scale2x1to3x1 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) |
virtual void | scale1x1to1x2 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) |
virtual void | scale1x1to1x1 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) |
virtual void | scale4x1to3x2 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) |
virtual void | scale4x1to3x1 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) |
virtual void | scale2x1to1x2 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) |
virtual void | scale2x1to1x1 (FrameSource &src, unsigned srcStartY, unsigned srcEndY, unsigned srcWidth, ScalerOutput< Pixel > &dst, unsigned dstStartY, unsigned dstEndY) |
Protected Attributes inherited from openmsx::Scaler2< Pixel > | |
const PixelOperations< Pixel > | pixelOps |
2xSaI algorithm: edge-detection which produces a rounded look.
Algorithm was developed by Derek Liauw Kie Fa.
Definition at line 14 of file SaI2xScaler.hh.
|
explicit |
Definition at line 20 of file SaI2xScaler.cc.
|
overridevirtual |
Reimplemented from openmsx::Scaler2< Pixel >.
Definition at line 293 of file SaI2xScaler.cc.
References openmsx::ScalerOutput< Pixel >::acquireLine(), openmsx::FrameSource::getLine(), openmsx::ScalerOutput< Pixel >::getWidth(), openmsx::ScalerOutput< Pixel >::releaseLine(), std::swap(), and VLA_SSE_ALIGNED.
|
overridevirtual |
Reimplemented from openmsx::Scaler2< Pixel >.
Definition at line 259 of file SaI2xScaler.cc.
References openmsx::ScalerOutput< Pixel >::acquireLine(), openmsx::FrameSource::getLine(), openmsx::ScalerOutput< Pixel >::getWidth(), openmsx::ScalerOutput< Pixel >::releaseLine(), std::swap(), and VLA_SSE_ALIGNED.
|
overridevirtual |
Reimplemented from openmsx::Scaler2< Pixel >.
Definition at line 27 of file SaI2xScaler.cc.
References openmsx::ScalerOutput< Pixel >::fillLine(), openmsx::ScalerOutput< Pixel >::getHeight(), openmsx::FrameSource::getLineColor(), and openmsx::FrameSource::getLineWidth().