gdk_pixbuf2 2.2.4-x64-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (218) hide show
  1. checksums.yaml +7 -0
  2. data/README +29 -0
  3. data/Rakefile +34 -0
  4. data/ext/gdk_pixbuf2/depend +11 -0
  5. data/ext/gdk_pixbuf2/extconf.rb +66 -0
  6. data/ext/gdk_pixbuf2/gdk_pixbuf2.def +2 -0
  7. data/ext/gdk_pixbuf2/rbgdk-pixbuf-format.c +179 -0
  8. data/ext/gdk_pixbuf2/rbgdk-pixbuf-loader.c +164 -0
  9. data/ext/gdk_pixbuf2/rbgdk-pixbuf.c +737 -0
  10. data/ext/gdk_pixbuf2/rbgdk-pixbuf.h +41 -0
  11. data/ext/gdk_pixbuf2/rbgdk-pixbuf2conversions.h +42 -0
  12. data/ext/gdk_pixbuf2/rbgdk-pixbuf2private.h +35 -0
  13. data/ext/gdk_pixbuf2/rbgdk-pixbufanimation.c +93 -0
  14. data/ext/gdk_pixbuf2/rbgdk-pixbufanimationiter.c +71 -0
  15. data/ext/gdk_pixbuf2/rbgdk-pixbufsimpleanim.c +53 -0
  16. data/ext/gdk_pixbuf2/rbgdk-pixdata.c +213 -0
  17. data/extconf.rb +49 -0
  18. data/lib/2.0/gdk_pixbuf2.so +0 -0
  19. data/lib/2.1/gdk_pixbuf2.so +0 -0
  20. data/lib/2.2/gdk_pixbuf2.so +0 -0
  21. data/lib/gdk_pixbuf2.rb +57 -0
  22. data/sample/anim.rb +38 -0
  23. data/sample/composite.rb +45 -0
  24. data/sample/flip.rb +47 -0
  25. data/sample/floppybuddy.gif +0 -0
  26. data/sample/format.rb +39 -0
  27. data/sample/gnome-foot.png +0 -0
  28. data/sample/inline.rb +37 -0
  29. data/sample/loader.rb +20 -0
  30. data/sample/pixdata.rb +39 -0
  31. data/sample/rotate.rb +45 -0
  32. data/sample/save.rb +25 -0
  33. data/sample/scale.rb +45 -0
  34. data/sample/simpleanim.rb +34 -0
  35. data/sample/utils.rb +44 -0
  36. data/sample/xpm.rb +40 -0
  37. data/vendor/local/bin/gdk-pixbuf-csource.exe +0 -0
  38. data/vendor/local/bin/gdk-pixbuf-pixdata.exe +0 -0
  39. data/vendor/local/bin/gdk-pixbuf-query-loaders.exe +0 -0
  40. data/vendor/local/bin/libgdk_pixbuf-2.0-0.dll +0 -0
  41. data/vendor/local/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-animation.h +204 -0
  42. data/vendor/local/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h +464 -0
  43. data/vendor/local/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-enum-types.h +33 -0
  44. data/vendor/local/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-features.h +120 -0
  45. data/vendor/local/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-io.h +343 -0
  46. data/vendor/local/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-loader.h +108 -0
  47. data/vendor/local/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-marshal.h +36 -0
  48. data/vendor/local/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-simple-anim.h +64 -0
  49. data/vendor/local/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-transform.h +158 -0
  50. data/vendor/local/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf.h +43 -0
  51. data/vendor/local/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixdata.h +168 -0
  52. data/vendor/local/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache +139 -0
  53. data/vendor/local/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.a +0 -0
  54. data/vendor/local/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.dll +0 -0
  55. data/vendor/local/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.dll.a +0 -0
  56. data/vendor/local/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.la +41 -0
  57. data/vendor/local/lib/gdk_pixbuf-2.0.def +128 -0
  58. data/vendor/local/lib/girepository-1.0/GdkPixbuf-2.0.typelib +0 -0
  59. data/vendor/local/lib/libgdk_pixbuf-2.0.dll.a +0 -0
  60. data/vendor/local/lib/libgdk_pixbuf-2.0.la +41 -0
  61. data/vendor/local/lib/pkgconfig/gdk-pixbuf-2.0.pc +19 -0
  62. data/vendor/local/share/gir-1.0/GdkPixbuf-2.0.gir +3443 -0
  63. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/GdkPixbufLoader.html +827 -0
  64. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/annotation-glossary.html +65 -0
  65. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/api-index-2-12.html +35 -0
  66. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/api-index-2-14.html +46 -0
  67. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/api-index-2-2.html +108 -0
  68. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/api-index-2-26.html +50 -0
  69. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/api-index-2-28.html +47 -0
  70. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/api-index-2-30.html +35 -0
  71. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/api-index-2-4.html +72 -0
  72. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/api-index-2-6.html +65 -0
  73. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/api-index-2-8.html +39 -0
  74. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/api-index-deprecated.html +53 -0
  75. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/api-index-full.html +787 -0
  76. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/composite.png +0 -0
  77. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-Animations.html +1068 -0
  78. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-File-Loading.html +794 -0
  79. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-File-saving.html +864 -0
  80. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-Image-Data-in-Memory.html +491 -0
  81. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-Inline-data.html +639 -0
  82. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-Module-Interface.html +1298 -0
  83. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-Reference-Counting-and-Memory-Mangement.html +208 -0
  84. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-Scaling.html +914 -0
  85. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-The-GdkPixbuf-Structure.html +898 -0
  86. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-Utilities.html +381 -0
  87. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-Versioning.html +184 -0
  88. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-X-Drawables-to-Pixbufs.html +197 -0
  89. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-Xlib-Rendering.html +438 -0
  90. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-XlibRGB.html +1115 -0
  91. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-csource.html +167 -0
  92. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-gdk-pixbuf-Xlib-initialization.html +159 -0
  93. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-gdk-pixbuf-from-drawables.html +45 -0
  94. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-gdk-pixbuf-rendering.html +44 -0
  95. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-query-loaders.html +85 -0
  96. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf.devhelp2 +226 -0
  97. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/home.png +0 -0
  98. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/index.html +150 -0
  99. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/index.sgml +322 -0
  100. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/left-insensitive.png +0 -0
  101. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/left.png +0 -0
  102. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/license.html +59 -0
  103. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/right-insensitive.png +0 -0
  104. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/right.png +0 -0
  105. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/rn01.html +101 -0
  106. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/rn02.html +50 -0
  107. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/style.css +476 -0
  108. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/up-insensitive.png +0 -0
  109. data/vendor/local/share/gtk-doc/html/gdk-pixbuf/up.png +0 -0
  110. data/vendor/local/share/license/gdk-pixbuf/AUTHORS +65 -0
  111. data/vendor/local/share/license/gdk-pixbuf/COPYING +482 -0
  112. data/vendor/local/share/locale/af/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  113. data/vendor/local/share/locale/ang/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  114. data/vendor/local/share/locale/ar/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  115. data/vendor/local/share/locale/as/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  116. data/vendor/local/share/locale/ast/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  117. data/vendor/local/share/locale/az/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  118. data/vendor/local/share/locale/be/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  119. data/vendor/local/share/locale/be@latin/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  120. data/vendor/local/share/locale/bg/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  121. data/vendor/local/share/locale/bn/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  122. data/vendor/local/share/locale/bn_IN/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  123. data/vendor/local/share/locale/br/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  124. data/vendor/local/share/locale/bs/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  125. data/vendor/local/share/locale/ca/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  126. data/vendor/local/share/locale/ca@valencia/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  127. data/vendor/local/share/locale/crh/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  128. data/vendor/local/share/locale/cs/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  129. data/vendor/local/share/locale/csb/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  130. data/vendor/local/share/locale/cy/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  131. data/vendor/local/share/locale/da/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  132. data/vendor/local/share/locale/de/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  133. data/vendor/local/share/locale/dz/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  134. data/vendor/local/share/locale/el/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  135. data/vendor/local/share/locale/en@shaw/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  136. data/vendor/local/share/locale/en_CA/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  137. data/vendor/local/share/locale/en_GB/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  138. data/vendor/local/share/locale/eo/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  139. data/vendor/local/share/locale/es/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  140. data/vendor/local/share/locale/et/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  141. data/vendor/local/share/locale/eu/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  142. data/vendor/local/share/locale/fa/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  143. data/vendor/local/share/locale/fi/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  144. data/vendor/local/share/locale/fr/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  145. data/vendor/local/share/locale/ga/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  146. data/vendor/local/share/locale/gl/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  147. data/vendor/local/share/locale/gu/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  148. data/vendor/local/share/locale/he/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  149. data/vendor/local/share/locale/hi/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  150. data/vendor/local/share/locale/hr/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  151. data/vendor/local/share/locale/hu/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  152. data/vendor/local/share/locale/hy/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  153. data/vendor/local/share/locale/ia/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  154. data/vendor/local/share/locale/id/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  155. data/vendor/local/share/locale/io/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  156. data/vendor/local/share/locale/is/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  157. data/vendor/local/share/locale/it/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  158. data/vendor/local/share/locale/ja/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  159. data/vendor/local/share/locale/ka/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  160. data/vendor/local/share/locale/km/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  161. data/vendor/local/share/locale/kn/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  162. data/vendor/local/share/locale/ko/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  163. data/vendor/local/share/locale/ku/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  164. data/vendor/local/share/locale/li/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  165. data/vendor/local/share/locale/lt/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  166. data/vendor/local/share/locale/lv/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  167. data/vendor/local/share/locale/mai/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  168. data/vendor/local/share/locale/mi/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  169. data/vendor/local/share/locale/mk/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  170. data/vendor/local/share/locale/ml/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  171. data/vendor/local/share/locale/mn/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  172. data/vendor/local/share/locale/mr/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  173. data/vendor/local/share/locale/ms/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  174. data/vendor/local/share/locale/my/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  175. data/vendor/local/share/locale/nb/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  176. data/vendor/local/share/locale/nds/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  177. data/vendor/local/share/locale/ne/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  178. data/vendor/local/share/locale/nl/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  179. data/vendor/local/share/locale/nn/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  180. data/vendor/local/share/locale/nso/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  181. data/vendor/local/share/locale/oc/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  182. data/vendor/local/share/locale/or/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  183. data/vendor/local/share/locale/pa/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  184. data/vendor/local/share/locale/pl/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  185. data/vendor/local/share/locale/ps/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  186. data/vendor/local/share/locale/pt/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  187. data/vendor/local/share/locale/pt_BR/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  188. data/vendor/local/share/locale/ro/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  189. data/vendor/local/share/locale/ru/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  190. data/vendor/local/share/locale/si/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  191. data/vendor/local/share/locale/sk/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  192. data/vendor/local/share/locale/sl/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  193. data/vendor/local/share/locale/sq/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  194. data/vendor/local/share/locale/sr/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  195. data/vendor/local/share/locale/sr@ije/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  196. data/vendor/local/share/locale/sr@latin/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  197. data/vendor/local/share/locale/sv/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  198. data/vendor/local/share/locale/ta/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  199. data/vendor/local/share/locale/te/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  200. data/vendor/local/share/locale/tg/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  201. data/vendor/local/share/locale/th/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  202. data/vendor/local/share/locale/tk/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  203. data/vendor/local/share/locale/tr/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  204. data/vendor/local/share/locale/tt/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  205. data/vendor/local/share/locale/ug/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  206. data/vendor/local/share/locale/uk/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  207. data/vendor/local/share/locale/uz/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  208. data/vendor/local/share/locale/uz@cyrillic/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  209. data/vendor/local/share/locale/vi/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  210. data/vendor/local/share/locale/wa/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  211. data/vendor/local/share/locale/xh/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  212. data/vendor/local/share/locale/yi/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  213. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  214. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  215. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/gdk-pixbuf.mo +0 -0
  216. data/vendor/local/share/man/man1/gdk-pixbuf-csource.1 +135 -0
  217. data/vendor/local/share/man/man1/gdk-pixbuf-query-loaders.1 +73 -0
  218. metadata +273 -0
@@ -0,0 +1,108 @@
1
+ /* GdkPixbuf library - Progressive loader object
2
+ *
3
+ * Copyright (C) 1999 The Free Software Foundation
4
+ *
5
+ * Authors: Mark Crichton <crichton@gimp.org>
6
+ * Miguel de Icaza <miguel@gnu.org>
7
+ * Federico Mena-Quintero <federico@gimp.org>
8
+ * Jonathan Blandford <jrb@redhat.com>
9
+ *
10
+ * This library is free software; you can redistribute it and/or
11
+ * modify it under the terms of the GNU Lesser General Public
12
+ * License as published by the Free Software Foundation; either
13
+ * version 2 of the License, or (at your option) any later version.
14
+ *
15
+ * This library is distributed in the hope that it will be useful,
16
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
17
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18
+ * Lesser General Public License for more details.
19
+ *
20
+ * You should have received a copy of the GNU Lesser General Public
21
+ * License along with this library; if not, see <http://www.gnu.org/licenses/>.
22
+ */
23
+
24
+ #ifndef GDK_PIXBUF_LOADER_H
25
+ #define GDK_PIXBUF_LOADER_H
26
+
27
+ #if defined(GDK_PIXBUF_DISABLE_SINGLE_INCLUDES) && !defined (GDK_PIXBUF_H_INSIDE) && !defined (GDK_PIXBUF_COMPILATION)
28
+ #error "Only <gdk-pixbuf/gdk-pixbuf.h> can be included directly."
29
+ #endif
30
+
31
+ #include <glib.h>
32
+ #include <glib-object.h>
33
+ #include <gdk-pixbuf/gdk-pixbuf-core.h>
34
+ #include <gdk-pixbuf/gdk-pixbuf-animation.h>
35
+ #include <gdk-pixbuf/gdk-pixbuf-io.h>
36
+
37
+ G_BEGIN_DECLS
38
+
39
+ #define GDK_TYPE_PIXBUF_LOADER (gdk_pixbuf_loader_get_type ())
40
+ #define GDK_PIXBUF_LOADER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GDK_TYPE_PIXBUF_LOADER, GdkPixbufLoader))
41
+ #define GDK_PIXBUF_LOADER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GDK_TYPE_PIXBUF_LOADER, GdkPixbufLoaderClass))
42
+ #define GDK_IS_PIXBUF_LOADER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GDK_TYPE_PIXBUF_LOADER))
43
+ #define GDK_IS_PIXBUF_LOADER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GDK_TYPE_PIXBUF_LOADER))
44
+ #define GDK_PIXBUF_LOADER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GDK_TYPE_PIXBUF_LOADER, GdkPixbufLoaderClass))
45
+
46
+ /**
47
+ * GdkPixbufLoader:
48
+ *
49
+ * The GdkPixbufLoader struct contains only private
50
+ * fields.
51
+ */
52
+ typedef struct _GdkPixbufLoader GdkPixbufLoader;
53
+ struct _GdkPixbufLoader
54
+ {
55
+ GObject parent_instance;
56
+
57
+ /*< private >*/
58
+ gpointer priv;
59
+ };
60
+
61
+ typedef struct _GdkPixbufLoaderClass GdkPixbufLoaderClass;
62
+ struct _GdkPixbufLoaderClass
63
+ {
64
+ GObjectClass parent_class;
65
+
66
+ void (*size_prepared) (GdkPixbufLoader *loader,
67
+ int width,
68
+ int height);
69
+
70
+ void (*area_prepared) (GdkPixbufLoader *loader);
71
+
72
+ /* Last known frame needs a redraw for x, y, width, height */
73
+ void (*area_updated) (GdkPixbufLoader *loader,
74
+ int x,
75
+ int y,
76
+ int width,
77
+ int height);
78
+
79
+ void (*closed) (GdkPixbufLoader *loader);
80
+ };
81
+
82
+ GType gdk_pixbuf_loader_get_type (void) G_GNUC_CONST;
83
+ GdkPixbufLoader * gdk_pixbuf_loader_new (void);
84
+ GdkPixbufLoader * gdk_pixbuf_loader_new_with_type (const char *image_type,
85
+ GError **error);
86
+ GdkPixbufLoader * gdk_pixbuf_loader_new_with_mime_type (const char *mime_type,
87
+ GError **error);
88
+ void gdk_pixbuf_loader_set_size (GdkPixbufLoader *loader,
89
+ int width,
90
+ int height);
91
+ gboolean gdk_pixbuf_loader_write (GdkPixbufLoader *loader,
92
+ const guchar *buf,
93
+ gsize count,
94
+ GError **error);
95
+ gboolean gdk_pixbuf_loader_write_bytes (GdkPixbufLoader *loader,
96
+ GBytes *buffer,
97
+ GError **error);
98
+ GdkPixbuf * gdk_pixbuf_loader_get_pixbuf (GdkPixbufLoader *loader);
99
+ GdkPixbufAnimation * gdk_pixbuf_loader_get_animation (GdkPixbufLoader *loader);
100
+ gboolean gdk_pixbuf_loader_close (GdkPixbufLoader *loader,
101
+ GError **error);
102
+ GdkPixbufFormat *gdk_pixbuf_loader_get_format (GdkPixbufLoader *loader);
103
+
104
+ G_END_DECLS
105
+
106
+ #endif
107
+
108
+
@@ -0,0 +1,36 @@
1
+ #if !defined(GDK_PIXBUF_DISABLE_DEPRECATED) || defined(GDK_PIXBUF_COMPILATION)
2
+
3
+ #ifndef ___gdk_pixbuf_marshal_MARSHAL_H__
4
+ #define ___gdk_pixbuf_marshal_MARSHAL_H__
5
+
6
+ #include <glib-object.h>
7
+
8
+ G_BEGIN_DECLS
9
+
10
+ /* VOID:VOID (./gdk-pixbuf-marshal.list:25) */
11
+ #define _gdk_pixbuf_marshal_VOID__VOID g_cclosure_marshal_VOID__VOID
12
+
13
+ /* VOID:INT,INT (./gdk-pixbuf-marshal.list:26) */
14
+ extern void _gdk_pixbuf_marshal_VOID__INT_INT (GClosure *closure,
15
+ GValue *return_value,
16
+ guint n_param_values,
17
+ const GValue *param_values,
18
+ gpointer invocation_hint,
19
+ gpointer marshal_data);
20
+
21
+ /* VOID:INT,INT,INT,INT (./gdk-pixbuf-marshal.list:27) */
22
+ extern void _gdk_pixbuf_marshal_VOID__INT_INT_INT_INT (GClosure *closure,
23
+ GValue *return_value,
24
+ guint n_param_values,
25
+ const GValue *param_values,
26
+ gpointer invocation_hint,
27
+ gpointer marshal_data);
28
+
29
+ /* VOID:POINTER (./gdk-pixbuf-marshal.list:28) */
30
+ #define _gdk_pixbuf_marshal_VOID__POINTER g_cclosure_marshal_VOID__POINTER
31
+
32
+ G_END_DECLS
33
+
34
+ #endif /* ___gdk_pixbuf_marshal_MARSHAL_H__ */
35
+
36
+ #endif /* !GDK_PIXBUF_DISABLE_DEPRECATED || GDK_PIXBUF_COMPILATION */
@@ -0,0 +1,64 @@
1
+ /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */
2
+ /* GdkPixbuf library - Simple frame-based animations
3
+ *
4
+ * Copyright (C) 2004 Dom Lachowicz
5
+ *
6
+ * Authors: Dom Lachowicz <cinamod@hotmail.com>
7
+ *
8
+ * This library is free software; you can redistribute it and/or
9
+ * modify it under the terms of the GNU Lesser General Public
10
+ * License as published by the Free Software Foundation; either
11
+ * version 2 of the License, or (at your option) any later version.
12
+ *
13
+ * This library is distributed in the hope that it will be useful,
14
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
15
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16
+ * Lesser General Public License for more details.
17
+ *
18
+ * You should have received a copy of the GNU Lesser General Public
19
+ * License along with this library; if not, see <http://www.gnu.org/licenses/>.
20
+ */
21
+
22
+ #ifndef GDK_PIXBUF_SIMPLE_ANIM_H
23
+ #define GDK_PIXBUF_SIMPLE_ANIM_H
24
+
25
+ #if defined(GDK_PIXBUF_DISABLE_SINGLE_INCLUDES) && !defined (GDK_PIXBUF_H_INSIDE) && !defined (GDK_PIXBUF_COMPILATION)
26
+ #error "Only <gdk-pixbuf/gdk-pixbuf.h> can be included directly."
27
+ #endif
28
+
29
+ #include <gdk-pixbuf/gdk-pixbuf-animation.h>
30
+
31
+ G_BEGIN_DECLS
32
+
33
+ /**
34
+ * GdkPixbufSimpleAnim:
35
+ *
36
+ * An opaque struct representing a simple animation.
37
+ */
38
+ typedef struct _GdkPixbufSimpleAnim GdkPixbufSimpleAnim;
39
+ typedef struct _GdkPixbufSimpleAnimClass GdkPixbufSimpleAnimClass;
40
+
41
+ #define GDK_TYPE_PIXBUF_SIMPLE_ANIM (gdk_pixbuf_simple_anim_get_type ())
42
+ #define GDK_PIXBUF_SIMPLE_ANIM(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_PIXBUF_SIMPLE_ANIM, GdkPixbufSimpleAnim))
43
+ #define GDK_IS_PIXBUF_SIMPLE_ANIM(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_PIXBUF_SIMPLE_ANIM))
44
+
45
+ #define GDK_PIXBUF_SIMPLE_ANIM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GDK_TYPE_PIXBUF_SIMPLE_ANIM, GdkPixbufSimpleAnimClass))
46
+ #define GDK_IS_PIXBUF_SIMPLE_ANIM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GDK_TYPE_PIXBUF_SIMPLE_ANIM))
47
+ #define GDK_PIXBUF_SIMPLE_ANIM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GDK_TYPE_PIXBUF_SIMPLE_ANIM, GdkPixbufSimpleAnimClass))
48
+
49
+ GType gdk_pixbuf_simple_anim_get_type (void) G_GNUC_CONST;
50
+ GType gdk_pixbuf_simple_anim_iter_get_type (void) G_GNUC_CONST;
51
+
52
+ GdkPixbufSimpleAnim *gdk_pixbuf_simple_anim_new (gint width,
53
+ gint height,
54
+ gfloat rate);
55
+ void gdk_pixbuf_simple_anim_add_frame (GdkPixbufSimpleAnim *animation,
56
+ GdkPixbuf *pixbuf);
57
+ void gdk_pixbuf_simple_anim_set_loop (GdkPixbufSimpleAnim *animation,
58
+ gboolean loop);
59
+ gboolean gdk_pixbuf_simple_anim_get_loop (GdkPixbufSimpleAnim *animation);
60
+
61
+ G_END_DECLS
62
+
63
+
64
+ #endif /* GDK_PIXBUF_SIMPLE_ANIM_H */
@@ -0,0 +1,158 @@
1
+ /* GdkPixbuf library - transformations
2
+ *
3
+ * Copyright (C) 2003 The Free Software Foundation
4
+ *
5
+ * Authors: Mark Crichton <crichton@gimp.org>
6
+ * Miguel de Icaza <miguel@gnu.org>
7
+ * Federico Mena-Quintero <federico@gimp.org>
8
+ * Havoc Pennington <hp@redhat.com>
9
+ *
10
+ * This library is free software; you can redistribute it and/or
11
+ * modify it under the terms of the GNU Lesser General Public
12
+ * License as published by the Free Software Foundation; either
13
+ * version 2 of the License, or (at your option) any later version.
14
+ *
15
+ * This library is distributed in the hope that it will be useful,
16
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
17
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18
+ * Lesser General Public License for more details.
19
+ *
20
+ * You should have received a copy of the GNU Lesser General Public
21
+ * License along with this library; if not, see <http://www.gnu.org/licenses/>.
22
+ */
23
+
24
+ #ifndef GDK_PIXBUF_TRANSFORM_H
25
+ #define GDK_PIXBUF_TRANSFORM_H
26
+
27
+ #if defined(GDK_PIXBUF_DISABLE_SINGLE_INCLUDES) && !defined (GDK_PIXBUF_H_INSIDE) && !defined (GDK_PIXBUF_COMPILATION)
28
+ #error "Only <gdk-pixbuf/gdk-pixbuf.h> can be included directly."
29
+ #endif
30
+
31
+ #include <glib.h>
32
+ #include <gdk-pixbuf/gdk-pixbuf-core.h>
33
+
34
+
35
+ G_BEGIN_DECLS
36
+
37
+ /* Scaling */
38
+
39
+ /**
40
+ * GdkInterpType:
41
+ * @GDK_INTERP_NEAREST: Nearest neighbor sampling; this is the fastest
42
+ * and lowest quality mode. Quality is normally unacceptable when scaling
43
+ * down, but may be OK when scaling up.
44
+ * @GDK_INTERP_TILES: This is an accurate simulation of the PostScript
45
+ * image operator without any interpolation enabled. Each pixel is
46
+ * rendered as a tiny parallelogram of solid color, the edges of which
47
+ * are implemented with antialiasing. It resembles nearest neighbor for
48
+ * enlargement, and bilinear for reduction.
49
+ * @GDK_INTERP_BILINEAR: Best quality/speed balance; use this mode by
50
+ * default. Bilinear interpolation. For enlargement, it is
51
+ * equivalent to point-sampling the ideal bilinear-interpolated image.
52
+ * For reduction, it is equivalent to laying down small tiles and
53
+ * integrating over the coverage area.
54
+ * @GDK_INTERP_HYPER: This is the slowest and highest quality
55
+ * reconstruction function. It is derived from the hyperbolic filters in
56
+ * Wolberg's "Digital Image Warping", and is formally defined as the
57
+ * hyperbolic-filter sampling the ideal hyperbolic-filter interpolated
58
+ * image (the filter is designed to be idempotent for 1:1 pixel mapping).
59
+ *
60
+ * This enumeration describes the different interpolation modes that
61
+ * can be used with the scaling functions. @GDK_INTERP_NEAREST is
62
+ * the fastest scaling method, but has horrible quality when
63
+ * scaling down. @GDK_INTERP_BILINEAR is the best choice if you
64
+ * aren't sure what to choose, it has a good speed/quality balance.
65
+ *
66
+ * <note>
67
+ * Cubic filtering is missing from the list; hyperbolic
68
+ * interpolation is just as fast and results in higher quality.
69
+ * </note>
70
+ */
71
+ typedef enum {
72
+ GDK_INTERP_NEAREST,
73
+ GDK_INTERP_TILES,
74
+ GDK_INTERP_BILINEAR,
75
+ GDK_INTERP_HYPER
76
+ } GdkInterpType;
77
+
78
+ /**
79
+ * GdkPixbufRotation:
80
+ * @GDK_PIXBUF_ROTATE_NONE: No rotation.
81
+ * @GDK_PIXBUF_ROTATE_COUNTERCLOCKWISE: Rotate by 90 degrees.
82
+ * @GDK_PIXBUF_ROTATE_UPSIDEDOWN: Rotate by 180 degrees.
83
+ * @GDK_PIXBUF_ROTATE_CLOCKWISE: Rotate by 270 degrees.
84
+ *
85
+ * The possible rotations which can be passed to gdk_pixbuf_rotate_simple().
86
+ * To make them easier to use, their numerical values are the actual degrees.
87
+ */
88
+ typedef enum {
89
+ GDK_PIXBUF_ROTATE_NONE = 0,
90
+ GDK_PIXBUF_ROTATE_COUNTERCLOCKWISE = 90,
91
+ GDK_PIXBUF_ROTATE_UPSIDEDOWN = 180,
92
+ GDK_PIXBUF_ROTATE_CLOCKWISE = 270
93
+ } GdkPixbufRotation;
94
+
95
+ void gdk_pixbuf_scale (const GdkPixbuf *src,
96
+ GdkPixbuf *dest,
97
+ int dest_x,
98
+ int dest_y,
99
+ int dest_width,
100
+ int dest_height,
101
+ double offset_x,
102
+ double offset_y,
103
+ double scale_x,
104
+ double scale_y,
105
+ GdkInterpType interp_type);
106
+ void gdk_pixbuf_composite (const GdkPixbuf *src,
107
+ GdkPixbuf *dest,
108
+ int dest_x,
109
+ int dest_y,
110
+ int dest_width,
111
+ int dest_height,
112
+ double offset_x,
113
+ double offset_y,
114
+ double scale_x,
115
+ double scale_y,
116
+ GdkInterpType interp_type,
117
+ int overall_alpha);
118
+ void gdk_pixbuf_composite_color (const GdkPixbuf *src,
119
+ GdkPixbuf *dest,
120
+ int dest_x,
121
+ int dest_y,
122
+ int dest_width,
123
+ int dest_height,
124
+ double offset_x,
125
+ double offset_y,
126
+ double scale_x,
127
+ double scale_y,
128
+ GdkInterpType interp_type,
129
+ int overall_alpha,
130
+ int check_x,
131
+ int check_y,
132
+ int check_size,
133
+ guint32 color1,
134
+ guint32 color2);
135
+
136
+ GdkPixbuf *gdk_pixbuf_scale_simple (const GdkPixbuf *src,
137
+ int dest_width,
138
+ int dest_height,
139
+ GdkInterpType interp_type);
140
+
141
+ GdkPixbuf *gdk_pixbuf_composite_color_simple (const GdkPixbuf *src,
142
+ int dest_width,
143
+ int dest_height,
144
+ GdkInterpType interp_type,
145
+ int overall_alpha,
146
+ int check_size,
147
+ guint32 color1,
148
+ guint32 color2);
149
+
150
+ GdkPixbuf *gdk_pixbuf_rotate_simple (const GdkPixbuf *src,
151
+ GdkPixbufRotation angle);
152
+ GdkPixbuf *gdk_pixbuf_flip (const GdkPixbuf *src,
153
+ gboolean horizontal);
154
+
155
+ G_END_DECLS
156
+
157
+
158
+ #endif /* GDK_PIXBUF_TRANSFORM_H */
@@ -0,0 +1,43 @@
1
+ /* GdkPixbuf library - Main header file
2
+ *
3
+ * Copyright (C) 1999 The Free Software Foundation
4
+ *
5
+ * Authors: Mark Crichton <crichton@gimp.org>
6
+ * Miguel de Icaza <miguel@gnu.org>
7
+ * Federico Mena-Quintero <federico@gimp.org>
8
+ * Havoc Pennington <hp@redhat.com>
9
+ *
10
+ * This library is free software; you can redistribute it and/or
11
+ * modify it under the terms of the GNU Lesser General Public
12
+ * License as published by the Free Software Foundation; either
13
+ * version 2 of the License, or (at your option) any later version.
14
+ *
15
+ * This library is distributed in the hope that it will be useful,
16
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
17
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18
+ * Lesser General Public License for more details.
19
+ *
20
+ * You should have received a copy of the GNU Lesser General Public
21
+ * License along with this library; if not, see <http://www.gnu.org/licenses/>.
22
+ */
23
+
24
+ #ifndef GDK_PIXBUF_H
25
+ #define GDK_PIXBUF_H
26
+
27
+ #define GDK_PIXBUF_H_INSIDE
28
+
29
+ #include <glib.h>
30
+ #include <gdk-pixbuf/gdk-pixbuf-features.h>
31
+ #include <glib-object.h>
32
+
33
+ #include <gdk-pixbuf/gdk-pixbuf-core.h>
34
+ #include <gdk-pixbuf/gdk-pixbuf-transform.h>
35
+ #include <gdk-pixbuf/gdk-pixbuf-animation.h>
36
+ #include <gdk-pixbuf/gdk-pixbuf-simple-anim.h>
37
+ #include <gdk-pixbuf/gdk-pixbuf-io.h>
38
+ #include <gdk-pixbuf/gdk-pixbuf-loader.h>
39
+ #include <gdk-pixbuf/gdk-pixbuf-enum-types.h>
40
+
41
+ #undef GDK_PIXBUF_H_INSIDE
42
+
43
+ #endif /* GDK_PIXBUF_H */
@@ -0,0 +1,168 @@
1
+ /* GdkPixbuf library - GdkPixdata - functions for inlined pixbuf handling
2
+ * Copyright (C) 1999, 2001 Tim Janik
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 2 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
+ * Lesser 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 <http://www.gnu.org/licenses/>.
16
+ */
17
+ #ifndef __GDK_PIXDATA_H__
18
+ #define __GDK_PIXDATA_H__
19
+
20
+ #include <gdk-pixbuf/gdk-pixbuf.h>
21
+
22
+ G_BEGIN_DECLS
23
+
24
+ /**
25
+ * GDK_PIXBUF_MAGIC_NUMBER:
26
+ *
27
+ * Magic number for #GdkPixdata structures.
28
+ **/
29
+ #define GDK_PIXBUF_MAGIC_NUMBER (0x47646b50) /* 'GdkP' */
30
+
31
+ /**
32
+ * GdkPixdataType:
33
+ * @GDK_PIXDATA_COLOR_TYPE_RGB: each pixel has red, green and blue samples.
34
+ * @GDK_PIXDATA_COLOR_TYPE_RGBA: each pixel has red, green and blue samples
35
+ * and an alpha value.
36
+ * @GDK_PIXDATA_COLOR_TYPE_MASK: mask for the colortype flags of the enum.
37
+ * @GDK_PIXDATA_SAMPLE_WIDTH_8: each sample has 8 bits.
38
+ * @GDK_PIXDATA_SAMPLE_WIDTH_MASK: mask for the sample width flags of the enum.
39
+ * @GDK_PIXDATA_ENCODING_RAW: the pixel data is in raw form.
40
+ * @GDK_PIXDATA_ENCODING_RLE: the pixel data is run-length encoded. Runs may
41
+ * be up to 127 bytes long; their length is stored in a single byte
42
+ * preceding the pixel data for the run. If a run is constant, its length
43
+ * byte has the high bit set and the pixel data consists of a single pixel
44
+ * which must be repeated.
45
+ * @GDK_PIXDATA_ENCODING_MASK: mask for the encoding flags of the enum.
46
+ *
47
+ * An enumeration containing three sets of flags for a #GdkPixdata struct:
48
+ * one for the used colorspace, one for the width of the samples and one
49
+ * for the encoding of the pixel data.
50
+ **/
51
+ typedef enum
52
+ {
53
+ /* colorspace + alpha */
54
+ GDK_PIXDATA_COLOR_TYPE_RGB = 0x01,
55
+ GDK_PIXDATA_COLOR_TYPE_RGBA = 0x02,
56
+ GDK_PIXDATA_COLOR_TYPE_MASK = 0xff,
57
+ /* width, support 8bits only currently */
58
+ GDK_PIXDATA_SAMPLE_WIDTH_8 = 0x01 << 16,
59
+ GDK_PIXDATA_SAMPLE_WIDTH_MASK = 0x0f << 16,
60
+ /* encoding */
61
+ GDK_PIXDATA_ENCODING_RAW = 0x01 << 24,
62
+ GDK_PIXDATA_ENCODING_RLE = 0x02 << 24,
63
+ GDK_PIXDATA_ENCODING_MASK = 0x0f << 24
64
+ } GdkPixdataType;
65
+
66
+ /**
67
+ * GdkPixdata:
68
+ * @magic: magic number. A valid #GdkPixdata structure must have
69
+ * #GDK_PIXBUF_MAGIC_NUMBER here.
70
+ * @length: less than 1 to disable length checks, otherwise
71
+ * #GDK_PIXDATA_HEADER_LENGTH + length of @pixel_data.
72
+ * @pixdata_type: information about colorspace, sample width and
73
+ * encoding, in a #GdkPixdataType.
74
+ * @rowstride: Distance in bytes between rows.
75
+ * @width: Width of the image in pixels.
76
+ * @height: Height of the image in pixels.
77
+ * @pixel_data: (array) (element-type guint8): @width x @height pixels, encoded according to @pixdata_type
78
+ * and @rowstride.
79
+ *
80
+ * A #GdkPixdata contains pixbuf information in a form suitable for
81
+ * serialization and streaming.
82
+ **/
83
+ typedef struct _GdkPixdata GdkPixdata;
84
+ struct _GdkPixdata
85
+ {
86
+ guint32 magic; /* GDK_PIXBUF_MAGIC_NUMBER */
87
+ gint32 length; /* <1 to disable length checks, otherwise:
88
+ * GDK_PIXDATA_HEADER_LENGTH + pixel_data length
89
+ */
90
+ guint32 pixdata_type; /* GdkPixdataType */
91
+ guint32 rowstride;
92
+ guint32 width;
93
+ guint32 height;
94
+ guint8 *pixel_data;
95
+ };
96
+
97
+ /**
98
+ * GDK_PIXDATA_HEADER_LENGTH:
99
+ *
100
+ * The length of a #GdkPixdata structure without the @pixel_data pointer.
101
+ **/
102
+ #define GDK_PIXDATA_HEADER_LENGTH (4 + 4 + 4 + 4 + 4 + 4)
103
+
104
+ /* the returned stream is plain htonl of GdkPixdata members + pixel_data */
105
+ guint8* gdk_pixdata_serialize (const GdkPixdata *pixdata,
106
+ guint *stream_length_p);
107
+ gboolean gdk_pixdata_deserialize (GdkPixdata *pixdata,
108
+ guint stream_length,
109
+ const guint8 *stream,
110
+ GError **error);
111
+ gpointer gdk_pixdata_from_pixbuf (GdkPixdata *pixdata,
112
+ const GdkPixbuf *pixbuf,
113
+ gboolean use_rle);
114
+ GdkPixbuf* gdk_pixbuf_from_pixdata (const GdkPixdata *pixdata,
115
+ gboolean copy_pixels,
116
+ GError **error);
117
+ /**
118
+ * GdkPixdataDumpType:
119
+ * @GDK_PIXDATA_DUMP_PIXDATA_STREAM: Generate pixbuf data stream (a single
120
+ * string containing a serialized #GdkPixdata structure in network byte
121
+ * order).
122
+ * @GDK_PIXDATA_DUMP_PIXDATA_STRUCT: Generate #GdkPixdata structure (needs
123
+ * the #GdkPixdata structure definition from gdk-pixdata.h).
124
+ * @GDK_PIXDATA_DUMP_MACROS: Generate <function>*_ROWSTRIDE</function>,
125
+ * <function>*_WIDTH</function>, <function>*_HEIGHT</function>,
126
+ * <function>*_BYTES_PER_PIXEL</function> and
127
+ * <function>*_RLE_PIXEL_DATA</function> or <function>*_PIXEL_DATA</function>
128
+ * macro definitions for the image.
129
+ * @GDK_PIXDATA_DUMP_GTYPES: Generate GLib data types instead of
130
+ * standard C data types.
131
+ * @GDK_PIXDATA_DUMP_CTYPES: Generate standard C data types instead of
132
+ * GLib data types.
133
+ * @GDK_PIXDATA_DUMP_STATIC: Generate static symbols.
134
+ * @GDK_PIXDATA_DUMP_CONST: Generate const symbols.
135
+ * @GDK_PIXDATA_DUMP_RLE_DECODER: Provide a <function>*_RUN_LENGTH_DECODE(image_buf, rle_data, size, bpp)</function>
136
+ * macro definition to decode run-length encoded image data.
137
+ *
138
+ * An enumeration which is used by gdk_pixdata_to_csource() to
139
+ * determine the form of C source to be generated. The three values
140
+ * @GDK_PIXDATA_DUMP_PIXDATA_STREAM, @GDK_PIXDATA_DUMP_PIXDATA_STRUCT
141
+ * and @GDK_PIXDATA_DUMP_MACROS are mutually exclusive, as are
142
+ * @GDK_PIXBUF_DUMP_GTYPES and @GDK_PIXBUF_DUMP_CTYPES. The remaining
143
+ * elements are optional flags that can be freely added.
144
+ **/
145
+ typedef enum
146
+ {
147
+ /* type of source to save */
148
+ GDK_PIXDATA_DUMP_PIXDATA_STREAM = 0,
149
+ GDK_PIXDATA_DUMP_PIXDATA_STRUCT = 1,
150
+ GDK_PIXDATA_DUMP_MACROS = 2,
151
+ /* type of variables to use */
152
+ GDK_PIXDATA_DUMP_GTYPES = 0,
153
+ GDK_PIXDATA_DUMP_CTYPES = 1 << 8,
154
+ GDK_PIXDATA_DUMP_STATIC = 1 << 9,
155
+ GDK_PIXDATA_DUMP_CONST = 1 << 10,
156
+ /* save RLE decoder macro? */
157
+ GDK_PIXDATA_DUMP_RLE_DECODER = 1 << 16
158
+ } GdkPixdataDumpType;
159
+
160
+
161
+ GString* gdk_pixdata_to_csource (GdkPixdata *pixdata,
162
+ const gchar *name,
163
+ GdkPixdataDumpType dump_type);
164
+
165
+
166
+ G_END_DECLS
167
+
168
+ #endif /* __GDK_PIXDATA_H__ */