ResidualVM logo ResidualVM website - Forums - Contact us BuildBot - Doxygen - Wiki curved edge

intern.h File Reference

#include "common/scummsys.h"
#include "graphics/colormasks.h"
Include dependency graph for intern.h:

Go to the source code of this file.

Functions

template<typename ColorMask >
static uint32 interpolate32_1_1 (uint32 p1, uint32 p2)
 Interpolate two 16 bit pixel *pairs* at once with equal weights 1.
template<typename ColorMask >
static uint32 interpolate32_3_1 (uint32 p1, uint32 p2)
 Interpolate two 16 bit pixel *pairs* at once with weights 3 resp.
template<typename ColorMask >
static unsigned interpolate16_1_1 (unsigned p1, unsigned p2)
 Interpolate two 16 bit pixels with weights 1 and 1, i.e., (p1+p2)/2.
template<typename ColorMask >
static unsigned interpolate16_3_1 (unsigned p1, unsigned p2)
 Interpolate two 16 bit pixels with weights 3 and 1, i.e., (3*p1+p2)/4.
template<typename ColorMask >
static unsigned interpolate16_5_3 (unsigned p1, unsigned p2)
 Interpolate two 16 bit pixels with weights 5 and 3 and 1, i.e., (5*p1+3*p2)/8.
template<typename ColorMask >
static unsigned interpolate16_7_1 (unsigned p1, unsigned p2)
 Interpolate two 16 bit pixels with weights 7 and 1, i.e., (7*p1+p2)/8.
template<typename ColorMask >
static unsigned interpolate16_2_1_1 (unsigned p1, unsigned p2, unsigned p3)
 Interpolate three 16 bit pixels with weights 2, 1, and 1, i.e., (2*p1+p2+p3)/4.
template<typename ColorMask >
static unsigned interpolate16_5_2_1 (unsigned p1, unsigned p2, unsigned p3)
 Interpolate three 16 bit pixels with weights 5, 2, and 1, i.e., (5*p1+2*p2+p3)/8.
template<typename ColorMask >
static unsigned interpolate16_6_1_1 (unsigned p1, unsigned p2, unsigned p3)
 Interpolate three 16 bit pixels with weights 6, 1, and 1, i.e., (6*p1+p2+p3)/8.
template<typename ColorMask >
static unsigned interpolate16_2_3_3 (unsigned p1, unsigned p2, unsigned p3)
 Interpolate three 16 bit pixels with weights 2, 3, and 3, i.e., (2*p1+3*(p2+p3))/8.
template<typename ColorMask >
static unsigned interpolate16_2_7_7 (unsigned p1, unsigned p2, unsigned p3)
 Interpolate three 16 bit pixels with weights 2, 7, and 7, i.e., (2*p1+7*(p2+p3))/16.
template<typename ColorMask >
static unsigned interpolate16_14_1_1 (unsigned p1, unsigned p2, unsigned p3)
 Interpolate three 16 bit pixels with weights 14, 1, and 1, i.e., (14*p1+p2+p3)/16.
template<typename ColorMask >
static unsigned interpolate16_1_1_1_1 (unsigned p1, unsigned p2, unsigned p3, unsigned p4)
 Interpolate four 16 bit pixels with weights 1, 1, 1, and 1, i.e., (p1+p2+p3+p4)/4.
static bool diffYUV (int yuv1, int yuv2)
 Compare two YUV values (encoded 8-8-8) and check if they differ by more than a certain hard coded threshold.

Function Documentation

static bool diffYUV ( int  yuv1,
int  yuv2 
) [inline, static]

Compare two YUV values (encoded 8-8-8) and check if they differ by more than a certain hard coded threshold.

Used by the hq scaler family.

Definition at line 186 of file intern.h.

template<typename ColorMask >
static unsigned interpolate16_14_1_1 ( unsigned  p1,
unsigned  p2,
unsigned  p3 
) [inline, static]

Interpolate three 16 bit pixels with weights 14, 1, and 1, i.e., (14*p1+p2+p3)/16.

Definition at line 161 of file intern.h.

template<typename ColorMask >
static unsigned interpolate16_1_1 ( unsigned  p1,
unsigned  p2 
) [inline, static]

Interpolate two 16 bit pixels with weights 1 and 1, i.e., (p1+p2)/2.

See <http://www.slack.net/~ant/info/rgb_mixing.html> for details on how this works.

Definition at line 61 of file intern.h.

template<typename ColorMask >
static unsigned interpolate16_1_1_1_1 ( unsigned  p1,
unsigned  p2,
unsigned  p3,
unsigned  p4 
) [inline, static]

Interpolate four 16 bit pixels with weights 1, 1, 1, and 1, i.e., (p1+p2+p3+p4)/4.

Definition at line 174 of file intern.h.

template<typename ColorMask >
static unsigned interpolate16_2_1_1 ( unsigned  p1,
unsigned  p2,
unsigned  p3 
) [inline, static]

Interpolate three 16 bit pixels with weights 2, 1, and 1, i.e., (2*p1+p2+p3)/4.

Definition at line 100 of file intern.h.

template<typename ColorMask >
static unsigned interpolate16_2_3_3 ( unsigned  p1,
unsigned  p2,
unsigned  p3 
) [inline, static]

Interpolate three 16 bit pixels with weights 2, 3, and 3, i.e., (2*p1+3*(p2+p3))/8.

Definition at line 135 of file intern.h.

template<typename ColorMask >
static unsigned interpolate16_2_7_7 ( unsigned  p1,
unsigned  p2,
unsigned  p3 
) [inline, static]

Interpolate three 16 bit pixels with weights 2, 7, and 7, i.e., (2*p1+7*(p2+p3))/16.

Definition at line 148 of file intern.h.

template<typename ColorMask >
static unsigned interpolate16_3_1 ( unsigned  p1,
unsigned  p2 
) [inline, static]

Interpolate two 16 bit pixels with weights 3 and 1, i.e., (3*p1+p2)/4.

Definition at line 70 of file intern.h.

template<typename ColorMask >
static unsigned interpolate16_5_2_1 ( unsigned  p1,
unsigned  p2,
unsigned  p3 
) [inline, static]

Interpolate three 16 bit pixels with weights 5, 2, and 1, i.e., (5*p1+2*p2+p3)/8.

Definition at line 112 of file intern.h.

template<typename ColorMask >
static unsigned interpolate16_5_3 ( unsigned  p1,
unsigned  p2 
) [inline, static]

Interpolate two 16 bit pixels with weights 5 and 3 and 1, i.e., (5*p1+3*p2)/8.

Definition at line 80 of file intern.h.

template<typename ColorMask >
static unsigned interpolate16_6_1_1 ( unsigned  p1,
unsigned  p2,
unsigned  p3 
) [inline, static]

Interpolate three 16 bit pixels with weights 6, 1, and 1, i.e., (6*p1+p2+p3)/8.

Definition at line 124 of file intern.h.

template<typename ColorMask >
static unsigned interpolate16_7_1 ( unsigned  p1,
unsigned  p2 
) [inline, static]

Interpolate two 16 bit pixels with weights 7 and 1, i.e., (7*p1+p2)/8.

Definition at line 90 of file intern.h.

template<typename ColorMask >
static uint32 interpolate32_1_1 ( uint32  p1,
uint32  p2 
) [inline, static]

Interpolate two 16 bit pixel *pairs* at once with equal weights 1.

In particular, p1 and p2 can contain two pixels each in the upper and lower halves.

Definition at line 36 of file intern.h.

template<typename ColorMask >
static uint32 interpolate32_3_1 ( uint32  p1,
uint32  p2 
) [inline, static]

Interpolate two 16 bit pixel *pairs* at once with weights 3 resp.

1. In particular, p1 and p2 can contain two pixels/each in the upper and lower halves.

Definition at line 48 of file intern.h.



Generated on Sat Mar 16 2019 05:03:00 for ResidualVM by doxygen 1.7.1
curved edge   curved edge