scale.h

Go to the documentation of this file.
00001 
00007 #ifndef INCL_SCALE
00008 #define INCL_SCALE 1
00009 
00010 // Scale 2x using 2xSaI
00011 template <class Source_pixel, class Dest_pixel, class Manip_pixels>
00012 void Scale_2xSaI
00013 (
00014   Source_pixel *source, // ->source pixels.
00015   int srcx, int srcy,   // Start of rectangle within src.
00016   int srcw, int srch,   // Dims. of rectangle.
00017   int sline_pixels,   // Pixels (words)/line for source.
00018   int sheight,      // Source height.
00019   Dest_pixel *dest,   // ->dest pixels.
00020   int dline_pixels,   // Pixels (words)/line for dest.
00021   const Manip_pixels& manip // Manipulator methods.
00022 );
00023 
00024 // Super Eagle Scaler
00025 template <class Source_pixel, class Dest_pixel, class Manip_pixels>
00026 void Scale_SuperEagle
00027 (
00028   Source_pixel *source, // ->source pixels.
00029   int srcx, int srcy,   // Start of rectangle within src.
00030   int srcw, int srch,   // Dims. of rectangle.
00031   int sline_pixels,   // Pixels (words)/line for source.
00032   int sheight,      // Source height.
00033   Dest_pixel *dest,   // ->dest pixels.
00034   int dline_pixels,   // Pixels (words)/line for dest.
00035   const Manip_pixels& manip // Manipulator methods.
00036 );
00037 
00038 // Super 2xSaI Scaler
00039 template <class Source_pixel, class Dest_pixel, class Manip_pixels>
00040 void Scale_Super2xSaI
00041 (
00042   Source_pixel *source, // ->source pixels.
00043   int srcx, int srcy,   // Start of rectangle within src.
00044   int srcw, int srch,   // Dims. of rectangle.
00045   int sline_pixels,   // Pixels (words)/line for source.
00046   int sheight,      // Source height.
00047   Dest_pixel *dest,   // ->dest pixels.
00048   int dline_pixels,   // Pixels (words)/line for dest.
00049   const Manip_pixels& manip // Manipulator methods.
00050 );
00051 
00052 
00053 //Scale X2 with bilinear interpolation.
00054 template <class Source_pixel, class Dest_pixel, class Manip_pixels>
00055 void Scale_2xBilinear
00056 (
00057   Source_pixel *source,   // ->source pixels.
00058   int srcx, int srcy,   // Start of rectangle within src.
00059   int srcw, int srch,   // Dims. of rectangle.
00060   int sline_pixels,   // Pixels (words)/line for source.
00061   int sheight,      // Source height.
00062   Dest_pixel *dest,   // ->dest pixels.
00063   int dline_pixels,   // Pixels (words)/line for dest.
00064   const Manip_pixels& manip // Manipulator methods.
00065 );
00066 
00067 //Scale X2 with bilinear plus interpolation.
00068 template <class Source_pixel, class Dest_pixel, class Manip_pixels>
00069 void Scale_2xBilinearPlus
00070 (
00071   Source_pixel *source,   // ->source pixels.
00072   int srcx, int srcy,   // Start of rectangle within src.
00073   int srcw, int srch,   // Dims. of rectangle.
00074   int sline_pixels,   // Pixels (words)/line for source.
00075   int sheight,      // Source height.
00076   Dest_pixel *dest,   // ->dest pixels.
00077   int dline_pixels,   // Pixels (words)/line for dest.
00078   const Manip_pixels& manip // Manipulator methods.
00079 );
00080 
00081 // Point Sampling Scaler
00082 void Scale_point
00083 (
00084   const unsigned char *source,  // ->source pixels.
00085   const int srcx, const int srcy, // Start of rectangle within src.
00086   const int srcw, const int srch, // Dims. of rectangle.
00087   const int sline_pixels,   // Pixels (words)/line for source.
00088   const int sheight,    // Source height.
00089   unsigned char *dest,    // ->dest pixels.
00090   const int dline_pixels,   // Pixels (words)/line for dest.
00091   const int factor    // Scale factor
00092 );
00093 
00094 // Interlaced Point Sampling Scaler
00095 void Scale_interlace
00096 (
00097   const unsigned char *source,  // ->source pixels.
00098   const int srcx, const int srcy, // Start of rectangle within src.
00099   const int srcw, const int srch, // Dims. of rectangle.
00100   const int sline_pixels,   // Pixels (words)/line for source.
00101   const int sheight,    // Source height.
00102   unsigned char *dest,    // ->dest pixels.
00103   const int dline_pixels,   // Pixels (words)/line for dest.
00104   const int factor    // Scale factor
00105 );
00106 
00107 void Scale2x_noblur
00108 (
00109   const unsigned char *src1,  // ->source pixels.
00110   const int srcx, const int srcy, // Start of rectangle within src.
00111   const int srcw, const int srch, // Dims. of rectangle.
00112   const int sline_pixels,   // Pixels (words)/line for source.
00113   const int sheight,    // Source height.
00114   unsigned char *dest,    // ->dest pixels.
00115   const int dline_pixels    // Pixels (words)/line for dest.
00116 );
00117 
00118 #include "scale.cc"   /* Seems to be needed. */
00119 
00120 #endif
00121 

Generated on Mon Jul 9 14:42:47 2007 for ExultEngine by  doxygen 1.5.1