summaryrefslogtreecommitdiff
path: root/src/lib/emile
diff options
context:
space:
mode:
authorJean-Philippe Andre <jp.andre@samsung.com>2016-03-18 18:02:19 +0900
committerJean-Philippe Andre <jp.andre@samsung.com>2016-03-28 16:40:01 +0900
commit0d41ad0c837a2e1655a4d41c28ec7f0ccf10639c (patch)
treeb2b8daf2caf28d3f80b48c4facf826cb6abba2d6 /src/lib/emile
parent83b8b8c958dffc4760d00a01275145b782b32ff2 (diff)
Emile: Move colorspaces to Efl.Gfx
A small hack to the toolchain allows us to generate enums with eolian for use by Eet and Emile (internal or otherwise non-eo libraries). Thanks to how BUILT_SOURCES works, the eo.h files required by Emile will be generated before they are used. This adds a partial dependency on eo for eet and emile: - package dependency - include dependency There is no library link dependency.
Diffstat (limited to 'src/lib/emile')
-rw-r--r--src/lib/emile/Emile.h1
-rw-r--r--src/lib/emile/emile_image.h56
2 files changed, 24 insertions, 33 deletions
diff --git a/src/lib/emile/Emile.h b/src/lib/emile/Emile.h
index 890b5edbcf..03d8e53eb4 100644
--- a/src/lib/emile/Emile.h
+++ b/src/lib/emile/Emile.h
@@ -20,6 +20,7 @@
20#define EMILE_H_ 20#define EMILE_H_
21 21
22#include <Eina.h> 22#include <Eina.h>
23#include <interfaces/efl_gfx_types.eot.h>
23 24
24#ifdef EAPI 25#ifdef EAPI
25# undef EAPI 26# undef EAPI
diff --git a/src/lib/emile/emile_image.h b/src/lib/emile/emile_image.h
index bee101da91..9d6f1af8e0 100644
--- a/src/lib/emile/emile_image.h
+++ b/src/lib/emile/emile_image.h
@@ -9,39 +9,29 @@
9 * @{ 9 * @{
10 */ 10 */
11 11
12/** 12typedef Efl_Gfx_Colorspace Emile_Colorspace;
13 * @typedef Emile_Colorspace 13
14 * 14#define EMILE_COLORSPACE_ARGB8888 EFL_GFX_COLORSPACE_ARGB8888
15 * Flags that describe all colorspace known by EFL. Some routine may not know all of them. 15#define EMILE_COLORSPACE_YCBCR422P601_PL EFL_GFX_COLORSPACE_YCBCR422P601_PL
16 * All the value from below enum should be the same as in Evas_Loader.h 16#define EMILE_COLORSPACE_YCBCR422P709_PL EFL_GFX_COLORSPACE_YCBCR422P709_PL
17 * 17#define EMILE_COLORSPACE_RGB565_A5P EFL_GFX_COLORSPACE_RGB565_A5P
18 * @see Evas_Colorspace 18#define EMILE_COLORSPACE_GRY8 EFL_GFX_COLORSPACE_GRY8
19 * @see Eet_Colorspace 19#define EMILE_COLORSPACE_YCBCR422601_PL EFL_GFX_COLORSPACE_YCBCR422601_PL
20 * 20#define EMILE_COLORSPACE_YCBCR420NV12601_PL EFL_GFX_COLORSPACE_YCBCR420NV12601_PL
21 * @since 1.14 21#define EMILE_COLORSPACE_YCBCR420TM12601_PL EFL_GFX_COLORSPACE_YCBCR420TM12601_PL
22 */ 22#define EMILE_COLORSPACE_AGRY88 EFL_GFX_COLORSPACE_AGRY88
23typedef enum _Emile_Colorspace 23 // ETC1/2 support
24{ 24#define EMILE_COLORSPACE_ETC1 EFL_GFX_COLORSPACE_ETC1
25 EMILE_COLORSPACE_ARGB8888,/**< ARGB 32 bits per pixel, high-byte is Alpha, accessed 1 32bit word at a time */ 25#define EMILE_COLORSPACE_RGB8_ETC2 EFL_GFX_COLORSPACE_RGB8_ETC2
26 EMILE_COLORSPACE_YCBCR422P601_PL, /**< YCbCr 4:2:2 Planar, ITU.BT-601 specifications. The data pointed to is just an array of row pointer, pointing to the Y rows, then the Cb, then Cr rows */ 26#define EMILE_COLORSPACE_RGBA8_ETC2_EAC EFL_GFX_COLORSPACE_RGBA8_ETC2_EAC
27 EMILE_COLORSPACE_YCBCR422P709_PL, /**< YCbCr 4:2:2 Planar, ITU.BT-709 specifications. The data pointed to is just an array of row pointer, pointing to the Y rows, then the Cb, then Cr rows */ 27#define EMILE_COLORSPACE_ETC1_ALPHA EFL_GFX_COLORSPACE_ETC1_ALPHA
28 EMILE_COLORSPACE_RGB565_A5P, /**< 16bit rgb565 + Alpha plane at end - 5 bits of the 8 being used per alpha byte */ 28 // S3TC support
29 EMILE_COLORSPACE_GRY8 = 4, 29#define EMILE_COLORSPACE_RGB_S3TC_DXT1 EFL_GFX_COLORSPACE_RGB_S3TC_DXT1
30 EMILE_COLORSPACE_YCBCR422601_PL, /**< YCbCr 4:2:2, ITU.BT-601 specifications. The data pointed to is just an array of row pointer, pointing to line of Y,Cb,Y,Cr bytes */ 30#define EMILE_COLORSPACE_RGBA_S3TC_DXT1 EFL_GFX_COLORSPACE_RGBA_S3TC_DXT1
31 EMILE_COLORSPACE_YCBCR420NV12601_PL, /**< YCbCr 4:2:0, ITU.BT-601 specification. The data pointed to is just an array of row pointer, pointing to the Y rows, then the Cb,Cr rows. */ 31#define EMILE_COLORSPACE_RGBA_S3TC_DXT2 EFL_GFX_COLORSPACE_RGBA_S3TC_DXT2
32 EMILE_COLORSPACE_YCBCR420TM12601_PL, /**< YCbCr 4:2:0, ITU.BT-601 specification. The data pointed to is just an array of tiled row pointer, pointing to the Y rows, then the Cb,Cr rows. */ 32#define EMILE_COLORSPACE_RGBA_S3TC_DXT3 EFL_GFX_COLORSPACE_RGBA_S3TC_DXT3
33 EMILE_COLORSPACE_AGRY88 = 8, /**< AY 8bits Alpha and 8bits Grey, accessed 1 16bits at a time */ 33#define EMILE_COLORSPACE_RGBA_S3TC_DXT4 EFL_GFX_COLORSPACE_RGBA_S3TC_DXT4
34 EMILE_COLORSPACE_ETC1 = 9, /**< OpenGL ETC1 encoding of RGB texture (4 bit per pixel) @since 1.10 */ 34#define EMILE_COLORSPACE_RGBA_S3TC_DXT5 EFL_GFX_COLORSPACE_RGBA_S3TC_DXT5
35 EMILE_COLORSPACE_RGB8_ETC2 = 10, /**< OpenGL GL_COMPRESSED_RGB8_ETC2 texture compression format (4 bit per pixel) @since 1.10 */
36 EMILE_COLORSPACE_RGBA8_ETC2_EAC = 11, /**< OpenGL GL_COMPRESSED_RGBA8_ETC2_EAC texture compression format, supports alpha (8 bit per pixel) @since 1.10 */
37 EMILE_COLORSPACE_ETC1_ALPHA = 12, /**< ETC1 with alpha support using two planes: ETC1 RGB and ETC1 grey for alpha @since 1.11 */
38 EMILE_COLORSPACE_RGB_S3TC_DXT1 = 13, /**< OpenGL COMPRESSED_RGB_S3TC_DXT1_EXT format with RGB only. @since 1.11 */
39 EMILE_COLORSPACE_RGBA_S3TC_DXT1 = 14, /**< OpenGL COMPRESSED_RGBA_S3TC_DXT1_EXT format with RGBA punchthrough. @since 1.11 */
40 EMILE_COLORSPACE_RGBA_S3TC_DXT2 = 15, /**< DirectDraw DXT2 format with premultiplied RGBA. Not supported by OpenGL itself. @since 1.11 */
41 EMILE_COLORSPACE_RGBA_S3TC_DXT3 = 16, /**< OpenGL COMPRESSED_RGBA_S3TC_DXT3_EXT format with RGBA. @since 1.11 */
42 EMILE_COLORSPACE_RGBA_S3TC_DXT4 = 17, /**< DirectDraw DXT4 format with premultiplied RGBA. Not supported by OpenGL itself. @since 1.11 */
43 EMILE_COLORSPACE_RGBA_S3TC_DXT5 = 18 /**< OpenGL COMPRESSED_RGBA_S3TC_DXT5_EXT format with RGBA. @since 1.11 */
44} Emile_Colorspace;
45 35
46/** 36/**
47 * @typedef Emile_Image_Encoding 37 * @typedef Emile_Image_Encoding