gimpadaptivesupersample.h 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. /* LIBGIMP - The GIMP Library
  2. * Copyright (C) 1995-1997 Peter Mattis and Spencer Kimball
  3. *
  4. * This library is free software: you can redistribute it and/or
  5. * modify it under the terms of the GNU Lesser General Public
  6. * License as published by the Free Software Foundation; either
  7. * version 3 of the License, or (at your option) any later version.
  8. *
  9. * This library is distributed in the hope that it will be useful,
  10. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  12. * Library General Public License for more details.
  13. *
  14. * You should have received a copy of the GNU Lesser General Public
  15. * License along with this library. If not, see
  16. * <https://www.gnu.org/licenses/>.
  17. */
  18. #if !defined (__GIMP_COLOR_H_INSIDE__) && !defined (GIMP_COLOR_COMPILATION)
  19. #error "Only <libgimpcolor/gimpcolor.h> can be included directly."
  20. #endif
  21. #ifndef __GIMP_ADAPTIVE_SUPERSAMPLE_H__
  22. #define __GIMP_ADAPTIVE_SUPERSAMPLE_H__
  23. G_BEGIN_DECLS
  24. /* For information look into the C source or the html documentation */
  25. /**
  26. * GimpRenderFunc:
  27. * @x:
  28. * @y:
  29. * @color: (out caller-allocates): The rendered pixel as RGB
  30. * @data: (closure):
  31. */
  32. typedef void (* GimpRenderFunc) (gdouble x,
  33. gdouble y,
  34. GimpRGB *color,
  35. gpointer data);
  36. /**
  37. * GimpPutPixelFunc:
  38. * @x:
  39. * @y:
  40. * @color:
  41. * @data: (closure):
  42. */
  43. typedef void (* GimpPutPixelFunc) (gint x,
  44. gint y,
  45. GimpRGB *color,
  46. gpointer data);
  47. /**
  48. * GimpProgressFunc:
  49. * @min:
  50. * @max:
  51. * @current:
  52. * @data: (closure):
  53. */
  54. typedef void (* GimpProgressFunc) (gint min,
  55. gint max,
  56. gint current,
  57. gpointer data);
  58. gulong gimp_adaptive_supersample_area (gint x1,
  59. gint y1,
  60. gint x2,
  61. gint y2,
  62. gint max_depth,
  63. gdouble threshold,
  64. GimpRenderFunc render_func,
  65. gpointer render_data,
  66. GimpPutPixelFunc put_pixel_func,
  67. gpointer put_pixel_data,
  68. GimpProgressFunc progress_func,
  69. gpointer progress_data);
  70. G_END_DECLS
  71. #endif /* __GIMP_ADAPTIVE_SUPERSAMPLE_H__ */