home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / mesa5.zip / mesa5src.zip / convolve.h < prev    next >
C/C++ Source or Header  |  2001-02-06  |  4KB  |  109 lines

  1. /* $Id: convolve.h,v 1.4 2001/02/06 17:22:16 brianp Exp $ */
  2.  
  3. /*
  4.  * Mesa 3-D graphics library
  5.  * Version:  3.5
  6.  *
  7.  * Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
  8.  *
  9.  * Permission is hereby granted, free of charge, to any person obtaining a
  10.  * copy of this software and associated documentation files (the "Software"),
  11.  * to deal in the Software without restriction, including without limitation
  12.  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
  13.  * and/or sell copies of the Software, and to permit persons to whom the
  14.  * Software is furnished to do so, subject to the following conditions:
  15.  *
  16.  * The above copyright notice and this permission notice shall be included
  17.  * in all copies or substantial portions of the Software.
  18.  *
  19.  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
  20.  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  21.  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
  22.  * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
  23.  * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
  24.  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  25.  */
  26.  
  27.  
  28. #ifndef CONVOLVE_H
  29. #define CONVOLVE_H
  30.  
  31.  
  32. #include "mtypes.h"
  33.  
  34.  
  35. extern void
  36. _mesa_ConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width,
  37.                           GLenum format, GLenum type, const GLvoid *image);
  38.  
  39. extern void
  40. _mesa_ConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width,
  41.                           GLsizei height, GLenum format, GLenum type,
  42.                           const GLvoid *image);
  43.  
  44. extern void
  45. _mesa_ConvolutionParameterf(GLenum target, GLenum pname, GLfloat params);
  46.  
  47. extern void
  48. _mesa_ConvolutionParameterfv(GLenum target, GLenum pname,
  49.                              const GLfloat *params);
  50.  
  51. extern void
  52. _mesa_ConvolutionParameteri(GLenum target, GLenum pname, GLint params);
  53.  
  54. extern void
  55. _mesa_ConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params);
  56.  
  57. extern void
  58. _mesa_CopyConvolutionFilter1D(GLenum target, GLenum internalformat,
  59.                               GLint x, GLint y, GLsizei width);
  60.  
  61. extern void
  62. _mesa_CopyConvolutionFilter2D(GLenum target, GLenum internalformat,
  63.                               GLint x, GLint y, GLsizei width, GLsizei height);
  64.  
  65. extern void
  66. _mesa_GetConvolutionFilter(GLenum target, GLenum format, GLenum type,
  67.                            GLvoid *image);
  68.  
  69. extern void
  70. _mesa_GetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params);
  71.  
  72. extern void
  73. _mesa_GetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params);
  74.  
  75. extern void
  76. _mesa_GetSeparableFilter(GLenum target, GLenum format, GLenum type,
  77.                          GLvoid *row, GLvoid *column, GLvoid *span);
  78.  
  79. extern void
  80. _mesa_SeparableFilter2D(GLenum target, GLenum internalformat,
  81.                         GLsizei width, GLsizei height,
  82.                         GLenum format, GLenum type,
  83.                         const GLvoid *row, const GLvoid *column);
  84.  
  85.  
  86.  
  87. extern void
  88. _mesa_convolve_1d_image(const GLcontext *ctx, GLsizei *width,
  89.                         const GLfloat *srcImage, GLfloat *dstImage);
  90.  
  91.  
  92. extern void
  93. _mesa_convolve_2d_image(const GLcontext *ctx, GLsizei *width, GLsizei *height,
  94.                         const GLfloat *srcImage, GLfloat *dstImage);
  95.  
  96.  
  97. extern void
  98. _mesa_convolve_sep_image(const GLcontext *ctx,
  99.                          GLsizei *width, GLsizei *height,
  100.                          const GLfloat *srcImage, GLfloat *dstImage);
  101.  
  102.  
  103. extern void
  104. _mesa_adjust_image_for_convolution(const GLcontext *ctx, GLuint dimensions,
  105.                                    GLsizei *width, GLsizei *height);
  106.  
  107.  
  108. #endif
  109.