Home | History | Annotate | Download | only in dev
      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.
      4 
      5 #ifndef PPAPI_C_DEV_PPB_GLES_CHROMIUM_TEXTURE_MAPPING_DEV_H_
      6 #define PPAPI_C_DEV_PPB_GLES_CHROMIUM_TEXTURE_MAPPING_DEV_H_
      7 
      8 #include "ppapi/c/pp_resource.h"
      9 #include "ppapi/c/ppb_opengles2.h"
     10 
     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
     15 
     16 // PPB_GLES_CHROMIUM_TEXTURE_MAPPING_DEV_INTERFACE is deprecated. Please use
     17 // PPB_OPENGLES2_CHROMIUMMAPSUB_INTERFACE instead.
     18 
     19 #define PPB_OPENGLES2_CHROMIUMMAPSUB_DEV_INTERFACE_1_0 \
     20     "PPB_OpenGLES2ChromiumMapSub(Dev);1.0"
     21 
     22 // PPB_OPENGLES2_CHROMIUMMAPSUB_DEV_INTERFACE_1_0 is also deprecated.  Please
     23 // use PPB_OPENGLES2_CHROMIUMMAPSUB_INTERFACE instead.
     24 
     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)(
     36      PP_Resource context,
     37      GLenum target,
     38      GLint level,
     39      GLint xoffset,
     40      GLint yoffset,
     41      GLsizei width,
     42      GLsizei height,
     43      GLenum format,
     44      GLenum type,
     45      GLenum access);
     46 
     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);
     51 };
     52 
     53 typedef struct PPB_GLESChromiumTextureMapping_Dev_0_1
     54     PPB_GLESChromiumTextureMapping_Dev;
     55 
     56 #endif  // PPAPI_C_DEV_PPB_GLES_CHROMIUM_TEXTURE_MAPPING_DEV_H_
     57