aboutsummaryrefslogtreecommitdiffstats
path: root/c_src/sdl_pixels.c
blob: 08c9a61c32634a65b3905737664cd4a75277a946 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
// Copyright (c) 2018, Loïc Hoguin <[email protected]>
//
// Permission to use, copy, modify, and/or distribute this software for any
// purpose with or without fee is hereby granted, provided that the above
// copyright notice and this permission notice appear in all copies.
//
// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

#include "esdl2.h"

#define PIXEL_FORMAT_ENUM(E) \
	E(unknown, SDL_PIXELFORMAT_UNKNOWN) \
	E(index1lsb, SDL_PIXELFORMAT_INDEX1LSB) \
	E(index1msb, SDL_PIXELFORMAT_INDEX1MSB) \
	E(index4lsb, SDL_PIXELFORMAT_INDEX4LSB) \
	E(index4msb, SDL_PIXELFORMAT_INDEX4MSB) \
	E(index8, SDL_PIXELFORMAT_INDEX8) \
	E(rgb332, SDL_PIXELFORMAT_RGB332) \
	E(rgb444, SDL_PIXELFORMAT_RGB444) \
	E(rgb555, SDL_PIXELFORMAT_RGB555) \
	E(bgr555, SDL_PIXELFORMAT_BGR555) \
	E(argb4444, SDL_PIXELFORMAT_ARGB4444) \
	E(rgba4444, SDL_PIXELFORMAT_RGBA4444) \
	E(abgr4444, SDL_PIXELFORMAT_ABGR4444) \
	E(bgra4444, SDL_PIXELFORMAT_BGRA4444) \
	E(argb1555, SDL_PIXELFORMAT_ARGB1555) \
	E(rgba5551, SDL_PIXELFORMAT_RGBA5551) \
	E(abgr1555, SDL_PIXELFORMAT_ABGR1555) \
	E(bgra5551, SDL_PIXELFORMAT_BGRA5551) \
	E(rgb565, SDL_PIXELFORMAT_RGB565) \
	E(bgr565, SDL_PIXELFORMAT_BGR565) \
	E(rgb24, SDL_PIXELFORMAT_RGB24) \
	E(bgr24, SDL_PIXELFORMAT_BGR24) \
	E(rgb888, SDL_PIXELFORMAT_RGB888) \
	E(rgbx8888, SDL_PIXELFORMAT_RGBX8888) \
	E(bgr888, SDL_PIXELFORMAT_BGR888) \
	E(bgrx8888, SDL_PIXELFORMAT_BGRX8888) \
	E(argb8888, SDL_PIXELFORMAT_ARGB8888) \
	E(rgba8888, SDL_PIXELFORMAT_RGBA8888) \
	E(abgr8888, SDL_PIXELFORMAT_ABGR8888) \
	E(bgra8888, SDL_PIXELFORMAT_BGRA8888) \
	E(argb2101010, SDL_PIXELFORMAT_ARGB2101010) \
	E(rgba32, SDL_PIXELFORMAT_RGBA32) \
	E(argb32, SDL_PIXELFORMAT_ARGB32) \
	E(bgra32, SDL_PIXELFORMAT_BGRA32) \
	E(abgr32, SDL_PIXELFORMAT_ABGR32) \
	E(yv12, SDL_PIXELFORMAT_YV12) \
	E(iyuv, SDL_PIXELFORMAT_IYUV) \
	E(yuy2, SDL_PIXELFORMAT_YUY2) \
	E(uyvy, SDL_PIXELFORMAT_UYVY) \
	E(yvyu, SDL_PIXELFORMAT_YVYU) \
	E(nv12, SDL_PIXELFORMAT_NV12) \
	E(nv21, SDL_PIXELFORMAT_NV21)

NIF_ENUM_TO_ATOM_FUNCTION(pixel_format_to_atom, Uint32, PIXEL_FORMAT_ENUM)