1 // Copyright (c) 2012 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.
5 #ifndef PPAPI_C_DEV_PPB_GLES_CHROMIUM_TEXTURE_MAPPING_DEV_H_
6 #define PPAPI_C_DEV_PPB_GLES_CHROMIUM_TEXTURE_MAPPING_DEV_H_
8 #include "ppapi/c/pp_resource.h"
9 #include "ppapi/c/ppb_opengles2.h"
11 #define PPB_GLES_CHROMIUM_TEXTURE_MAPPING_DEV_INTERFACE_0_1 \
12 "PPB_GLESChromiumTextureMapping(Dev);0.1"
13 #define PPB_GLES_CHROMIUM_TEXTURE_MAPPING_DEV_INTERFACE \
14 PPB_GLES_CHROMIUM_TEXTURE_MAPPING_DEV_INTERFACE_0_1
16 // PPB_GLES_CHROMIUM_TEXTURE_MAPPING_DEV_INTERFACE is deprecated. Please use
17 // PPB_OPENGLES2_CHROMIUMMAPSUB_INTERFACE instead.
19 #define PPB_OPENGLES2_CHROMIUMMAPSUB_DEV_INTERFACE_1_0 \
20 "PPB_OpenGLES2ChromiumMapSub(Dev);1.0"
22 // PPB_OPENGLES2_CHROMIUMMAPSUB_DEV_INTERFACE_1_0 is also deprecated. Please
23 // use PPB_OPENGLES2_CHROMIUMMAPSUB_INTERFACE instead.
25 struct PPB_GLESChromiumTextureMapping_Dev_0_1
{
26 // Maps the sub-image of a texture. 'level', 'xoffset', 'yoffset', 'width',
27 // 'height', 'format' and 'type' correspond to the similarly named parameters
28 // of TexSubImage2D, and define the sub-image region, as well as the format of
29 // the data. 'access' must be one of GL_READ_ONLY, GL_WRITE_ONLY or
30 // GL_READ_WRITE. If READ is included, the returned buffer will contain the
31 // pixel data for the sub-image. If WRITE is included, the pixel data for the
32 // sub-image will be updated to the contents of the buffer when
33 // UnmapTexSubImage2DCHROMIUM is called. NOTE: for a GL_WRITE_ONLY map, it
34 // means that all the values of the buffer must be written.
35 void* (*MapTexSubImage2DCHROMIUM
)(
47 // Unmaps the sub-image of a texture. If the sub-image was mapped with one of
48 // the WRITE accesses, the pixels are updated at this time to the contents of
49 // the buffer. 'mem' must be the pointer returned by MapTexSubImage2DCHROMIUM.
50 void (*UnmapTexSubImage2DCHROMIUM
)(PP_Resource context
, const void* mem
);
53 typedef struct PPB_GLESChromiumTextureMapping_Dev_0_1
54 PPB_GLESChromiumTextureMapping_Dev
;
56 #endif // PPAPI_C_DEV_PPB_GLES_CHROMIUM_TEXTURE_MAPPING_DEV_H_