16bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora/* 26bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * Copyright 2009 Maciej Cencora <m.cencora@gmail.com> 36bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * 46bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * All Rights Reserved. 56bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * 66bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * Permission is hereby granted, free of charge, to any person obtaining 76bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * a copy of this software and associated documentation files (the 86bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * "Software"), to deal in the Software without restriction, including 96bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * without limitation the rights to use, copy, modify, merge, publish, 106bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * distribute, sublicense, and/or sell copies of the Software, and to 116bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * permit persons to whom the Software is furnished to do so, subject to 126bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * the following conditions: 136bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * 146bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * The above copyright notice and this permission notice (including the 156bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * next paragraph) shall be included in all copies or substantial 166bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * portions of the Software. 176bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * 186bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 196bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 206bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 216bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE 226bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 236bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 246bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 256bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * 266bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora */ 276bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora 286bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora#ifndef RADEON_BUFFER_OBJECTS_H 296bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora#define RADEON_BUFFER_OBJECTS_H 306bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora 316bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora#include "main/mtypes.h" 326bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora 336bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencorastruct radeon_bo; 346bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora 356bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora/** 366bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * Radeon vertex/pixel buffer object, derived from Mesa's gl_buffer_object. 376bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora */ 386bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencorastruct radeon_buffer_object 396bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora{ 406bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora struct gl_buffer_object Base; 416bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora struct radeon_bo *bo; 426bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora}; 436bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora 446bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencorastruct radeon_buffer_object * 456bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencoraget_radeon_buffer_object(struct gl_buffer_object *obj); 466bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora 476bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora/** 486bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora * Hook the bufferobject implementation into mesa: 496bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora */ 506bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencoravoid radeonInitBufferObjectFuncs(struct dd_function_table *functions); 516bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora 526bcbeb02d61442919a2ae4dfd642547e5f7b1439Maciej Cencora#endif 53