1
/**************************************************************************
3
* Copyright 2007 VMware, Inc.
6
* Permission is hereby granted, free of charge, to any person obtaining a
7
* copy of this software and associated documentation files (the
8
* "Software"), to deal in the Software without restriction, including
9
* without limitation the rights to use, copy, modify, merge, publish,
10
* distribute, sub license, and/or sell copies of the Software, and to
11
* permit persons to whom the Software is furnished to do so, subject to
12
* the following conditions:
14
* The above copyright notice and this permission notice (including the
15
* next paragraph) shall be included in all copies or substantial portions
18
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
19
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
20
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
21
* IN NO EVENT SHALL VMWARE AND/OR ITS SUPPLIERS BE LIABLE FOR
22
* ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
23
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
24
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
26
**************************************************************************/
29
#ifndef ST_CB_DRAWPIXELS_H
30
#define ST_CB_DRAWPIXELS_H
35
struct dd_function_table;
38
struct gl_pixelstore_attrib;
42
st_destroy_drawpix(struct st_context *st);
44
extern const struct tgsi_token *
45
st_get_drawpix_shader(const struct tgsi_token *tokens, bool use_texcoord,
46
bool scale_and_bias, unsigned scale_const,
47
unsigned bias_const, bool pixel_maps,
48
unsigned drawpix_sampler, unsigned pixelmap_sampler,
49
unsigned texcoord_const, unsigned tex_target);
52
st_make_passthrough_vertex_shader(struct st_context *st);
54
void st_DrawPixels(struct gl_context *ctx, GLint x, GLint y,
55
GLsizei width, GLsizei height,
56
GLenum format, GLenum type,
57
const struct gl_pixelstore_attrib *unpack, const void *pixels);
58
void st_CopyPixels(struct gl_context *ctx, GLint srcx, GLint srcy,
59
GLsizei width, GLsizei height,
60
GLint dstx, GLint dsty, GLenum type);
62
#endif /* ST_CB_DRAWPIXELS_H */