00001 00042 #ifndef _PICSCALERBASE_H 00043 #define _PICSCALERBASE_H 00044 00045 #pragma once 00046 00047 /* 00048 =========================================================================== 00049 Class definition. 00050 =========================================================================== 00051 */ 00052 class PicScalerBase 00053 { 00054 public: 00055 // Construction and destruction. 00056 PicScalerBase(void) {_widthOut = 1; _heightOut = 1; _widthIn = 1; _heightIn = 1; } 00057 PicScalerBase(int widthOut, int heightOut, int widthIn, int heightIn) 00058 { _widthOut = widthOut; _heightOut = heightOut; _widthIn = widthIn; _heightIn = heightIn; } 00059 virtual ~PicScalerBase(void) {} 00060 00061 // Interface. 00062 virtual int Scale(void* pOutImg, void* pInImg) = 0; 00063 00064 // Member interface. 00065 int GetOutWidth(void) { return(_widthOut); } 00066 int GetOutHeight(void) { return(_heightOut); } 00067 int GetInWidth(void) { return(_widthIn); } 00068 int GetInHeight(void) { return(_heightIn); } 00069 00070 void SetOutDimensions(int widthOut, int heightOut) {_widthOut = widthOut; _heightOut = heightOut; } 00071 void SetInDimensions(int widthIn, int heightIn) {_widthIn = widthIn; _heightIn = heightIn; } 00072 00073 // Private methods. 00074 protected: 00075 // Members. 00076 int _widthOut; 00077 int _heightOut; 00078 int _widthIn; 00079 int _heightIn; 00080 00081 };//end PicScalerBase. 00082 00083 #endif // _PICSCALERBASE_H