Updating documentation and NEWS for EvasGL Multisample Surface
authorsung <sung@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Thu, 17 May 2012 06:54:06 +0000 (06:54 +0000)
committersung <sung@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Thu, 17 May 2012 06:54:06 +0000 (06:54 +0000)
bits along with general doc update.

git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/evas@71191 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

NEWS
src/lib/Evas_GL.h

diff --git a/NEWS b/NEWS
index 498392e..c2f50ea 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -38,6 +38,7 @@ Additions:
    * EVAS_GL_OPTIONS_DIRECT.
    * evas_object_textblock_style_user_pop/push.
    * evas_object_ref_get
+   * Evas_GL_Multisample_Bits MSAA surface config option for supported devices.
 
 Fixes:
 
index f90f227..4177424 100644 (file)
@@ -8,65 +8,6 @@
 extern "C" {
 #endif
 
-typedef struct _Evas_GL               Evas_GL;
-typedef struct _Evas_GL_Surface       Evas_GL_Surface;
-typedef struct _Evas_GL_Context       Evas_GL_Context;
-typedef struct _Evas_GL_Config        Evas_GL_Config;
-typedef struct _Evas_GL_API           Evas_GL_API;
-typedef void                         *Evas_GL_Func;
-typedef void                         *EvasGLImage;
-
-typedef enum _Evas_GL_Color_Format
-{
-    EVAS_GL_RGB_888   = 0,
-    EVAS_GL_RGBA_8888 = 1
-} Evas_GL_Color_Format;
-
-typedef enum _Evas_GL_Depth_Bits
-{
-    EVAS_GL_DEPTH_NONE   = 0,
-    EVAS_GL_DEPTH_BIT_8  = 1,
-    EVAS_GL_DEPTH_BIT_16 = 2,
-    EVAS_GL_DEPTH_BIT_24 = 3,
-    EVAS_GL_DEPTH_BIT_32 = 4
-} Evas_GL_Depth_Bits;
-
-typedef enum _Evas_GL_Stencil_Bits
-{
-    EVAS_GL_STENCIL_NONE   = 0,
-    EVAS_GL_STENCIL_BIT_1  = 1,
-    EVAS_GL_STENCIL_BIT_2  = 2,
-    EVAS_GL_STENCIL_BIT_4  = 3,
-    EVAS_GL_STENCIL_BIT_8  = 4,
-    EVAS_GL_STENCIL_BIT_16 = 5
-} Evas_GL_Stencil_Bits;
-
-typedef enum _Evas_GL_Options_Bits
-{
-   EVAS_GL_OPTIONS_NONE    = 0,
-   EVAS_GL_OPTIONS_DIRECT  = (1<<0)
-} Evas_GL_Options_Bits;
-
-typedef enum _Evas_GL_Multisample_Bits
-{
-   EVAS_GL_MULTISAMPLE_NONE = 0,
-   EVAS_GL_MULTISAMPLE_LOW  = 1,
-   EVAS_GL_MULTISAMPLE_MED  = 2,
-   EVAS_GL_MULTISAMPLE_HIGH = 3 
-} Evas_GL_Multisample_Bits;
-
-struct _Evas_GL_Config
-{
-   Evas_GL_Color_Format       color_format;
-   Evas_GL_Depth_Bits         depth_bits;
-   Evas_GL_Stencil_Bits       stencil_bits;
-   Evas_GL_Options_Bits       options_bits;
-   Evas_GL_Multisample_Bits   multisample_bits;
-};
-
-#define EVAS_GL_EXTENSIONS       1
-
-
 /**
  * @defgroup Evas_GL Rendering GL on Evas
  *
@@ -393,6 +334,131 @@ init_shaders(GLData *gld)
  */
 
 /**
+  * @typedef Evas_GL
+  *
+  * Evas GL Object for rendering gl in Evas.
+  */ 
+typedef struct _Evas_GL               Evas_GL;
+
+/**
+  * @typedef Evas_GL_Surface
+  *
+  * Evas GL Surface object, a GL rendering target in Evas GL.
+  */ 
+typedef struct _Evas_GL_Surface       Evas_GL_Surface;
+
+/**
+  * @typedef Evas_GL_Context
+  *
+  * Evas GL Context object, a GL rendering context in Evas GL.
+  */ 
+typedef struct _Evas_GL_Context       Evas_GL_Context;
+
+/**
+  * @typedef Evas_GL_Config
+  *
+  * Evas GL Surface configuration object for surface creation.
+  */ 
+typedef struct _Evas_GL_Config        Evas_GL_Config;
+
+/**
+  * @typedef Evas_GL_API
+  *
+  * Evas GL API object that contains the GL APIs to be used in Evas GL.
+  */ 
+typedef struct _Evas_GL_API           Evas_GL_API;
+
+/**
+  * @typedef Evas_GL_Func
+  *
+  * Evas GL Function Object used as a function pointer.
+  */ 
+typedef void                         *Evas_GL_Func;
+
+/**
+  * @typedef EvasGLImage
+  *
+  * Evas GL Image Object used in Evas GL Image extension.
+  */ 
+typedef void                         *EvasGLImage;
+
+/**
+ * Surface Color Format
+ */
+typedef enum _Evas_GL_Color_Format
+{
+    EVAS_GL_RGB_888   = 0,
+    EVAS_GL_RGBA_8888 = 1
+} Evas_GL_Color_Format;
+
+/**
+ * Surface Depth Format
+ */
+typedef enum _Evas_GL_Depth_Bits
+{
+    EVAS_GL_DEPTH_NONE   = 0,
+    EVAS_GL_DEPTH_BIT_8  = 1,
+    EVAS_GL_DEPTH_BIT_16 = 2,
+    EVAS_GL_DEPTH_BIT_24 = 3,
+    EVAS_GL_DEPTH_BIT_32 = 4
+} Evas_GL_Depth_Bits;
+
+/**
+ * Surface Stencil Format
+ */
+typedef enum _Evas_GL_Stencil_Bits
+{
+    EVAS_GL_STENCIL_NONE   = 0,
+    EVAS_GL_STENCIL_BIT_1  = 1,
+    EVAS_GL_STENCIL_BIT_2  = 2,
+    EVAS_GL_STENCIL_BIT_4  = 3,
+    EVAS_GL_STENCIL_BIT_8  = 4,
+    EVAS_GL_STENCIL_BIT_16 = 5
+} Evas_GL_Stencil_Bits;
+
+/**
+ * Configuration Options.
+ *
+ * @since 1.1.0
+ */
+typedef enum _Evas_GL_Options_Bits
+{
+   EVAS_GL_OPTIONS_NONE    = 0,     /**< No extra options */
+   EVAS_GL_OPTIONS_DIRECT  = (1<<0) /**< Optional hint to allow rendering directly to evas' window when possible */
+} Evas_GL_Options_Bits;
+
+/**
+ * Configuration Option for Multisample Anti-aliased (MSAA) rendering surface.
+ * Only works in supported device.
+ *
+ * @since 1.2.0
+ */
+typedef enum _Evas_GL_Multisample_Bits
+{
+   EVAS_GL_MULTISAMPLE_NONE = 0, /**< No multisample rendering */
+   EVAS_GL_MULTISAMPLE_LOW  = 1, /**< MSAA with mininum number of samples */
+   EVAS_GL_MULTISAMPLE_MED  = 2, /**< MSAA with half the number of max samples */
+   EVAS_GL_MULTISAMPLE_HIGH = 3  /**< MSAA with maximum allowed samples */
+} Evas_GL_Multisample_Bits;
+
+/**
+  * @struct _Evas_GL_Config
+  *
+  * Evas GL Surface configuration
+  */
+struct _Evas_GL_Config
+{
+   Evas_GL_Color_Format       color_format;     /**< Surface Color Format */
+   Evas_GL_Depth_Bits         depth_bits;       /**< Surface Depth Bits */
+   Evas_GL_Stencil_Bits       stencil_bits;     /**< Surface Stencil Bits */
+   Evas_GL_Options_Bits       options_bits;     /**< Extra Surface Options */
+   Evas_GL_Multisample_Bits   multisample_bits; /**< Optional Surface MSAA Bits */
+};
+
+#define EVAS_GL_EXTENSIONS       1
+
+
+/**
  * Creates a new Evas_GL object and returns a handle for gl rendering on efl.
  *
  * @param e The given evas canvas OpenGL is to be used on.