karbon

art_rgba_affine.h
1/* Libart_LGPL - library of basic graphic primitives
2 * Copyright (C) 1998 Raph Levien
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Library General Public
6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Library General Public License for more details.
13 *
14 * You should have received a copy of the GNU Library General Public
15 * License along with this library; if not, write to the
16 * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17 * Boston, MA 02110-1301, USA.
18 */
19
20#ifndef __ART_RGB_AFFINE_H__
21#define __ART_RGB_AFFINE_H__
22
23/* This module handles compositing of affine-transformed rgb images
24 over rgb pixel buffers. */
25
26#ifdef LIBART_COMPILATION
27#include "art_filterlevel.h"
28#include "art_alphagamma.h"
29#else
30#include <libart_lgpl/art_filterlevel.h>
31#include <libart_lgpl/art_alphagamma.h>
32#endif
33
34#ifdef __cplusplus
35extern "C" {
36#endif
37
38void
39art_rgba_affine (art_u8 *dst, int x0, int y0, int x1, int y1, int dst_rowstride,
40 const art_u8 *src,
41 int src_width, int src_height, int src_rowstride,
42 const double affine[6],
43 ArtFilterLevel level,
44 ArtAlphaGamma *alphagamma);
45
46#ifdef __cplusplus
47}
48#endif
49
50#endif