Blender V2.61 - r43446
Classes | Functions

scaling.c File Reference

#include "BLI_blenlib.h"
#include "BLI_utildefines.h"
#include "MEM_guardedalloc.h"
#include "imbuf.h"
#include "IMB_imbuf_types.h"
#include "IMB_imbuf.h"
#include "IMB_allocimbuf.h"
#include "IMB_filter.h"
#include "BLO_sys_types.h"

Go to the source code of this file.

Classes

struct  scale_outpix_byte
struct  scale_outpix_float
struct  imbufRGBA

Functions

struct ImBufIMB_half_x (struct ImBuf *ibuf1)
struct ImBufIMB_double_fast_x (struct ImBuf *ibuf1)
struct ImBufIMB_double_x (struct ImBuf *ibuf1)
struct ImBufIMB_half_y (struct ImBuf *ibuf1)
struct ImBufIMB_double_fast_y (struct ImBuf *ibuf1)
struct ImBufIMB_double_y (struct ImBuf *ibuf1)
void imb_onehalf_no_alloc (struct ImBuf *ibuf2, struct ImBuf *ibuf1)
struct ImBufIMB_onehalf (struct ImBuf *ibuf1)
static void enlarge_picture_byte (unsigned char *src, unsigned char *dst, int src_width, int src_height, int dst_width, int dst_height)
static void shrink_picture_byte (unsigned char *src, unsigned char *dst, int src_width, int src_height, int dst_width, int dst_height)
static void q_scale_byte (unsigned char *in, unsigned char *out, int in_width, int in_height, int dst_width, int dst_height)
static void enlarge_picture_float (float *src, float *dst, int src_width, int src_height, int dst_width, int dst_height)
static void shrink_picture_float (float *src, float *dst, int src_width, int src_height, int dst_width, int dst_height)
static void q_scale_float (float *in, float *out, int in_width, int in_height, int dst_width, int dst_height)
static int q_scale_linear_interpolation (struct ImBuf *ibuf, int newx, int newy)
static struct ImBufscaledownx (struct ImBuf *ibuf, int newx)
static struct ImBufscaledowny (struct ImBuf *ibuf, int newy)
static struct ImBufscaleupx (struct ImBuf *ibuf, int newx)
static struct ImBufscaleupy (struct ImBuf *ibuf, int newy)
static void scalefast_Z_ImBuf (ImBuf *ibuf, int newx, int newy)
struct ImBufIMB_scaleImBuf (struct ImBuf *ibuf, unsigned int newx, unsigned int newy)
struct ImBufIMB_scalefastImBuf (struct ImBuf *ibuf, unsigned int newx, unsigned int newy)

Detailed Description

Definition in file scaling.c.


Function Documentation

static void enlarge_picture_byte ( unsigned char *  src,
unsigned char *  dst,
int  src_width,
int  src_height,
int  dst_width,
int  dst_height 
) [static]

Definition at line 366 of file scaling.c.

References ImBuf::x.

Referenced by q_scale_byte().

static void enlarge_picture_float ( float *  src,
float *  dst,
int  src_width,
int  src_height,
int  dst_width,
int  dst_height 
) [static]

Definition at line 576 of file scaling.c.

Referenced by q_scale_float().

struct ImBuf* IMB_double_fast_x ( struct ImBuf ibuf1) [read]
Attention:
defined in scaling.c

Definition at line 119 of file scaling.c.

References ImBuf::flags, i, IMB_allocImBuf(), NULL, ImBuf::planes, ImBuf::rect, ImBuf::rect_float, ImBuf::x, and ImBuf::y.

Referenced by double_fast_x(), and IMB_double_x().

struct ImBuf* IMB_double_fast_y ( struct ImBuf ibuf1) [read]
Attention:
defined in scaling.c

Definition at line 244 of file scaling.c.

References ImBuf::flags, IMB_allocImBuf(), NULL, ImBuf::planes, ImBuf::rect, ImBuf::rect_float, ImBuf::x, and ImBuf::y.

Referenced by double_fast_y(), and IMB_double_y().

struct ImBuf* IMB_double_x ( struct ImBuf ibuf1) [read]
Attention:
defined in scaling.c

Definition at line 158 of file scaling.c.

References IMB_double_fast_x(), imb_filterx(), NULL, ImBuf::rect, and ImBuf::rect_float.

Referenced by double_x().

struct ImBuf* IMB_double_y ( struct ImBuf ibuf1) [read]
Attention:
defined in scaling.c

Definition at line 282 of file scaling.c.

References IMB_double_fast_y(), IMB_filtery(), NULL, and ImBuf::rect.

Referenced by double_y().

struct ImBuf* IMB_half_x ( struct ImBuf ibuf1) [read]
Attention:
defined in scaling.c

Definition at line 53 of file scaling.c.

References ImBuf::flags, g, IMB_allocImBuf(), IMB_dupImBuf(), NULL, ImBuf::planes, ImBuf::rect, ImBuf::rect_float, ImBuf::x, and ImBuf::y.

Referenced by half_x(), and IMB_onehalf().

struct ImBuf* IMB_half_y ( struct ImBuf ibuf1) [read]
Attention:
defined in scaling.c

Definition at line 172 of file scaling.c.

References ImBuf::flags, g, IMB_allocImBuf(), IMB_dupImBuf(), NULL, ImBuf::planes, ImBuf::rect, ImBuf::rect_float, ImBuf::x, and ImBuf::y.

Referenced by half_y(), and IMB_onehalf().

struct ImBuf* IMB_onehalf ( struct ImBuf ibuf1) [read]
void imb_onehalf_no_alloc ( struct ImBuf ibuf2,
struct ImBuf ibuf1 
)

Definition at line 296 of file scaling.c.

References imb_addrectImBuf(), NULL, ImBuf::rect, ImBuf::rect_float, ImBuf::x, and ImBuf::y.

Referenced by IMB_onehalf(), and IMB_remakemipmap().

struct ImBuf* IMB_scalefastImBuf ( struct ImBuf ibuf,
unsigned int  newx,
unsigned int  newy 
) [read]
struct ImBuf* IMB_scaleImBuf ( struct ImBuf ibuf,
unsigned int  newx,
unsigned int  newy 
) [read]
static void q_scale_byte ( unsigned char *  in,
unsigned char *  out,
int  in_width,
int  in_height,
int  dst_width,
int  dst_height 
) [static]

Definition at line 564 of file scaling.c.

References enlarge_picture_byte(), and shrink_picture_byte().

Referenced by q_scale_linear_interpolation().

static void q_scale_float ( float *  in,
float *  out,
int  in_width,
int  in_height,
int  dst_width,
int  dst_height 
) [static]

Definition at line 764 of file scaling.c.

References enlarge_picture_float(), and shrink_picture_float().

Referenced by q_scale_linear_interpolation().

static int q_scale_linear_interpolation ( struct ImBuf ibuf,
int  newx,
int  newy 
) [static]
static struct ImBuf* scaledownx ( struct ImBuf ibuf,
int  newx 
) [static, read]
static struct ImBuf* scaledowny ( struct ImBuf ibuf,
int  newy 
) [static, read]
static void scalefast_Z_ImBuf ( ImBuf ibuf,
int  newx,
int  newy 
) [static]
static struct ImBuf* scaleupx ( struct ImBuf ibuf,
int  newx 
) [static, read]
static struct ImBuf* scaleupy ( struct ImBuf ibuf,
int  newy 
) [static, read]
static void shrink_picture_byte ( unsigned char *  src,
unsigned char *  dst,
int  src_width,
int  src_height,
int  dst_width,
int  dst_height 
) [static]
static void shrink_picture_float ( float *  src,
float *  dst,
int  src_width,
int  src_height,
int  dst_width,
int  dst_height 
) [static]