diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/gallium/Makefile.am | 1 | ||||
-rw-r--r-- | src/gallium/SConscript | 1 | ||||
-rw-r--r-- | src/gallium/drivers/identity/Makefile.am | 11 | ||||
-rw-r--r-- | src/gallium/drivers/identity/Makefile.sources | 8 | ||||
-rw-r--r-- | src/gallium/drivers/identity/SConscript | 12 | ||||
-rw-r--r-- | src/gallium/drivers/identity/id_context.c | 883 | ||||
-rw-r--r-- | src/gallium/drivers/identity/id_context.h | 52 | ||||
-rw-r--r-- | src/gallium/drivers/identity/id_objects.c | 189 | ||||
-rw-r--r-- | src/gallium/drivers/identity/id_objects.h | 177 | ||||
-rw-r--r-- | src/gallium/drivers/identity/id_public.h | 37 | ||||
-rw-r--r-- | src/gallium/drivers/identity/id_screen.c | 286 | ||||
-rw-r--r-- | src/gallium/drivers/identity/id_screen.h | 48 | ||||
-rw-r--r-- | src/gallium/targets/egl-static/Makefile.am | 1 |
13 files changed, 0 insertions, 1706 deletions
diff --git a/src/gallium/Makefile.am b/src/gallium/Makefile.am index 6a2a866549c..f6bf3c00575 100644 --- a/src/gallium/Makefile.am +++ b/src/gallium/Makefile.am @@ -12,7 +12,6 @@ SUBDIRS += auxiliary SUBDIRS += \ drivers/galahad \ - drivers/identity \ drivers/noop \ drivers/trace \ drivers/rbug diff --git a/src/gallium/SConscript b/src/gallium/SConscript index 25d0af6f9ca..37767b5e915 100644 --- a/src/gallium/SConscript +++ b/src/gallium/SConscript @@ -13,7 +13,6 @@ SConscript('auxiliary/SConscript') # These are common and work across all platforms SConscript([ 'drivers/galahad/SConscript', - 'drivers/identity/SConscript', 'drivers/llvmpipe/SConscript', 'drivers/rbug/SConscript', 'drivers/softpipe/SConscript', diff --git a/src/gallium/drivers/identity/Makefile.am b/src/gallium/drivers/identity/Makefile.am deleted file mode 100644 index 0a496331855..00000000000 --- a/src/gallium/drivers/identity/Makefile.am +++ /dev/null @@ -1,11 +0,0 @@ -include Makefile.sources -include $(top_srcdir)/src/gallium/Automake.inc - -AM_CFLAGS = \ - $(GALLIUM_DRIVER_CFLAGS) - -noinst_LTLIBRARIES = libidentity.la - -libidentity_la_SOURCES = $(C_SOURCES) - -EXTRA_DIST = SConscript diff --git a/src/gallium/drivers/identity/Makefile.sources b/src/gallium/drivers/identity/Makefile.sources deleted file mode 100644 index e3e34a85589..00000000000 --- a/src/gallium/drivers/identity/Makefile.sources +++ /dev/null @@ -1,8 +0,0 @@ -C_SOURCES := \ - id_context.c \ - id_context.h \ - id_objects.c \ - id_objects.h \ - id_public.h \ - id_screen.c \ - id_screen.h diff --git a/src/gallium/drivers/identity/SConscript b/src/gallium/drivers/identity/SConscript deleted file mode 100644 index 120995143d2..00000000000 --- a/src/gallium/drivers/identity/SConscript +++ /dev/null @@ -1,12 +0,0 @@ -Import('*') - -env = env.Clone() - -identity = env.ConvenienceLibrary( - target = 'identity', - source = env.ParseSourceList('Makefile.sources', 'C_SOURCES') - ) - -env.Alias('identity', identity) - -Export('identity') diff --git a/src/gallium/drivers/identity/id_context.c b/src/gallium/drivers/identity/id_context.c deleted file mode 100644 index 97b39671fce..00000000000 --- a/src/gallium/drivers/identity/id_context.c +++ /dev/null @@ -1,883 +0,0 @@ -/************************************************************************** - * - * Copyright 2009 VMware, Inc. - * All Rights Reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the - * "Software"), to deal in the Software without restriction, including - * without limitation the rights to use, copy, modify, merge, publish, - * distribute, sub license, and/or sell copies of the Software, and to - * permit persons to whom the Software is furnished to do so, subject to - * the following conditions: - * - * The above copyright notice and this permission notice (including the - * next paragraph) shall be included in all copies or substantial portions - * of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. - * IN NO EVENT SHALL VMWARE AND/OR ITS SUPPLIERS BE LIABLE FOR - * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, - * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE - * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - **************************************************************************/ - - -#include "pipe/p_context.h" -#include "util/u_memory.h" -#include "util/u_inlines.h" - -#include "id_context.h" -#include "id_objects.h" - - -static void -identity_destroy(struct pipe_context *_pipe) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->destroy(pipe); - - FREE(id_pipe); -} - -static void -identity_draw_vbo(struct pipe_context *_pipe, - const struct pipe_draw_info *info) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->draw_vbo(pipe, info); -} - -static struct pipe_query * -identity_create_query(struct pipe_context *_pipe, - unsigned query_type, - unsigned index) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - return pipe->create_query(pipe, - query_type, - index); -} - -static void -identity_destroy_query(struct pipe_context *_pipe, - struct pipe_query *query) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->destroy_query(pipe, - query); -} - -static void -identity_begin_query(struct pipe_context *_pipe, - struct pipe_query *query) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->begin_query(pipe, - query); -} - -static void -identity_end_query(struct pipe_context *_pipe, - struct pipe_query *query) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->end_query(pipe, - query); -} - -static boolean -identity_get_query_result(struct pipe_context *_pipe, - struct pipe_query *query, - boolean wait, - union pipe_query_result *result) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - return pipe->get_query_result(pipe, - query, - wait, - result); -} - -static void * -identity_create_blend_state(struct pipe_context *_pipe, - const struct pipe_blend_state *blend) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - return pipe->create_blend_state(pipe, - blend); -} - -static void -identity_bind_blend_state(struct pipe_context *_pipe, - void *blend) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->bind_blend_state(pipe, - blend); -} - -static void -identity_delete_blend_state(struct pipe_context *_pipe, - void *blend) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->delete_blend_state(pipe, - blend); -} - -static void * -identity_create_sampler_state(struct pipe_context *_pipe, - const struct pipe_sampler_state *sampler) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - return pipe->create_sampler_state(pipe, - sampler); -} - -static void -identity_bind_sampler_states(struct pipe_context *_pipe, - unsigned shader, - unsigned start, - unsigned num_samplers, - void **samplers) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->bind_sampler_states(pipe, shader, start, num_samplers, samplers); -} - -static void -identity_delete_sampler_state(struct pipe_context *_pipe, - void *sampler) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->delete_sampler_state(pipe, - sampler); -} - -static void * -identity_create_rasterizer_state(struct pipe_context *_pipe, - const struct pipe_rasterizer_state *rasterizer) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - return pipe->create_rasterizer_state(pipe, - rasterizer); -} - -static void -identity_bind_rasterizer_state(struct pipe_context *_pipe, - void *rasterizer) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->bind_rasterizer_state(pipe, - rasterizer); -} - -static void -identity_delete_rasterizer_state(struct pipe_context *_pipe, - void *rasterizer) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->delete_rasterizer_state(pipe, - rasterizer); -} - -static void * -identity_create_depth_stencil_alpha_state(struct pipe_context *_pipe, - const struct pipe_depth_stencil_alpha_state *depth_stencil_alpha) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - return pipe->create_depth_stencil_alpha_state(pipe, - depth_stencil_alpha); -} - -static void -identity_bind_depth_stencil_alpha_state(struct pipe_context *_pipe, - void *depth_stencil_alpha) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->bind_depth_stencil_alpha_state(pipe, - depth_stencil_alpha); -} - -static void -identity_delete_depth_stencil_alpha_state(struct pipe_context *_pipe, - void *depth_stencil_alpha) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->delete_depth_stencil_alpha_state(pipe, - depth_stencil_alpha); -} - -static void * -identity_create_fs_state(struct pipe_context *_pipe, - const struct pipe_shader_state *fs) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - return pipe->create_fs_state(pipe, - fs); -} - -static void -identity_bind_fs_state(struct pipe_context *_pipe, - void *fs) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->bind_fs_state(pipe, - fs); -} - -static void -identity_delete_fs_state(struct pipe_context *_pipe, - void *fs) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->delete_fs_state(pipe, - fs); -} - -static void * -identity_create_vs_state(struct pipe_context *_pipe, - const struct pipe_shader_state *vs) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - return pipe->create_vs_state(pipe, - vs); -} - -static void -identity_bind_vs_state(struct pipe_context *_pipe, - void *vs) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->bind_vs_state(pipe, - vs); -} - -static void -identity_delete_vs_state(struct pipe_context *_pipe, - void *vs) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->delete_vs_state(pipe, - vs); -} - - -static void * -identity_create_vertex_elements_state(struct pipe_context *_pipe, - unsigned num_elements, - const struct pipe_vertex_element *vertex_elements) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - return pipe->create_vertex_elements_state(pipe, - num_elements, - vertex_elements); -} - -static void -identity_bind_vertex_elements_state(struct pipe_context *_pipe, - void *velems) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->bind_vertex_elements_state(pipe, - velems); -} - -static void -identity_delete_vertex_elements_state(struct pipe_context *_pipe, - void *velems) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->delete_vertex_elements_state(pipe, - velems); -} - -static void -identity_set_blend_color(struct pipe_context *_pipe, - const struct pipe_blend_color *blend_color) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->set_blend_color(pipe, - blend_color); -} - -static void -identity_set_stencil_ref(struct pipe_context *_pipe, - const struct pipe_stencil_ref *stencil_ref) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->set_stencil_ref(pipe, - stencil_ref); -} - -static void -identity_set_clip_state(struct pipe_context *_pipe, - const struct pipe_clip_state *clip) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->set_clip_state(pipe, - clip); -} - -static void -identity_set_sample_mask(struct pipe_context *_pipe, - unsigned sample_mask) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->set_sample_mask(pipe, - sample_mask); -} - -static void -identity_set_constant_buffer(struct pipe_context *_pipe, - uint shader, - uint index, - struct pipe_constant_buffer *_cb) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - struct pipe_constant_buffer cb; - - /* XXX hmm? unwrap the input state */ - if (_cb) { - cb = *_cb; - cb.buffer = identity_resource_unwrap(_cb->buffer); - } - - pipe->set_constant_buffer(pipe, - shader, - index, - _cb ? &cb : NULL); -} - -static void -identity_set_framebuffer_state(struct pipe_context *_pipe, - const struct pipe_framebuffer_state *_state) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - struct pipe_framebuffer_state unwrapped_state; - struct pipe_framebuffer_state *state = NULL; - unsigned i; - - /* unwrap the input state */ - if (_state) { - memcpy(&unwrapped_state, _state, sizeof(unwrapped_state)); - for(i = 0; i < _state->nr_cbufs; i++) - unwrapped_state.cbufs[i] = identity_surface_unwrap(_state->cbufs[i]); - for (; i < PIPE_MAX_COLOR_BUFS; i++) - unwrapped_state.cbufs[i] = NULL; - unwrapped_state.zsbuf = identity_surface_unwrap(_state->zsbuf); - state = &unwrapped_state; - } - - pipe->set_framebuffer_state(pipe, - state); -} - -static void -identity_set_polygon_stipple(struct pipe_context *_pipe, - const struct pipe_poly_stipple *poly_stipple) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->set_polygon_stipple(pipe, - poly_stipple); -} - -static void -identity_set_scissor_states(struct pipe_context *_pipe, - unsigned start_slot, - unsigned num_scissors, - const struct pipe_scissor_state *scissor) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->set_scissor_states(pipe, start_slot, num_scissors, scissor); -} - -static void -identity_set_viewport_states(struct pipe_context *_pipe, - unsigned start_slot, - unsigned num_viewports, - const struct pipe_viewport_state *viewport) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->set_viewport_states(pipe, start_slot, num_viewports, viewport); -} - -static void -identity_set_sampler_views(struct pipe_context *_pipe, - unsigned shader, - unsigned start, - unsigned num, - struct pipe_sampler_view **_views) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - struct pipe_sampler_view *unwrapped_views[PIPE_MAX_SHADER_SAMPLER_VIEWS]; - unsigned i; - - for (i = 0; i < num; i++) - unwrapped_views[i] = identity_sampler_view_unwrap(_views[i]); - - pipe->set_sampler_views(pipe, shader, start, num, unwrapped_views); -} - -static void -identity_set_vertex_buffers(struct pipe_context *_pipe, - unsigned start_slot, unsigned num_buffers, - const struct pipe_vertex_buffer *_buffers) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - struct pipe_vertex_buffer unwrapped_buffers[PIPE_MAX_SHADER_INPUTS]; - struct pipe_vertex_buffer *buffers = NULL; - unsigned i; - - if (num_buffers) { - memcpy(unwrapped_buffers, _buffers, num_buffers * sizeof(*_buffers)); - for (i = 0; i < num_buffers; i++) - unwrapped_buffers[i].buffer = identity_resource_unwrap(_buffers[i].buffer); - buffers = unwrapped_buffers; - } - - pipe->set_vertex_buffers(pipe, - start_slot, num_buffers, - buffers); -} - -static void -identity_set_index_buffer(struct pipe_context *_pipe, - const struct pipe_index_buffer *_ib) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - struct pipe_index_buffer unwrapped_ib, *ib = NULL; - - if (_ib) { - unwrapped_ib = *_ib; - unwrapped_ib.buffer = identity_resource_unwrap(_ib->buffer); - ib = &unwrapped_ib; - } - - pipe->set_index_buffer(pipe, ib); -} - -static void -identity_resource_copy_region(struct pipe_context *_pipe, - struct pipe_resource *_dst, - unsigned dst_level, - unsigned dstx, - unsigned dsty, - unsigned dstz, - struct pipe_resource *_src, - unsigned src_level, - const struct pipe_box *src_box) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct identity_resource *id_resource_dst = identity_resource(_dst); - struct identity_resource *id_resource_src = identity_resource(_src); - struct pipe_context *pipe = id_pipe->pipe; - struct pipe_resource *dst = id_resource_dst->resource; - struct pipe_resource *src = id_resource_src->resource; - - pipe->resource_copy_region(pipe, - dst, - dst_level, - dstx, - dsty, - dstz, - src, - src_level, - src_box); -} - -static void -identity_blit(struct pipe_context *_pipe, - const struct pipe_blit_info *info) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - struct pipe_blit_info blit = *info; - - blit.src.resource = identity_resource(blit.src.resource)->resource; - blit.dst.resource = identity_resource(blit.dst.resource)->resource; - - pipe->blit(pipe, &blit); -} - -static void -identity_flush_resource(struct pipe_context *_pipe, - struct pipe_resource *resource) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->flush_resource(pipe, resource); -} - -static void -identity_clear(struct pipe_context *_pipe, - unsigned buffers, - const union pipe_color_union *color, - double depth, - unsigned stencil) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->clear(pipe, - buffers, - color, - depth, - stencil); -} - -static void -identity_clear_render_target(struct pipe_context *_pipe, - struct pipe_surface *_dst, - const union pipe_color_union *color, - unsigned dstx, unsigned dsty, - unsigned width, unsigned height) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct identity_surface *id_surface_dst = identity_surface(_dst); - struct pipe_context *pipe = id_pipe->pipe; - struct pipe_surface *dst = id_surface_dst->surface; - - pipe->clear_render_target(pipe, - dst, - color, - dstx, - dsty, - width, - height); -} -static void -identity_clear_depth_stencil(struct pipe_context *_pipe, - struct pipe_surface *_dst, - unsigned clear_flags, - double depth, - unsigned stencil, - unsigned dstx, unsigned dsty, - unsigned width, unsigned height) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct identity_surface *id_surface_dst = identity_surface(_dst); - struct pipe_context *pipe = id_pipe->pipe; - struct pipe_surface *dst = id_surface_dst->surface; - - pipe->clear_depth_stencil(pipe, - dst, - clear_flags, - depth, - stencil, - dstx, - dsty, - width, - height); - -} - -static void -identity_flush(struct pipe_context *_pipe, - struct pipe_fence_handle **fence, - unsigned flags) -{ - struct identity_context *id_pipe = identity_context(_pipe); - struct pipe_context *pipe = id_pipe->pipe; - - pipe->flush(pipe, fence, flags); -} - -static struct pipe_sampler_view * -identity_context_create_sampler_view(struct pipe_context *_pipe, - struct pipe_resource *_resource, - const struct pipe_sampler_view *templ) -{ - struct identity_context *id_context = identity_context(_pipe); - struct identity_resource *id_resource = identity_resource(_resource); - struct pipe_context *pipe = id_context->pipe; - struct pipe_resource *resource = id_resource->resource; - struct pipe_sampler_view *result; - - result = pipe->create_sampler_view(pipe, - resource, - templ); - - if (result) - return identity_sampler_view_create(id_context, id_resource, result); - return NULL; -} - -static void -identity_context_sampler_view_destroy(struct pipe_context *_pipe, - struct pipe_sampler_view *_view) -{ - identity_sampler_view_destroy(identity_context(_pipe), - identity_sampler_view(_view)); -} - -static struct pipe_surface * -identity_context_create_surface(struct pipe_context *_pipe, - struct pipe_resource *_resource, - const struct pipe_surface *templ) -{ - struct identity_context *id_context = identity_context(_pipe); - struct identity_resource *id_resource = identity_resource(_resource); - struct pipe_context *pipe = id_context->pipe; - struct pipe_resource *resource = id_resource->resource; - struct pipe_surface *result; - - result = pipe->create_surface(pipe, - resource, - templ); - - if (result) - return identity_surface_create(id_context, id_resource, result); - return NULL; -} - -static void -identity_context_surface_destroy(struct pipe_context *_pipe, - struct pipe_surface *_surf) -{ - identity_surface_destroy(identity_context(_pipe), - identity_surface(_surf)); -} - -static void * -identity_context_transfer_map(struct pipe_context *_context, - struct pipe_resource *_resource, - unsigned level, - unsigned usage, - const struct pipe_box *box, - struct pipe_transfer **transfer) -{ - struct identity_context *id_context = identity_context(_context); - struct identity_resource *id_resource = identity_resource(_resource); - struct pipe_context *context = id_context->pipe; - struct pipe_resource *resource = id_resource->resource; - struct pipe_transfer *result; - void *map; - - map = context->transfer_map(context, - resource, - level, - usage, - box, &result); - - if (!map) - return NULL; - - *transfer = identity_transfer_map(id_context, id_resource, result); - return *transfer ? map : NULL; -} - -static void -identity_context_transfer_flush_region(struct pipe_context *_context, - struct pipe_transfer *_transfer, - const struct pipe_box *box) -{ - struct identity_context *id_context = identity_context(_context); - struct identity_transfer *id_transfer = identity_transfer(_transfer); - struct pipe_context *context = id_context->pipe; - struct pipe_transfer *transfer = id_transfer->transfer; - - context->transfer_flush_region(context, - transfer, - box); -} - - -static void -identity_context_transfer_unmap(struct pipe_context *_context, - struct pipe_transfer *_transfer) -{ - struct identity_context *id_context = identity_context(_context); - struct identity_transfer *id_transfer = identity_transfer(_transfer); - struct pipe_context *context = id_context->pipe; - struct pipe_transfer *transfer = id_transfer->transfer; - - context->transfer_unmap(context, - transfer); - - identity_transfer_destroy(identity_context(_context), - identity_transfer(_transfer)); -} - - -static void -identity_context_transfer_inline_write(struct pipe_context *_context, - struct pipe_resource *_resource, - unsigned level, - unsigned usage, - const struct pipe_box *box, - const void *data, - unsigned stride, - unsigned layer_stride) -{ - struct identity_context *id_context = identity_context(_context); - struct identity_resource *id_resource = identity_resource(_resource); - struct pipe_context *context = id_context->pipe; - struct pipe_resource *resource = id_resource->resource; - - context->transfer_inline_write(context, - resource, - level, - usage, - box, - data, - stride, - layer_stride); -} - - -struct pipe_context * -identity_context_create(struct pipe_screen *_screen, struct pipe_context *pipe) -{ - struct identity_context *id_pipe; - (void)identity_screen(_screen); - - id_pipe = CALLOC_STRUCT(identity_context); - if (!id_pipe) { - return NULL; - } - - id_pipe->base.screen = _screen; - id_pipe->base.priv = pipe->priv; /* expose wrapped data */ - id_pipe->base.draw = NULL; - - id_pipe->base.destroy = identity_destroy; - id_pipe->base.draw_vbo = identity_draw_vbo; - id_pipe->base.create_query = identity_create_query; - id_pipe->base.destroy_query = identity_destroy_query; - id_pipe->base.begin_query = identity_begin_query; - id_pipe->base.end_query = identity_end_query; - id_pipe->base.get_query_result = identity_get_query_result; - id_pipe->base.create_blend_state = identity_create_blend_state; - id_pipe->base.bind_blend_state = identity_bind_blend_state; - id_pipe->base.delete_blend_state = identity_delete_blend_state; - id_pipe->base.create_sampler_state = identity_create_sampler_state; - id_pipe->base.bind_sampler_states = identity_bind_sampler_states; - id_pipe->base.delete_sampler_state = identity_delete_sampler_state; - id_pipe->base.create_rasterizer_state = identity_create_rasterizer_state; - id_pipe->base.bind_rasterizer_state = identity_bind_rasterizer_state; - id_pipe->base.delete_rasterizer_state = identity_delete_rasterizer_state; - id_pipe->base.create_depth_stencil_alpha_state = identity_create_depth_stencil_alpha_state; - id_pipe->base.bind_depth_stencil_alpha_state = identity_bind_depth_stencil_alpha_state; - id_pipe->base.delete_depth_stencil_alpha_state = identity_delete_depth_stencil_alpha_state; - id_pipe->base.create_fs_state = identity_create_fs_state; - id_pipe->base.bind_fs_state = identity_bind_fs_state; - id_pipe->base.delete_fs_state = identity_delete_fs_state; - id_pipe->base.create_vs_state = identity_create_vs_state; - id_pipe->base.bind_vs_state = identity_bind_vs_state; - id_pipe->base.delete_vs_state = identity_delete_vs_state; - id_pipe->base.create_vertex_elements_state = identity_create_vertex_elements_state; - id_pipe->base.bind_vertex_elements_state = identity_bind_vertex_elements_state; - id_pipe->base.delete_vertex_elements_state = identity_delete_vertex_elements_state; - id_pipe->base.set_blend_color = identity_set_blend_color; - id_pipe->base.set_stencil_ref = identity_set_stencil_ref; - id_pipe->base.set_clip_state = identity_set_clip_state; - id_pipe->base.set_sample_mask = identity_set_sample_mask; - id_pipe->base.set_constant_buffer = identity_set_constant_buffer; - id_pipe->base.set_framebuffer_state = identity_set_framebuffer_state; - id_pipe->base.set_polygon_stipple = identity_set_polygon_stipple; - id_pipe->base.set_scissor_states = identity_set_scissor_states; - id_pipe->base.set_viewport_states = identity_set_viewport_states; - id_pipe->base.set_sampler_views = identity_set_sampler_views; - id_pipe->base.set_vertex_buffers = identity_set_vertex_buffers; - id_pipe->base.set_index_buffer = identity_set_index_buffer; - id_pipe->base.resource_copy_region = identity_resource_copy_region; - id_pipe->base.clear = identity_clear; - id_pipe->base.clear_render_target = identity_clear_render_target; - id_pipe->base.clear_depth_stencil = identity_clear_depth_stencil; - id_pipe->base.flush = identity_flush; - id_pipe->base.create_surface = identity_context_create_surface; - id_pipe->base.surface_destroy = identity_context_surface_destroy; - id_pipe->base.create_sampler_view = identity_context_create_sampler_view; - id_pipe->base.sampler_view_destroy = identity_context_sampler_view_destroy; - id_pipe->base.transfer_map = identity_context_transfer_map; - id_pipe->base.transfer_unmap = identity_context_transfer_unmap; - id_pipe->base.transfer_flush_region = identity_context_transfer_flush_region; - id_pipe->base.transfer_inline_write = identity_context_transfer_inline_write; - id_pipe->base.blit = identity_blit; - id_pipe->base.flush_resource = identity_flush_resource; - - id_pipe->pipe = pipe; - - return &id_pipe->base; -} diff --git a/src/gallium/drivers/identity/id_context.h b/src/gallium/drivers/identity/id_context.h deleted file mode 100644 index 6d3c1899d59..00000000000 --- a/src/gallium/drivers/identity/id_context.h +++ /dev/null @@ -1,52 +0,0 @@ -/************************************************************************** - * - * Copyright 2009 VMware, Inc. - * All Rights Reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the - * "Software"), to deal in the Software without restriction, including - * without limitation the rights to use, copy, modify, merge, publish, - * distribute, sub license, and/or sell copies of the Software, and to - * permit persons to whom the Software is furnished to do so, subject to - * the following conditions: - * - * The above copyright notice and this permission notice (including the - * next paragraph) shall be included in all copies or substantial portions - * of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. - * IN NO EVENT SHALL VMWARE AND/OR ITS SUPPLIERS BE LIABLE FOR - * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, - * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE - * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - **************************************************************************/ - -#ifndef ID_CONTEXT_H -#define ID_CONTEXT_H - -#include "pipe/p_state.h" -#include "pipe/p_context.h" - - -struct identity_context { - struct pipe_context base; /**< base class */ - - struct pipe_context *pipe; -}; - - -struct pipe_context * -identity_context_create(struct pipe_screen *screen, struct pipe_context *pipe); - - -static INLINE struct identity_context * -identity_context(struct pipe_context *pipe) -{ - return (struct identity_context *)pipe; -} - -#endif /* ID_CONTEXT_H */ diff --git a/src/gallium/drivers/identity/id_objects.c b/src/gallium/drivers/identity/id_objects.c deleted file mode 100644 index a26d9874870..00000000000 --- a/src/gallium/drivers/identity/id_objects.c +++ /dev/null @@ -1,189 +0,0 @@ -/************************************************************************** - * - * Copyright 2009 VMware, Inc. - * All Rights Reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the - * "Software"), to deal in the Software without restriction, including - * without limitation the rights to use, copy, modify, merge, publish, - * distribute, sub license, and/or sell copies of the Software, and to - * permit persons to whom the Software is furnished to do so, subject to - * the following conditions: - * - * The above copyright notice and this permission notice (including the - * next paragraph) shall be included in all copies or substantial portions - * of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. - * IN NO EVENT SHALL VMWARE AND/OR ITS SUPPLIERS BE LIABLE FOR - * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, - * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE - * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - **************************************************************************/ - -#include "util/u_inlines.h" -#include "util/u_memory.h" - -#include "id_screen.h" -#include "id_objects.h" -#include "id_context.h" - - - -struct pipe_resource * -identity_resource_create(struct identity_screen *id_screen, - struct pipe_resource *resource) -{ - struct identity_resource *id_resource; - - if(!resource) - goto error; - - assert(resource->screen == id_screen->screen); - - id_resource = CALLOC_STRUCT(identity_resource); - if(!id_resource) - goto error; - - memcpy(&id_resource->base, resource, sizeof(struct pipe_resource)); - - pipe_reference_init(&id_resource->base.reference, 1); - id_resource->base.screen = &id_screen->base; - id_resource->resource = resource; - - return &id_resource->base; - -error: - pipe_resource_reference(&resource, NULL); - return NULL; -} - -void -identity_resource_destroy(struct identity_resource *id_resource) -{ - pipe_resource_reference(&id_resource->resource, NULL); - FREE(id_resource); -} - - -struct pipe_surface * -identity_surface_create(struct identity_context *id_context, - struct identity_resource *id_resource, - struct pipe_surface *surface) -{ - struct identity_surface *id_surface; - - if(!surface) - goto error; - - assert(surface->texture == id_resource->resource); - - id_surface = CALLOC_STRUCT(identity_surface); - if(!id_surface) - goto error; - - memcpy(&id_surface->base, surface, sizeof(struct pipe_surface)); - - pipe_reference_init(&id_surface->base.reference, 1); - id_surface->base.texture = NULL; - pipe_resource_reference(&id_surface->base.texture, &id_resource->base); - id_surface->surface = surface; - - return &id_surface->base; - -error: - pipe_surface_reference(&surface, NULL); - return NULL; -} - -void -identity_surface_destroy(struct identity_context *id_context, - struct identity_surface *id_surface) -{ - pipe_resource_reference(&id_surface->base.texture, NULL); - id_context->pipe->surface_destroy(id_context->pipe, - id_surface->surface); - FREE(id_surface); -} - - -struct pipe_sampler_view * -identity_sampler_view_create(struct identity_context *id_context, - struct identity_resource *id_resource, - struct pipe_sampler_view *view) -{ - struct identity_sampler_view *id_view; - - if (!view) - goto error; - - assert(view->texture == id_resource->resource); - - id_view = CALLOC_STRUCT(identity_sampler_view); - - id_view->base = *view; - id_view->base.reference.count = 1; - id_view->base.texture = NULL; - pipe_resource_reference(&id_view->base.texture, id_resource->resource); - id_view->base.context = id_context->pipe; - id_view->sampler_view = view; - - return &id_view->base; -error: - return NULL; -} - -void -identity_sampler_view_destroy(struct identity_context *id_context, - struct identity_sampler_view *id_view) -{ - pipe_resource_reference(&id_view->base.texture, NULL); - id_context->pipe->sampler_view_destroy(id_context->pipe, - id_view->sampler_view); - FREE(id_view); -} - - -struct pipe_transfer * -identity_transfer_map(struct identity_context *id_context, - struct identity_resource *id_resource, - struct pipe_transfer *transfer) -{ - struct identity_transfer *id_transfer; - - if(!transfer) - goto error; - - assert(transfer->resource == id_resource->resource); - - id_transfer = CALLOC_STRUCT(identity_transfer); - if(!id_transfer) - goto error; - - memcpy(&id_transfer->base, transfer, sizeof(struct pipe_transfer)); - - id_transfer->base.resource = NULL; - id_transfer->transfer = transfer; - - pipe_resource_reference(&id_transfer->base.resource, &id_resource->base); - assert(id_transfer->base.resource == &id_resource->base); - - return &id_transfer->base; - -error: - id_context->pipe->transfer_unmap(id_context->pipe, transfer); - return NULL; -} - -void -identity_transfer_destroy(struct identity_context *id_context, - struct identity_transfer *id_transfer) -{ - pipe_resource_reference(&id_transfer->base.resource, NULL); - FREE(id_transfer); -} - diff --git a/src/gallium/drivers/identity/id_objects.h b/src/gallium/drivers/identity/id_objects.h deleted file mode 100644 index 67049436247..00000000000 --- a/src/gallium/drivers/identity/id_objects.h +++ /dev/null @@ -1,177 +0,0 @@ -/************************************************************************** - * - * Copyright 2009 VMware, Inc. - * All Rights Reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the - * "Software"), to deal in the Software without restriction, including - * without limitation the rights to use, copy, modify, merge, publish, - * distribute, sub license, and/or sell copies of the Software, and to - * permit persons to whom the Software is furnished to do so, subject to - * the following conditions: - * - * The above copyright notice and this permission notice (including the - * next paragraph) shall be included in all copies or substantial portions - * of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. - * IN NO EVENT SHALL VMWARE AND/OR ITS SUPPLIERS BE LIABLE FOR - * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, - * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE - * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - **************************************************************************/ - -#ifndef ID_OBJECTS_H -#define ID_OBJECTS_H - - -#include "pipe/p_compiler.h" -#include "pipe/p_state.h" - -#include "id_screen.h" - -struct identity_context; - - -struct identity_resource -{ - struct pipe_resource base; - - struct pipe_resource *resource; -}; - - -struct identity_sampler_view -{ - struct pipe_sampler_view base; - - struct pipe_sampler_view *sampler_view; -}; - - -struct identity_surface -{ - struct pipe_surface base; - - struct pipe_surface *surface; -}; - - -struct identity_transfer -{ - struct pipe_transfer base; - - struct pipe_transfer *transfer; -}; - - -static INLINE struct identity_resource * -identity_resource(struct pipe_resource *_resource) -{ - if(!_resource) - return NULL; - (void)identity_screen(_resource->screen); - return (struct identity_resource *)_resource; -} - -static INLINE struct identity_sampler_view * -identity_sampler_view(struct pipe_sampler_view *_sampler_view) -{ - if (!_sampler_view) { - return NULL; - } - return (struct identity_sampler_view *)_sampler_view; -} - -static INLINE struct identity_surface * -identity_surface(struct pipe_surface *_surface) -{ - if(!_surface) - return NULL; - (void)identity_resource(_surface->texture); - return (struct identity_surface *)_surface; -} - -static INLINE struct identity_transfer * -identity_transfer(struct pipe_transfer *_transfer) -{ - if(!_transfer) - return NULL; - (void)identity_resource(_transfer->resource); - return (struct identity_transfer *)_transfer; -} - -static INLINE struct pipe_resource * -identity_resource_unwrap(struct pipe_resource *_resource) -{ - if(!_resource) - return NULL; - return identity_resource(_resource)->resource; -} - -static INLINE struct pipe_sampler_view * -identity_sampler_view_unwrap(struct pipe_sampler_view *_sampler_view) -{ - if (!_sampler_view) { - return NULL; - } - return identity_sampler_view(_sampler_view)->sampler_view; -} - -static INLINE struct pipe_surface * -identity_surface_unwrap(struct pipe_surface *_surface) -{ - if(!_surface) - return NULL; - return identity_surface(_surface)->surface; -} - -static INLINE struct pipe_transfer * -identity_transfer_unwrap(struct pipe_transfer *_transfer) -{ - if(!_transfer) - return NULL; - return identity_transfer(_transfer)->transfer; -} - - -struct pipe_resource * -identity_resource_create(struct identity_screen *id_screen, - struct pipe_resource *resource); - -void -identity_resource_destroy(struct identity_resource *id_resource); - -struct pipe_surface * -identity_surface_create(struct identity_context *id_context, - struct identity_resource *id_resource, - struct pipe_surface *surface); - -void -identity_surface_destroy(struct identity_context *id_context, - struct identity_surface *id_surface); - -struct pipe_sampler_view * -identity_sampler_view_create(struct identity_context *id_context, - struct identity_resource *id_resource, - struct pipe_sampler_view *view); - -void -identity_sampler_view_destroy(struct identity_context *id_context, - struct identity_sampler_view *id_sampler_view); - -struct pipe_transfer * -identity_transfer_map(struct identity_context *id_context, - struct identity_resource *id_resource, - struct pipe_transfer *transfer); - -void -identity_transfer_destroy(struct identity_context *id_context, - struct identity_transfer *id_transfer); - - -#endif /* ID_OBJECTS_H */ diff --git a/src/gallium/drivers/identity/id_public.h b/src/gallium/drivers/identity/id_public.h deleted file mode 100644 index d0d5847c61c..00000000000 --- a/src/gallium/drivers/identity/id_public.h +++ /dev/null @@ -1,37 +0,0 @@ -/************************************************************************** - * - * Copyright 2009 VMware, Inc. - * All Rights Reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the - * "Software"), to deal in the Software without restriction, including - * without limitation the rights to use, copy, modify, merge, publish, - * distribute, sub license, and/or sell copies of the Software, and to - * permit persons to whom the Software is furnished to do so, subject to - * the following conditions: - * - * The above copyright notice and this permission notice (including the - * next paragraph) shall be included in all copies or substantial portions - * of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. - * IN NO EVENT SHALL VMWARE AND/OR ITS SUPPLIERS BE LIABLE FOR - * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, - * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE - * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - **************************************************************************/ - -#ifndef ID_PUBLIC_H -#define ID_PUBLIC_H - -struct pipe_screen; -struct pipe_context; - -struct pipe_screen * -identity_screen_create(struct pipe_screen *screen); - -#endif /* ID_PUBLIC_H */ diff --git a/src/gallium/drivers/identity/id_screen.c b/src/gallium/drivers/identity/id_screen.c deleted file mode 100644 index 28cfa1f62b1..00000000000 --- a/src/gallium/drivers/identity/id_screen.c +++ /dev/null @@ -1,286 +0,0 @@ -/************************************************************************** - * - * Copyright 2009 VMware, Inc. - * All Rights Reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the - * "Software"), to deal in the Software without restriction, including - * without limitation the rights to use, copy, modify, merge, publish, - * distribute, sub license, and/or sell copies of the Software, and to - * permit persons to whom the Software is furnished to do so, subject to - * the following conditions: - * - * The above copyright notice and this permission notice (including the - * next paragraph) shall be included in all copies or substantial portions - * of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. - * IN NO EVENT SHALL VMWARE AND/OR ITS SUPPLIERS BE LIABLE FOR - * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, - * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE - * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - **************************************************************************/ - - -#include "pipe/p_screen.h" -#include "pipe/p_state.h" -#include "util/u_memory.h" - -#include "id_public.h" -#include "id_screen.h" -#include "id_context.h" -#include "id_objects.h" - - -static void -identity_screen_destroy(struct pipe_screen *_screen) -{ - struct identity_screen *id_screen = identity_screen(_screen); - struct pipe_screen *screen = id_screen->screen; - - screen->destroy(screen); - - FREE(id_screen); -} - -static const char * -identity_screen_get_name(struct pipe_screen *_screen) -{ - struct identity_screen *id_screen = identity_screen(_screen); - struct pipe_screen *screen = id_screen->screen; - - return screen->get_name(screen); -} - -static const char * -identity_screen_get_vendor(struct pipe_screen *_screen) -{ - struct identity_screen *id_screen = identity_screen(_screen); - struct pipe_screen *screen = id_screen->screen; - - return screen->get_vendor(screen); -} - -static int -identity_screen_get_param(struct pipe_screen *_screen, - enum pipe_cap param) -{ - struct identity_screen *id_screen = identity_screen(_screen); - struct pipe_screen *screen = id_screen->screen; - - return screen->get_param(screen, - param); -} - -static int -identity_screen_get_shader_param(struct pipe_screen *_screen, - unsigned shader, enum pipe_shader_cap param) -{ - struct identity_screen *id_screen = identity_screen(_screen); - struct pipe_screen *screen = id_screen->screen; - - return screen->get_shader_param(screen, shader, - param); -} - -static float -identity_screen_get_paramf(struct pipe_screen *_screen, - enum pipe_capf param) -{ - struct identity_screen *id_screen = identity_screen(_screen); - struct pipe_screen *screen = id_screen->screen; - - return screen->get_paramf(screen, - param); -} - -static boolean -identity_screen_is_format_supported(struct pipe_screen *_screen, - enum pipe_format format, - enum pipe_texture_target target, - unsigned sample_count, - unsigned tex_usage) -{ - struct identity_screen *id_screen = identity_screen(_screen); - struct pipe_screen *screen = id_screen->screen; - - return screen->is_format_supported(screen, - format, - target, - sample_count, - tex_usage); -} - -static struct pipe_context * -identity_screen_context_create(struct pipe_screen *_screen, - void *priv) -{ - struct identity_screen *id_screen = identity_screen(_screen); - struct pipe_screen *screen = id_screen->screen; - struct pipe_context *result; - - result = screen->context_create(screen, priv); - if (result) - return identity_context_create(_screen, result); - return NULL; -} - -static struct pipe_resource * -identity_screen_resource_create(struct pipe_screen *_screen, - const struct pipe_resource *templat) -{ - struct identity_screen *id_screen = identity_screen(_screen); - struct pipe_screen *screen = id_screen->screen; - struct pipe_resource *result; - - result = screen->resource_create(screen, - templat); - - if (result) - return identity_resource_create(id_screen, result); - return NULL; -} - -static struct pipe_resource * -identity_screen_resource_from_handle(struct pipe_screen *_screen, - const struct pipe_resource *templ, - struct winsys_handle *handle) -{ - struct identity_screen *id_screen = identity_screen(_screen); - struct pipe_screen *screen = id_screen->screen; - struct pipe_resource *result; - - /* TODO trace call */ - - result = screen->resource_from_handle(screen, templ, handle); - - result = identity_resource_create(identity_screen(_screen), result); - - return result; -} - -static boolean -identity_screen_resource_get_handle(struct pipe_screen *_screen, - struct pipe_resource *_resource, - struct winsys_handle *handle) -{ - struct identity_screen *id_screen = identity_screen(_screen); - struct identity_resource *id_resource = identity_resource(_resource); - struct pipe_screen *screen = id_screen->screen; - struct pipe_resource *resource = id_resource->resource; - - /* TODO trace call */ - - return screen->resource_get_handle(screen, resource, handle); -} - - - -static void -identity_screen_resource_destroy(struct pipe_screen *screen, - struct pipe_resource *_resource) -{ - identity_resource_destroy(identity_resource(_resource)); -} - - -static void -identity_screen_flush_frontbuffer(struct pipe_screen *_screen, - struct pipe_resource *_resource, - unsigned level, unsigned layer, - void *context_private, - struct pipe_box *sub_box) -{ - struct identity_screen *id_screen = identity_screen(_screen); - struct identity_resource *id_resource = identity_resource(_resource); - struct pipe_screen *screen = id_screen->screen; - struct pipe_resource *resource = id_resource->resource; - - screen->flush_frontbuffer(screen, - resource, - level, layer, - context_private, sub_box); -} - -static void -identity_screen_fence_reference(struct pipe_screen *_screen, - struct pipe_fence_handle **ptr, - struct pipe_fence_handle *fence) -{ - struct identity_screen *id_screen = identity_screen(_screen); - struct pipe_screen *screen = id_screen->screen; - - screen->fence_reference(screen, - ptr, - fence); -} - -static boolean -identity_screen_fence_signalled(struct pipe_screen *_screen, - struct pipe_fence_handle *fence) -{ - struct identity_screen *id_screen = identity_screen(_screen); - struct pipe_screen *screen = id_screen->screen; - - return screen->fence_signalled(screen, - fence); -} - -static boolean -identity_screen_fence_finish(struct pipe_screen *_screen, - struct pipe_fence_handle *fence, - uint64_t timeout) -{ - struct identity_screen *id_screen = identity_screen(_screen); - struct pipe_screen *screen = id_screen->screen; - - return screen->fence_finish(screen, - fence, - timeout); -} - -static uint64_t -identity_screen_get_timestamp(struct pipe_screen *_screen) -{ - struct identity_screen *id_screen = identity_screen(_screen); - struct pipe_screen *screen = id_screen->screen; - - return screen->get_timestamp(screen); -} - -struct pipe_screen * -identity_screen_create(struct pipe_screen *screen) -{ - struct identity_screen *id_screen; - - id_screen = CALLOC_STRUCT(identity_screen); - if (!id_screen) { - return NULL; - } - - id_screen->base.destroy = identity_screen_destroy; - id_screen->base.get_name = identity_screen_get_name; - id_screen->base.get_vendor = identity_screen_get_vendor; - id_screen->base.get_param = identity_screen_get_param; - id_screen->base.get_shader_param = identity_screen_get_shader_param; - id_screen->base.get_paramf = identity_screen_get_paramf; - id_screen->base.is_format_supported = identity_screen_is_format_supported; - id_screen->base.context_create = identity_screen_context_create; - id_screen->base.resource_create = identity_screen_resource_create; - id_screen->base.resource_from_handle = identity_screen_resource_from_handle; - id_screen->base.resource_get_handle = identity_screen_resource_get_handle; - id_screen->base.resource_destroy = identity_screen_resource_destroy; - id_screen->base.flush_frontbuffer = identity_screen_flush_frontbuffer; - id_screen->base.fence_reference = identity_screen_fence_reference; - id_screen->base.fence_signalled = identity_screen_fence_signalled; - id_screen->base.fence_finish = identity_screen_fence_finish; - id_screen->base.get_timestamp = identity_screen_get_timestamp; - - id_screen->screen = screen; - - return &id_screen->base; -} diff --git a/src/gallium/drivers/identity/id_screen.h b/src/gallium/drivers/identity/id_screen.h deleted file mode 100644 index 2c4f1290894..00000000000 --- a/src/gallium/drivers/identity/id_screen.h +++ /dev/null @@ -1,48 +0,0 @@ -/************************************************************************** - * - * Copyright 2009 VMware, Inc. - * All Rights Reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the - * "Software"), to deal in the Software without restriction, including - * without limitation the rights to use, copy, modify, merge, publish, - * distribute, sub license, and/or sell copies of the Software, and to - * permit persons to whom the Software is furnished to do so, subject to - * the following conditions: - * - * The above copyright notice and this permission notice (including the - * next paragraph) shall be included in all copies or substantial portions - * of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. - * IN NO EVENT SHALL VMWARE AND/OR ITS SUPPLIERS BE LIABLE FOR - * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, - * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE - * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - **************************************************************************/ - -#ifndef ID_SCREEN_H -#define ID_SCREEN_H - -#include "pipe/p_screen.h" -#include "pipe/p_defines.h" - - -struct identity_screen { - struct pipe_screen base; - - struct pipe_screen *screen; -}; - - -static INLINE struct identity_screen * -identity_screen(struct pipe_screen *screen) -{ - return (struct identity_screen *)screen; -} - -#endif /* ID_SCREEN_H */ diff --git a/src/gallium/targets/egl-static/Makefile.am b/src/gallium/targets/egl-static/Makefile.am index 85f2ac1b785..0056276469f 100644 --- a/src/gallium/targets/egl-static/Makefile.am +++ b/src/gallium/targets/egl-static/Makefile.am @@ -67,7 +67,6 @@ egl_gallium_la_LIBADD = \ $(top_builddir)/src/loader/libloader.la \ $(top_builddir)/src/gallium/auxiliary/libgalliumvl_stub.la \ $(top_builddir)/src/gallium/auxiliary/libgallium.la \ - $(top_builddir)/src/gallium/drivers/identity/libidentity.la \ $(top_builddir)/src/gallium/drivers/trace/libtrace.la \ $(top_builddir)/src/gallium/drivers/rbug/librbug.la \ $(top_builddir)/src/gallium/state_trackers/egl/libegl.la \ |