Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(595)

Side by Side Diff: ppapi/c/dev/pp_graphics_3d_dev.h

Issue 5567004: Proposed changes to Pepper 3D API. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 10 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
Property Changes:
Added: svn:eol-style
+ LF
OLDNEW
(Empty)
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef PPAPI_C_DEV_PP_GRAPHICS_3D_DEV_H_
6 #define PPAPI_C_DEV_PP_GRAPHICS_3D_DEV_H_
7
8 // TODO(alokp): Using PP_Graphics3D prefix is making these enum names rather
9 // long. Can we just use PP_GL? It will be a nice short replacement of EGL.
10 // In which case we should rename associated classes as - PP_GL, PP_GLContext,
11 // PP_GLContext, PP_GLSurface, PP_GLConfig, and PP_OpenGLES2.
12 // It is short and binds all associated classes in the package together.
13 enum PP_Graphics3DError_Dev {
14 PP_GRAPHICS3DERROR_BAD_ACCESS = 0x3002,
15 PP_GRAPHICS3DERROR_BAD_ATTRIBUTE = 0x3004,
16 PP_GRAPHICS3DERROR_BAD_CONFIG = 0x3005,
17 PP_GRAPHICS3DERROR_BAD_CONTEXT = 0x3006,
brettw 2010/12/10 00:32:27 I'm a little confused about how this overlaps with
alokp 2010/12/10 13:20:33 This is equivalent to PP_ERROR_BADRESOURCE except
18 PP_GRAPHICS3DERROR_BAD_MATCH = 0x3009,
19 PP_GRAPHICS3DERROR_BAD_SURFACE = 0x300D,
20 PP_GRAPHICS3DERROR_CONTEXT_LOST = 0x300E
21 };
22
23 enum PP_Graphics3DString_Dev {
24 PP_GRAPHICS3DSTRING_VENDOR = 0x3053,
25 PP_GRAPHICS3DSTRING_VERSION = 0x3054,
26 PP_GRAPHICS3DSTRING_EXTENSIONS = 0x3055,
27 PP_GRAPHICS3DSTRING_CLIENT_APIS = 0x308D
28 };
29
30 enum PP_Graphics3DAttrib_Dev {
31 // Total color component bits in the color buffer.
32 PP_GRAPHICS3DATTRIB_BUFFER_SIZE = 0x3020,
33 // Bits of Alpha in the color buffer.
34 PP_GRAPHICS3DATTRIB_ALPHA_SIZE = 0x3021,
35 // Bits of Blue in the color buffer.
36 PP_GRAPHICS3DATTRIB_BLUE_SIZE = 0x3022,
37 // Bits of Green in the color buffer.
38 PP_GRAPHICS3DATTRIB_GREEN_SIZE = 0x3023,
39 // Bits of Red in the color buffer.
40 PP_GRAPHICS3DATTRIB_RED_SIZE = 0x3024,
41 // Bits of Z in the depth buffer.
42 PP_GRAPHICS3DATTRIB_DEPTH_SIZE = 0x3025,
43 // Bits of Stencil in the stencil buffer.
44 PP_GRAPHICS3DATTRIB_STENCIL_SIZE = 0x3026,
45 // Any caveats for the configuration.
46 PP_GRAPHICS3DATTRIB_CONFIG_CAVEAT = 0x3027,
47 // Unique EGLConfig identifier.
48 PP_GRAPHICS3DATTRIB_CONFIG_ID = 0x3028,
49 // Maximum height of surface.
50 PP_GRAPHICS3DATTRIB_MAX_SURFACE_HEIGHT = 0x302A,
51 // Maximum size of surface.
52 PP_GRAPHICS3DATTRIB_MAX_SURFACE_PIXELS = 0x302B,
53 // Maximum width of surface.
54 PP_GRAPHICS3DATTRIB_MAX_SURFACE_WIDTH = 0x302C,
55 // Number of samples per pixel.
56 PP_GRAPHICS3DATTRIB_SAMPLES = 0x3031,
57 // Number of multisample buffers.
58 PP_GRAPHICS3DATTRIB_SAMPLE_BUFFERS = 0x3032,
59 // Which types of EGL surfaces are supported.
60 PP_GRAPHICS3DATTRIB_SURFACE_TYPE = 0x3033,
61 // Type of transparency supported.
62 PP_GRAPHICS3DATTRIB_TRANSPARENT_TYPE = 0x3034,
63 // Transparent blue value.
64 PP_GRAPHICS3DATTRIB_TRANSPARENT_BLUE_VALUE = 0x3035,
65 // Transparent green value.
66 PP_GRAPHICS3DATTRIB_TRANSPARENT_GREEN_VALUE = 0x3036,
67 // Transparent red value.
68 PP_GRAPHICS3DATTRIB_TRANSPARENT_RED_VALUE = 0x3037,
69 // Attrib list terminator.
70 PP_GRAPHICS3DATTRIB_NONE = 0x3038,
71 // TODO(alokp): Find out if we can support swap intervals. Remove them if not.
72 // Minimum swap interval.
73 PP_GRAPHICS3DATTRIB_MIN_SWAP_INTERVAL = 0x303B,
74 // Maximum swap interval.
75 PP_GRAPHICS3DATTRIB_MAX_SWAP_INTERVAL = 0x303C,
76 // Bits of Luminance in the color buffer.
77 PP_GRAPHICS3DATTRIB_LUMINANCE_SIZE = 0x303D,
78 // Bits of Alpha Mask in the mask buffer.
79 PP_GRAPHICS3DATTRIB_ALPHA_MASK_SIZE = 0x303E,
80 // Color buffer type.
81 PP_GRAPHICS3DATTRIB_COLOR_BUFFER_TYPE = 0x303F,
82 // Which client APIs are supported.
83 PP_GRAPHICS3DATTRIB_RENDERABLE_TYPE = 0x3040,
84 // Whether contexts created with this config are conformant.
85 PP_GRAPHICS3DATTRIB_CONFORMANT = 0x3042,
86
87 // Surface specific attributes.
88 // Height of surface.
89 PP_GRAPHICS3DATTRIB_HEIGHT = 0x3056,
90 // Width of surface.
91 PP_GRAPHICS3DATTRIB_WIDTH = 0x3057,
92 // If true, create largest surface possible.
93 PP_GRAPHICS3DATTRIB_LARGEST_SURFACE = 0x3058,
94 // Render buffer.
95 PP_GRAPHICS3DATTRIB_RENDER_BUFFER = 0x3086,
96 // Buffer swap behavior.
97 PP_GRAPHICS3DATTRIB_SWAP_BEHAVIOR = 0x3093,
98 // Multisample resolve behavior.
99 PP_GRAPHICS3DATTRIB_MULTISAMPLE_RESOLVE = 0x3099,
100
101 // Context specific attributes.
102 // Which client API the context supports.
103 PP_GRAPHICS3DATTRIB_CONTEXT_CLIENT_TYPE = 0x3097,
104 // Which version of OpenGL ES context to create.
105 PP_GRAPHICS3DATTRIB_CONTEXT_CLIENT_VERSION = 0x3098
106 };
107
108 enum PP_Graphics3DAttribValue_Dev {
109 PP_GRAPHICS3DATTRIBVALUE_NONE = 0x3038,
110 // PP_GRAPHICS3DATTRIB_CONFIG_CAVEAT values.
brettw 2010/12/10 00:32:27 Normally we would put a blank line before a commen
alokp 2010/12/10 13:20:33 Done.
111 PP_GRAPHICS3DATTRIBVALUE_SLOW_CONFIG = 0x3050,
112 PP_GRAPHICS3DATTRIBVALUE_NON_CONFORMANT_CONFIG = 0x3051,
113 // PP_GRAPHICS3DATTRIB_TRANSPARENT_TYPE values.
114 PP_GRAPHICS3DATTRIBVALUE_TRANSPARENT_RGB = 0x3052,
115 // PP_GRAPHICS3DATTRIB_COLOR_BUFFER_TYPE values.
116 PP_GRAPHICS3DATTRIBVALUE_RGB_BUFFER = 0x308E,
117 PP_GRAPHICS3DATTRIBVALUE_LUMINANCE_BUFFER = 0x308F,
118 // PP_GRAPHICS3DATTRIB_SURFACE_TYPE mask bits.
119 PP_GRAPHICS3DATTRIBVALUE_MULTISAMPLE_RESOLVE_BOX_BIT = 0x0200,
120 PP_GRAPHICS3DATTRIBVALUE_SWAP_BEHAVIOR_PRESERVED_BIT = 0x0400,
121 // PP_GRAPHICS3DATTRIB_RENDERABLE_TYPE mask bits.
122 PP_GRAPHICS3DATTRIBVALUE_OPENGL_ES_BIT = 0x0001,
123 PP_GRAPHICS3DATTRIBVALUE_OPENGL_ES2_BIT = 0x0004,
124 PP_GRAPHICS3DATTRIBVALUE_OPENGL_BIT = 0x0008,
125 // PP_GRAPHICS3DATTRIB_RENDER_BUFFER values.
126 PP_GRAPHICS3DATTRIBVALUE_BACK_BUFFER = 0x3084,
127 PP_GRAPHICS3DATTRIBVALUE_SINGLE_BUFFER = 0x3085,
128 // PP_GRAPHICS3DATTRIB_SWAP_BEHAVIOR values.
129 PP_GRAPHICS3DATTRIBVALUE_BUFFER_PRESERVED = 0x3094,
130 PP_GRAPHICS3DATTRIBVALUE_BUFFER_DESTROYED = 0x3095,
131 // PP_GRAPHICS3DATTRIB_MULTISAMPLE_RESOLVE values.
132 PP_GRAPHICS3DATTRIBVALUE_MULTISAMPLE_RESOLVE_DEFAULT = 0x309A,
133 PP_GRAPHICS3DATTRIBVALUE_MULTISAMPLE_RESOLVE_BOX = 0x309B,
134 // PP_GRAPHICS3DATTRIB_CONTEXT_CLIENT_TYPE values.
135 PP_GRAPHICS3DATTRIBVALUE_OPENGL_ES_API = 0x30A0,
136 PP_GRAPHICS3DATTRIBVALUE_OPENGL_API = 0x30A2,
137 };
138
139 typedef int32_t PP_Graphics3DConfig_Dev;
140
141 #endif // PPAPI_C_DEV_PP_GRAPHICS_3D_DEV_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698