src/video/SDL_alphamult.h
author Sam Lantinga
Sat, 19 Sep 2009 13:29:40 +0000
changeset 3280 00cace2d9080
parent 3055 cd863dd2082b
child 3697 f7b03b6838cb
permissions -rw-r--r--
Merged a cleaned up version of Jiang's code changes from Google Summer of Code 2009
slouken@3054
     1
/*
slouken@3054
     2
    SDL - Simple DirectMedia Layer
slouken@3054
     3
    Copyright (C) 1997-2009 Sam Lantinga
slouken@3054
     4
slouken@3054
     5
    This library is free software; you can redistribute it and/or
slouken@3054
     6
    modify it under the terms of the GNU Lesser General Public
slouken@3054
     7
    License as published by the Free Software Foundation; either
slouken@3054
     8
    version 2.1 of the License, or (at your option) any later version.
slouken@3054
     9
slouken@3054
    10
    This library is distributed in the hope that it will be useful,
slouken@3054
    11
    but WITHOUT ANY WARRANTY; without even the implied warranty of
slouken@3054
    12
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
slouken@3054
    13
    Lesser General Public License for more details.
slouken@3054
    14
slouken@3054
    15
    You should have received a copy of the GNU Lesser General Public
slouken@3054
    16
    License along with this library; if not, write to the Free Software
slouken@3054
    17
    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
slouken@3054
    18
slouken@3054
    19
    Sam Lantinga
slouken@3054
    20
    slouken@libsdl.org
slouken@3054
    21
*/
slouken@3054
    22
slouken@3054
    23
/* Functions to pre-multiply the alpha channel into the color channels */
slouken@3054
    24
slouken@3054
    25
#define DEFINE_PREMULTIPLY_FUNC(fmt) \
slouken@3054
    26
void \
slouken@3054
    27
SDL_PreMultiplyAlpha##fmt(int w, int h, Uint32 *pixels, int pitch);
slouken@3054
    28
slouken@3055
    29
/* *INDENT-OFF* */
slouken@3054
    30
DEFINE_PREMULTIPLY_FUNC(ARGB8888)
slouken@3054
    31
DEFINE_PREMULTIPLY_FUNC(RGBA8888)
slouken@3054
    32
DEFINE_PREMULTIPLY_FUNC(ABGR8888)
slouken@3054
    33
DEFINE_PREMULTIPLY_FUNC(BGRA8888)
slouken@3055
    34
/* *INDENT-ON* */
slouken@3054
    35
slouken@3054
    36
#undef DEFINE_PREMULTIPLY_FUNC
slouken@3054
    37
slouken@3054
    38
/* vi: set ts=4 sw=4 expandtab: */