📄 pixops-internal.h
字号:
/* Copyright (C) 2000 Red Hat, Inc. * Portions copyright (C) 2004 VMware, Inc. * This file is part of the Pixops Library. * * The pixops library is free software; you can redistribute it and/or modify * it under the terms of the GNU Library General Public License as published * by the Free Software Foundation; either version 2 of the License, or (at * your option) any later version. * * The pixops library is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public * License for more details. * * You should have received a copy of the GNU Library General Public License * along with this library; if not, write to the Free Software Foundation, * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *//* * pixops-internal.h -- * * Defines local types, prototypes for scaling functions and some * convent macros. */#ifndef _PIXOPS_INTERNAL_H_#define _PIXOPS_INTERNAL_H_#ifndef TRUE#define TRUE 1#endif#ifndef FALSE#define FALSE 0#endiftypedef int boolean;typedef unsigned int uint32;typedef unsigned short uint16;typedef unsigned char uint8;typedef int int32;typedef short int16;typedef char int8;#define MIN(_a, _b) ((_a) < (_b) ? (_a) : (_b))#define MAX(_a, _b) ((_a) > (_b) ? (_a) : (_b))#define return_val_if_fail(_cond, _val) \ do { if (!(_cond)) return _val; } while (FALSE);#define return_if_fail(_cond) \ do { if (!(_cond)) return; } while (FALSE);#define mnew(struct_type, n_structs) \ ((struct_type *) malloc (((size_t) sizeof (struct_type)) * ((size_t) (n_structs))))typedef struct _PixopsFilter PixopsFilter;struct _PixopsFilter{ int *weights; int n_x; int n_y; double x_offset; double y_offset;};typedef uint8 *(*PixopsLineFunc) (int *weights, int n_x, int n_y, uint8 *dest, int dest_x, uint8 *dest_end, int dest_bytes_per_pixel, int dest_depth, int dest_has_alpha, uint8 **src, int src_bytes_per_pixel, int src_depth, uint32 *src_colormap, boolean src_has_alpha, int x_init, int x_step, int src_width, int check_size, uint32 color1, uint32 color2);typedef void (*PixopsPixelFunc) (uint8 *dest, int dest_x, int dest_bytes_per_pixel, int dest_depth, int dest_has_alpha, int src_has_alpha, int check_size, uint32 color1, uint32 color2, unsigned int r, unsigned int g, unsigned int b, unsigned int a);#ifdef USE_MMXuint8 *pixops_scale_line_22_33_mmx (uint32 weights[16][8], uint8 *p, uint8 *q1, uint8 *q2, int x_step, uint8 *p_stop, int x_init);uint8 *pixops_composite_line_22_4a4_mmx (uint32 weights[16][8], uint8 *p, uint8 *q1, uint8 *q2, int x_step, uint8 *p_stop, int x_init);uint8 *pixops_composite_line_color_22_4a4_mmx (uint32 weights[16][8], uint8 *p, uint8 *q1, uint8 *q2, int x_step, uint8 *p_stop, int x_init, int dest_x, int check_shift, int *colors);boolean pixops_have_mmx (void);#endif#endif // _PIXOPS_INTERNAL_H_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -