#include <Scaler.h>
Inheritance diagram for Pentagram::Scaler:
Public Member Functions | |
virtual const uint32 | ScaleBits () const =0 |
virtual const bool | ScaleArbitrary () const =0 |
virtual const char * | ScalerName () const =0 |
virtual const char * | ScalerDesc () const =0 |
virtual const char * | ScalerCopyright () const =0 |
bool | Scale (Texture *texture, sint32 sx, sint32 sy, sint32 sw, sint32 sh, uint8 *pixel, sint32 dw, sint32 dh, sint32 pitch, bool clamp_src) const |
virtual | ~Scaler () |
Protected Types | |
typedef bool(*) | ScalerFunc (Texture *tex, sint32 sx, sint32 sy, sint32 sw, sint32 sh, uint8 *pixel, sint32 dw, sint32 dh, sint32 pitch, bool clamp_src) |
Protected Member Functions | |
Scaler () | |
Protected Attributes | |
ScalerFunc | Scale16Nat |
ScalerFunc | Scale16Sta |
ScalerFunc | Scale32Nat |
ScalerFunc | Scale32Sta |
ScalerFunc | Scale32_A888 |
ScalerFunc | Scale32_888A |
Definition at line 29 of file Scaler.h.
Pentagram::Scaler::Scaler | ( | ) | [inline, protected] |
Definition at line 47 of file Scaler.h.
References ScalerManager::AddScaler(), and ScalerManager::get_instance().
bool Pentagram::Scaler::Scale | ( | Texture * | texture, | |
sint32 | sx, | |||
sint32 | sy, | |||
sint32 | sw, | |||
sint32 | sh, | |||
uint8 * | pixel, | |||
sint32 | dw, | |||
sint32 | dh, | |||
sint32 | pitch, | |||
bool | clamp_src | |||
) | const [inline] |
Definition at line 65 of file Scaler.h.
References Texture::format, RenderSurface::format, Scale16Nat, Scale16Sta, Scale32_888A, Scale32_A888, Scale32Nat, Scale32Sta, ScaleArbitrary(), ScaleBits(), TEX_FMT_NATIVE, and TEX_FMT_STANDARD.
Referenced by SoftRenderSurface< uintX >::ScalerBlit().
virtual const bool Pentagram::Scaler::ScaleArbitrary | ( | ) | const [pure virtual] |
Implemented in Pentagram::_2xSaIScaler, Pentagram::Super2xSaIScaler, Pentagram::SuperEagleScaler, Pentagram::GC_2xSaIScaler, Pentagram::GC_Super2xSaIScaler, Pentagram::GC_SuperEagleScaler, Pentagram::BilinearScaler, Pentagram::GC_BilinearScaler, Pentagram::hq2xScaler, Pentagram::PointScaler, and Pentagram::Scale2xScaler.
Referenced by ScalerGump::DoScalerBlit(), and Scale().
virtual const uint32 Pentagram::Scaler::ScaleBits | ( | ) | const [pure virtual] |
Implemented in Pentagram::_2xSaIScaler, Pentagram::Super2xSaIScaler, Pentagram::SuperEagleScaler, Pentagram::GC_2xSaIScaler, Pentagram::GC_Super2xSaIScaler, Pentagram::GC_SuperEagleScaler, Pentagram::BilinearScaler, Pentagram::GC_BilinearScaler, Pentagram::hq2xScaler, Pentagram::PointScaler, and Pentagram::Scale2xScaler.
Referenced by Scale().
virtual const char* Pentagram::Scaler::ScalerCopyright | ( | ) | const [pure virtual] |
Implemented in Pentagram::_2xSaIScaler, Pentagram::Super2xSaIScaler, Pentagram::SuperEagleScaler, Pentagram::GC_2xSaIScaler, Pentagram::GC_Super2xSaIScaler, Pentagram::GC_SuperEagleScaler, Pentagram::BilinearScaler, Pentagram::GC_BilinearScaler, Pentagram::hq2xScaler, Pentagram::PointScaler, and Pentagram::Scale2xScaler.
Referenced by ScalerGump::SetupScalers().
virtual const char* Pentagram::Scaler::ScalerDesc | ( | ) | const [pure virtual] |
Implemented in Pentagram::_2xSaIScaler, Pentagram::Super2xSaIScaler, Pentagram::SuperEagleScaler, Pentagram::GC_2xSaIScaler, Pentagram::GC_Super2xSaIScaler, Pentagram::GC_SuperEagleScaler, Pentagram::BilinearScaler, Pentagram::GC_BilinearScaler, Pentagram::hq2xScaler, Pentagram::PointScaler, and Pentagram::Scale2xScaler.
Referenced by ScalerGump::SetupScalers().
virtual const char* Pentagram::Scaler::ScalerName | ( | ) | const [pure virtual] |
Implemented in Pentagram::_2xSaIScaler, Pentagram::Super2xSaIScaler, Pentagram::SuperEagleScaler, Pentagram::GC_2xSaIScaler, Pentagram::GC_Super2xSaIScaler, Pentagram::GC_SuperEagleScaler, Pentagram::BilinearScaler, Pentagram::GC_BilinearScaler, Pentagram::hq2xScaler, Pentagram::PointScaler, and Pentagram::Scale2xScaler.
ScalerFunc Pentagram::Scaler::Scale16Nat [protected] |
Definition at line 39 of file Scaler.h.
Referenced by Pentagram::_2xSaIScaler::_2xSaIScaler(), Pentagram::BilinearScaler::BilinearScaler(), Pentagram::GC_2xSaIScaler::GC_2xSaIScaler(), Pentagram::GC_BilinearScaler::GC_BilinearScaler(), Pentagram::GC_Super2xSaIScaler::GC_Super2xSaIScaler(), Pentagram::GC_SuperEagleScaler::GC_SuperEagleScaler(), Pentagram::hq2xScaler::hq2xScaler(), Pentagram::PointScaler::PointScaler(), Scale(), Pentagram::Scale2xScaler::Scale2xScaler(), Pentagram::Super2xSaIScaler::Super2xSaIScaler(), and Pentagram::SuperEagleScaler::SuperEagleScaler().
ScalerFunc Pentagram::Scaler::Scale16Sta [protected] |
Definition at line 40 of file Scaler.h.
Referenced by Pentagram::_2xSaIScaler::_2xSaIScaler(), Pentagram::BilinearScaler::BilinearScaler(), Pentagram::GC_2xSaIScaler::GC_2xSaIScaler(), Pentagram::GC_BilinearScaler::GC_BilinearScaler(), Pentagram::GC_Super2xSaIScaler::GC_Super2xSaIScaler(), Pentagram::GC_SuperEagleScaler::GC_SuperEagleScaler(), Pentagram::hq2xScaler::hq2xScaler(), Pentagram::PointScaler::PointScaler(), Scale(), Pentagram::Scale2xScaler::Scale2xScaler(), Pentagram::Super2xSaIScaler::Super2xSaIScaler(), and Pentagram::SuperEagleScaler::SuperEagleScaler().
ScalerFunc Pentagram::Scaler::Scale32_888A [protected] |
Definition at line 45 of file Scaler.h.
Referenced by Pentagram::_2xSaIScaler::_2xSaIScaler(), Pentagram::BilinearScaler::BilinearScaler(), Pentagram::GC_2xSaIScaler::GC_2xSaIScaler(), Pentagram::GC_BilinearScaler::GC_BilinearScaler(), Pentagram::GC_Super2xSaIScaler::GC_Super2xSaIScaler(), Pentagram::GC_SuperEagleScaler::GC_SuperEagleScaler(), Pentagram::hq2xScaler::hq2xScaler(), Pentagram::PointScaler::PointScaler(), Scale(), Pentagram::Scale2xScaler::Scale2xScaler(), Pentagram::Super2xSaIScaler::Super2xSaIScaler(), and Pentagram::SuperEagleScaler::SuperEagleScaler().
ScalerFunc Pentagram::Scaler::Scale32_A888 [protected] |
Definition at line 44 of file Scaler.h.
Referenced by Pentagram::_2xSaIScaler::_2xSaIScaler(), Pentagram::BilinearScaler::BilinearScaler(), Pentagram::GC_2xSaIScaler::GC_2xSaIScaler(), Pentagram::GC_BilinearScaler::GC_BilinearScaler(), Pentagram::GC_Super2xSaIScaler::GC_Super2xSaIScaler(), Pentagram::GC_SuperEagleScaler::GC_SuperEagleScaler(), Pentagram::hq2xScaler::hq2xScaler(), Pentagram::PointScaler::PointScaler(), Scale(), Pentagram::Scale2xScaler::Scale2xScaler(), Pentagram::Super2xSaIScaler::Super2xSaIScaler(), and Pentagram::SuperEagleScaler::SuperEagleScaler().
ScalerFunc Pentagram::Scaler::Scale32Nat [protected] |
Definition at line 42 of file Scaler.h.
Referenced by Pentagram::_2xSaIScaler::_2xSaIScaler(), Pentagram::BilinearScaler::BilinearScaler(), Pentagram::GC_2xSaIScaler::GC_2xSaIScaler(), Pentagram::GC_BilinearScaler::GC_BilinearScaler(), Pentagram::GC_Super2xSaIScaler::GC_Super2xSaIScaler(), Pentagram::GC_SuperEagleScaler::GC_SuperEagleScaler(), Pentagram::hq2xScaler::hq2xScaler(), Pentagram::PointScaler::PointScaler(), Scale(), Pentagram::Scale2xScaler::Scale2xScaler(), Pentagram::Super2xSaIScaler::Super2xSaIScaler(), and Pentagram::SuperEagleScaler::SuperEagleScaler().
ScalerFunc Pentagram::Scaler::Scale32Sta [protected] |
Definition at line 43 of file Scaler.h.
Referenced by Pentagram::_2xSaIScaler::_2xSaIScaler(), Pentagram::BilinearScaler::BilinearScaler(), Pentagram::GC_2xSaIScaler::GC_2xSaIScaler(), Pentagram::GC_BilinearScaler::GC_BilinearScaler(), Pentagram::GC_Super2xSaIScaler::GC_Super2xSaIScaler(), Pentagram::GC_SuperEagleScaler::GC_SuperEagleScaler(), Pentagram::hq2xScaler::hq2xScaler(), Pentagram::PointScaler::PointScaler(), Scale(), Pentagram::Scale2xScaler::Scale2xScaler(), Pentagram::Super2xSaIScaler::Super2xSaIScaler(), and Pentagram::SuperEagleScaler::SuperEagleScaler().