native_helper.h revision e1e0307c911f962cfb529c6e16b67ba66f08f6fe
1/* 2 * Mesa 3-D graphics library 3 * Version: 7.9 4 * 5 * Copyright (C) 2010 LunarG Inc. 6 * 7 * Permission is hereby granted, free of charge, to any person obtaining a 8 * copy of this software and associated documentation files (the "Software"), 9 * to deal in the Software without restriction, including without limitation 10 * the rights to use, copy, modify, merge, publish, distribute, sublicense, 11 * and/or sell copies of the Software, and to permit persons to whom the 12 * Software is furnished to do so, subject to the following conditions: 13 * 14 * The above copyright notice and this permission notice shall be included 15 * in all copies or substantial portions of the Software. 16 * 17 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 20 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 22 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 23 * DEALINGS IN THE SOFTWARE. 24 * 25 * Authors: 26 * Chia-I Wu <olv@lunarg.com> 27 */ 28 29#include "native.h" 30 31struct resource_surface; 32 33struct resource_surface * 34resource_surface_create(struct pipe_screen *screen, 35 enum pipe_format format, uint bind); 36 37void 38resource_surface_destroy(struct resource_surface *rsurf); 39 40boolean 41resource_surface_set_size(struct resource_surface *rsurf, 42 uint width, uint height); 43 44void 45resource_surface_get_size(struct resource_surface *rsurf, 46 uint *width, uint *height); 47 48boolean 49resource_surface_add_resources(struct resource_surface *rsurf, 50 uint resource_mask); 51 52void 53resource_surface_get_resources(struct resource_surface *rsurf, 54 struct pipe_resource **resources, 55 uint resource_mask); 56 57struct pipe_resource * 58resource_surface_get_single_resource(struct resource_surface *rsurf, 59 enum native_attachment which); 60 61void 62resource_surface_swap_buffers(struct resource_surface *rsurf, 63 enum native_attachment buf1, 64 enum native_attachment buf2, 65 boolean only_if_exist); 66 67boolean 68resource_surface_present(struct resource_surface *rsurf, 69 enum native_attachment which, 70 void *winsys_drawable_handle); 71