ruby-iup 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (323) hide show
  1. data/Rakefile +97 -0
  2. data/doc/README +10 -0
  3. data/doc/build_install.txt +77 -0
  4. data/examples/README +16 -0
  5. data/examples/ctrl/cbox.rb +221 -0
  6. data/examples/ctrl/checkboard.rb +33 -0
  7. data/examples/ctrl/degrade.rb +73 -0
  8. data/examples/ctrl/example1.rb +53 -0
  9. data/examples/ctrl/example2.rb +39 -0
  10. data/examples/ctrl/iupcolorbar.rb +95 -0
  11. data/examples/ctrl/iupcolorbrowser.rb +45 -0
  12. data/examples/ctrl/iupdial.rb +117 -0
  13. data/examples/ctrl/iupgauge.rb +242 -0
  14. data/examples/ctrl/iupgetcolor.rb +8 -0
  15. data/examples/ctrl/iupgetparam.rb +62 -0
  16. data/examples/ctrl/iupglcanvas.rb +172 -0
  17. data/examples/ctrl/iupmask.rb +15 -0
  18. data/examples/ctrl/iupmatrix.rb +39 -0
  19. data/examples/ctrl/iupplot2.rb +603 -0
  20. data/examples/ctrl/iuptabs.rb +22 -0
  21. data/examples/ctrl/iuptree.rb +190 -0
  22. data/examples/ctrl/iupval.rb +71 -0
  23. data/examples/ctrl/numbering.rb +46 -0
  24. data/examples/ctrl/sample.rb +166 -0
  25. data/examples/dlg/iupalarm.rb +14 -0
  26. data/examples/dlg/iupfiledlg.rb +19 -0
  27. data/examples/dlg/iupgetfile.rb +19 -0
  28. data/examples/dlg/iuplistdialog.rb +26 -0
  29. data/examples/dlg/iupmessage.rb +5 -0
  30. data/examples/dlg/iupscanf.rb +17 -0
  31. data/examples/elem/iupbutton.rb +197 -0
  32. data/examples/elem/iupcanvas.rb +27 -0
  33. data/examples/elem/iupcanvas2.rb +113 -0
  34. data/examples/elem/iupcanvas3.rb +62 -0
  35. data/examples/elem/iupdialog.rb +71 -0
  36. data/examples/elem/iupdialog2.rb +25 -0
  37. data/examples/elem/iupfill.rb +51 -0
  38. data/examples/elem/iupframe.rb +25 -0
  39. data/examples/elem/iuphbox.rb +68 -0
  40. data/examples/elem/iupimage.rb +113 -0
  41. data/examples/elem/iupitem.rb +60 -0
  42. data/examples/elem/iuplabel.rb +57 -0
  43. data/examples/elem/iuplist.rb +41 -0
  44. data/examples/elem/iuplist2.rb +125 -0
  45. data/examples/elem/iupmenu.rb +32 -0
  46. data/examples/elem/iupmultiline.rb +24 -0
  47. data/examples/elem/iupmultiline2.rb +156 -0
  48. data/examples/elem/iupradio.rb +32 -0
  49. data/examples/elem/iupseparator.rb +81 -0
  50. data/examples/elem/iupsubmenu.rb +85 -0
  51. data/examples/elem/iuptext.rb +61 -0
  52. data/examples/elem/iuptimer.rb +36 -0
  53. data/examples/elem/iuptoggle.rb +110 -0
  54. data/examples/elem/iupvbox.rb +87 -0
  55. data/examples/elem/iupzbox.rb +60 -0
  56. data/examples/elem/mdisample.rb +376 -0
  57. data/examples/elem/progressbar.rb +294 -0
  58. data/examples/elem/scrollbar.rb +66 -0
  59. data/examples/elem/tray.rb +90 -0
  60. data/examples/func/iupgetattribute.rb +32 -0
  61. data/examples/func/iupidle.rb +48 -0
  62. data/ext/extconf.rb +27 -0
  63. data/ext/iup-linux/include/cd.h +494 -0
  64. data/ext/iup-linux/include/cd_canvas.hpp +358 -0
  65. data/ext/iup-linux/include/cd_old.h +158 -0
  66. data/ext/iup-linux/include/cd_private.h +362 -0
  67. data/ext/iup-linux/include/cdcgm.h +34 -0
  68. data/ext/iup-linux/include/cdclipbd.h +22 -0
  69. data/ext/iup-linux/include/cddbuf.h +23 -0
  70. data/ext/iup-linux/include/cddebug.h +24 -0
  71. data/ext/iup-linux/include/cddgn.h +23 -0
  72. data/ext/iup-linux/include/cddxf.h +22 -0
  73. data/ext/iup-linux/include/cdemf.h +22 -0
  74. data/ext/iup-linux/include/cdgdiplus.h +29 -0
  75. data/ext/iup-linux/include/cdimage.h +23 -0
  76. data/ext/iup-linux/include/cdirgb.h +30 -0
  77. data/ext/iup-linux/include/cdiup.h +22 -0
  78. data/ext/iup-linux/include/cdlua.h +39 -0
  79. data/ext/iup-linux/include/cdlua3_private.h +120 -0
  80. data/ext/iup-linux/include/cdlua5_private.h +141 -0
  81. data/ext/iup-linux/include/cdluaim.h +24 -0
  82. data/ext/iup-linux/include/cdluaiup.h +27 -0
  83. data/ext/iup-linux/include/cdluapdf.h +27 -0
  84. data/ext/iup-linux/include/cdmf.h +24 -0
  85. data/ext/iup-linux/include/cdmf_private.h +32 -0
  86. data/ext/iup-linux/include/cdnative.h +26 -0
  87. data/ext/iup-linux/include/cdpdf.h +38 -0
  88. data/ext/iup-linux/include/cdpicture.h +22 -0
  89. data/ext/iup-linux/include/cdprint.h +23 -0
  90. data/ext/iup-linux/include/cdps.h +37 -0
  91. data/ext/iup-linux/include/cdwmf.h +22 -0
  92. data/ext/iup-linux/include/im.h +282 -0
  93. data/ext/iup-linux/include/im_attrib.h +116 -0
  94. data/ext/iup-linux/include/im_attrib_flat.h +39 -0
  95. data/ext/iup-linux/include/im_binfile.h +214 -0
  96. data/ext/iup-linux/include/im_capture.h +365 -0
  97. data/ext/iup-linux/include/im_color.h +465 -0
  98. data/ext/iup-linux/include/im_colorhsi.h +61 -0
  99. data/ext/iup-linux/include/im_complex.h +160 -0
  100. data/ext/iup-linux/include/im_convert.h +127 -0
  101. data/ext/iup-linux/include/im_counter.h +69 -0
  102. data/ext/iup-linux/include/im_dib.h +195 -0
  103. data/ext/iup-linux/include/im_file.h +111 -0
  104. data/ext/iup-linux/include/im_format.h +79 -0
  105. data/ext/iup-linux/include/im_format_all.h +576 -0
  106. data/ext/iup-linux/include/im_format_avi.h +87 -0
  107. data/ext/iup-linux/include/im_format_ecw.h +93 -0
  108. data/ext/iup-linux/include/im_format_jp2.h +78 -0
  109. data/ext/iup-linux/include/im_format_raw.h +64 -0
  110. data/ext/iup-linux/include/im_format_wmv.h +100 -0
  111. data/ext/iup-linux/include/im_image.h +403 -0
  112. data/ext/iup-linux/include/im_kernel.h +315 -0
  113. data/ext/iup-linux/include/im_lib.h +191 -0
  114. data/ext/iup-linux/include/im_math.h +368 -0
  115. data/ext/iup-linux/include/im_math_op.h +219 -0
  116. data/ext/iup-linux/include/im_palette.h +172 -0
  117. data/ext/iup-linux/include/im_plus.h +73 -0
  118. data/ext/iup-linux/include/im_process.h +35 -0
  119. data/ext/iup-linux/include/im_process_ana.h +221 -0
  120. data/ext/iup-linux/include/im_process_glo.h +170 -0
  121. data/ext/iup-linux/include/im_process_loc.h +577 -0
  122. data/ext/iup-linux/include/im_process_pon.h +712 -0
  123. data/ext/iup-linux/include/im_raw.h +34 -0
  124. data/ext/iup-linux/include/im_util.h +277 -0
  125. data/ext/iup-linux/include/imlua.h +83 -0
  126. data/ext/iup-linux/include/iup.h +255 -0
  127. data/ext/iup-linux/include/iup_pplot.h +40 -0
  128. data/ext/iup-linux/include/iupcb.h +25 -0
  129. data/ext/iup-linux/include/iupcbox.h +23 -0
  130. data/ext/iup-linux/include/iupcbs.h +42 -0
  131. data/ext/iup-linux/include/iupcells.h +130 -0
  132. data/ext/iup-linux/include/iupcolorbar.h +126 -0
  133. data/ext/iup-linux/include/iupcompat.h +62 -0
  134. data/ext/iup-linux/include/iupcontrols.h +40 -0
  135. data/ext/iup-linux/include/iupcpi.h +76 -0
  136. data/ext/iup-linux/include/iupdef.h +520 -0
  137. data/ext/iup-linux/include/iupdial.h +64 -0
  138. data/ext/iup-linux/include/iupgauge.h +57 -0
  139. data/ext/iup-linux/include/iupgc.h +20 -0
  140. data/ext/iup-linux/include/iupgetparam.h +27 -0
  141. data/ext/iup-linux/include/iupgl.h +101 -0
  142. data/ext/iup-linux/include/iupim.h +21 -0
  143. data/ext/iup-linux/include/iupkey.h +290 -0
  144. data/ext/iup-linux/include/iuplua.h +41 -0
  145. data/ext/iup-linux/include/iuplua_pplot.h +26 -0
  146. data/ext/iup-linux/include/iupluacontrols.h +27 -0
  147. data/ext/iup-linux/include/iupluagl.h +26 -0
  148. data/ext/iup-linux/include/iupluaim.h +26 -0
  149. data/ext/iup-linux/include/iupluaole.h +26 -0
  150. data/ext/iup-linux/include/iupmask.h +52 -0
  151. data/ext/iup-linux/include/iupmatrix.h +69 -0
  152. data/ext/iup-linux/include/iupole.h +24 -0
  153. data/ext/iup-linux/include/iupsbox.h +20 -0
  154. data/ext/iup-linux/include/iupspeech.h +23 -0
  155. data/ext/iup-linux/include/iupspin.h +21 -0
  156. data/ext/iup-linux/include/iuptabs.h +79 -0
  157. data/ext/iup-linux/include/iuptree.h +93 -0
  158. data/ext/iup-linux/include/iupval.h +46 -0
  159. data/ext/iup-linux/include/lauxlib.h +174 -0
  160. data/ext/iup-linux/include/lua.h +388 -0
  161. data/ext/iup-linux/include/lua.hpp +9 -0
  162. data/ext/iup-linux/include/luaconf.h +763 -0
  163. data/ext/iup-linux/include/lualib.h +53 -0
  164. data/ext/iup-linux/include/old_im.h +59 -0
  165. data/ext/iup-linux/include/wd.h +78 -0
  166. data/ext/iup-linux/include/wd_old.h +85 -0
  167. data/ext/iup-linux/libcd.so +0 -0
  168. data/ext/iup-linux/libcdcontextplus.so +0 -0
  169. data/ext/iup-linux/libcdluacontextplus51.so +0 -0
  170. data/ext/iup-linux/libcdpdf.so +0 -0
  171. data/ext/iup-linux/libfreetype.so +0 -0
  172. data/ext/iup-linux/libim.so +0 -0
  173. data/ext/iup-linux/libim_fftw.so +0 -0
  174. data/ext/iup-linux/libim_jp2.so +0 -0
  175. data/ext/iup-linux/libim_process.so +0 -0
  176. data/ext/iup-linux/libiup.so +0 -0
  177. data/ext/iup-linux/libiup_pplot.so +0 -0
  178. data/ext/iup-linux/libiupcd.so +0 -0
  179. data/ext/iup-linux/libiupcontrols.so +0 -0
  180. data/ext/iup-linux/libiupgl.so +0 -0
  181. data/ext/iup-linux/libiupim.so +0 -0
  182. data/ext/iup-linux/libiupimglib.so +0 -0
  183. data/ext/iup-linux/libpdflib.so +0 -0
  184. data/ext/iup-win32/cd.dll +0 -0
  185. data/ext/iup-win32/cd.lib +0 -0
  186. data/ext/iup-win32/cdcontextplus.dll +0 -0
  187. data/ext/iup-win32/cdcontextplus.lib +0 -0
  188. data/ext/iup-win32/cdlua51.lib +0 -0
  189. data/ext/iup-win32/cdluacontextplus51.lib +0 -0
  190. data/ext/iup-win32/cdluaim51.lib +0 -0
  191. data/ext/iup-win32/cdluapdf51.lib +0 -0
  192. data/ext/iup-win32/cdpdf.dll +0 -0
  193. data/ext/iup-win32/cdpdf.lib +0 -0
  194. data/ext/iup-win32/freetype6.dll +0 -0
  195. data/ext/iup-win32/freetype6.lib +0 -0
  196. data/ext/iup-win32/im.dll +0 -0
  197. data/ext/iup-win32/im_avi.dll +0 -0
  198. data/ext/iup-win32/im_capture.dll +0 -0
  199. data/ext/iup-win32/im_ecw.dll +0 -0
  200. data/ext/iup-win32/im_fftw.dll +0 -0
  201. data/ext/iup-win32/im_jp2.dll +0 -0
  202. data/ext/iup-win32/im_process.dll +0 -0
  203. data/ext/iup-win32/im_wmv.dll +0 -0
  204. data/ext/iup-win32/include/cd.h +494 -0
  205. data/ext/iup-win32/include/cd_canvas.hpp +358 -0
  206. data/ext/iup-win32/include/cd_old.h +158 -0
  207. data/ext/iup-win32/include/cd_private.h +362 -0
  208. data/ext/iup-win32/include/cdcgm.h +34 -0
  209. data/ext/iup-win32/include/cdclipbd.h +22 -0
  210. data/ext/iup-win32/include/cddbuf.h +23 -0
  211. data/ext/iup-win32/include/cddebug.h +24 -0
  212. data/ext/iup-win32/include/cddgn.h +23 -0
  213. data/ext/iup-win32/include/cddxf.h +22 -0
  214. data/ext/iup-win32/include/cdemf.h +22 -0
  215. data/ext/iup-win32/include/cdgdiplus.h +29 -0
  216. data/ext/iup-win32/include/cdimage.h +23 -0
  217. data/ext/iup-win32/include/cdirgb.h +30 -0
  218. data/ext/iup-win32/include/cdiup.h +22 -0
  219. data/ext/iup-win32/include/cdlua.h +39 -0
  220. data/ext/iup-win32/include/cdlua3_private.h +120 -0
  221. data/ext/iup-win32/include/cdlua5_private.h +141 -0
  222. data/ext/iup-win32/include/cdluaim.h +24 -0
  223. data/ext/iup-win32/include/cdluaiup.h +27 -0
  224. data/ext/iup-win32/include/cdluapdf.h +27 -0
  225. data/ext/iup-win32/include/cdmf.h +24 -0
  226. data/ext/iup-win32/include/cdmf_private.h +32 -0
  227. data/ext/iup-win32/include/cdnative.h +26 -0
  228. data/ext/iup-win32/include/cdpdf.h +38 -0
  229. data/ext/iup-win32/include/cdpicture.h +22 -0
  230. data/ext/iup-win32/include/cdprint.h +23 -0
  231. data/ext/iup-win32/include/cdps.h +37 -0
  232. data/ext/iup-win32/include/cdwmf.h +22 -0
  233. data/ext/iup-win32/include/iup.h +255 -0
  234. data/ext/iup-win32/include/iup_pplot.h +40 -0
  235. data/ext/iup-win32/include/iupcb.h +25 -0
  236. data/ext/iup-win32/include/iupcbox.h +23 -0
  237. data/ext/iup-win32/include/iupcbs.h +42 -0
  238. data/ext/iup-win32/include/iupcells.h +130 -0
  239. data/ext/iup-win32/include/iupcolorbar.h +126 -0
  240. data/ext/iup-win32/include/iupcompat.h +62 -0
  241. data/ext/iup-win32/include/iupcontrols.h +40 -0
  242. data/ext/iup-win32/include/iupcpi.h +76 -0
  243. data/ext/iup-win32/include/iupdef.h +520 -0
  244. data/ext/iup-win32/include/iupdial.h +64 -0
  245. data/ext/iup-win32/include/iupgauge.h +57 -0
  246. data/ext/iup-win32/include/iupgc.h +20 -0
  247. data/ext/iup-win32/include/iupgetparam.h +27 -0
  248. data/ext/iup-win32/include/iupgl.h +101 -0
  249. data/ext/iup-win32/include/iupim.h +21 -0
  250. data/ext/iup-win32/include/iupkey.h +290 -0
  251. data/ext/iup-win32/include/iuplua.h +41 -0
  252. data/ext/iup-win32/include/iuplua_pplot.h +26 -0
  253. data/ext/iup-win32/include/iupluacontrols.h +27 -0
  254. data/ext/iup-win32/include/iupluagl.h +26 -0
  255. data/ext/iup-win32/include/iupluaim.h +26 -0
  256. data/ext/iup-win32/include/iupluaole.h +26 -0
  257. data/ext/iup-win32/include/iupmask.h +52 -0
  258. data/ext/iup-win32/include/iupmatrix.h +69 -0
  259. data/ext/iup-win32/include/iupole.h +24 -0
  260. data/ext/iup-win32/include/iupsbox.h +20 -0
  261. data/ext/iup-win32/include/iupspeech.h +23 -0
  262. data/ext/iup-win32/include/iupspin.h +21 -0
  263. data/ext/iup-win32/include/iuptabs.h +79 -0
  264. data/ext/iup-win32/include/iuptree.h +93 -0
  265. data/ext/iup-win32/include/iupval.h +46 -0
  266. data/ext/iup-win32/include/wd.h +78 -0
  267. data/ext/iup-win32/include/wd_old.h +85 -0
  268. data/ext/iup-win32/iup.dll +0 -0
  269. data/ext/iup-win32/iup.lib +0 -0
  270. data/ext/iup-win32/iup_pplot.dll +0 -0
  271. data/ext/iup-win32/iup_pplot.lib +0 -0
  272. data/ext/iup-win32/iupcd.dll +0 -0
  273. data/ext/iup-win32/iupcd.lib +0 -0
  274. data/ext/iup-win32/iupcontrols.dll +0 -0
  275. data/ext/iup-win32/iupcontrols.lib +0 -0
  276. data/ext/iup-win32/iupgl.dll +0 -0
  277. data/ext/iup-win32/iupgl.lib +0 -0
  278. data/ext/iup-win32/iupim.dll +0 -0
  279. data/ext/iup-win32/iupim.lib +0 -0
  280. data/ext/iup-win32/iupimglib.dll +0 -0
  281. data/ext/iup-win32/iupimglib.lib +0 -0
  282. data/ext/iup-win32/iuplua51.lib +0 -0
  283. data/ext/iup-win32/iuplua_pplot51.lib +0 -0
  284. data/ext/iup-win32/iupluacd51.lib +0 -0
  285. data/ext/iup-win32/iupluacontrols51.lib +0 -0
  286. data/ext/iup-win32/iupluagl51.lib +0 -0
  287. data/ext/iup-win32/iupluaim51.lib +0 -0
  288. data/ext/iup-win32/iupluaimglib51.lib +0 -0
  289. data/ext/iup-win32/iupluaole51.lib +0 -0
  290. data/ext/iup-win32/iupole.dll +0 -0
  291. data/ext/iup-win32/iupole.lib +0 -0
  292. data/ext/iup-win32/iupstub.lib +0 -0
  293. data/ext/iup-win32/pdflib.dll +0 -0
  294. data/ext/iup-win32/pdflib.lib +0 -0
  295. data/ext/iup.c +1261 -0
  296. data/ext/mkrf_conf.rb +72 -0
  297. data/ext/rb_cd.h +1525 -0
  298. data/ext/rb_iup.h +2446 -0
  299. data/ext/rb_iup_pplot.h +129 -0
  300. data/ext/rb_iupcb.h +13 -0
  301. data/ext/rb_iupcbox.h +40 -0
  302. data/ext/rb_iupcells.h +15 -0
  303. data/ext/rb_iupcolorbar.h +17 -0
  304. data/ext/rb_iupcompat.h +237 -0
  305. data/ext/rb_iupcontrols.h +28 -0
  306. data/ext/rb_iupdef.h +3 -0
  307. data/ext/rb_iupdial.h +24 -0
  308. data/ext/rb_iupgauge.h +15 -0
  309. data/ext/rb_iupgc.h +18 -0
  310. data/ext/rb_iupgetparam.h +72 -0
  311. data/ext/rb_iupgl.h +58 -0
  312. data/ext/rb_iupim.h +25 -0
  313. data/ext/rb_iupmask.h +189 -0
  314. data/ext/rb_iupmatrix.h +80 -0
  315. data/ext/rb_iupole.h +24 -0
  316. data/ext/rb_iupsbox.h +23 -0
  317. data/ext/rb_iupspeech.h +25 -0
  318. data/ext/rb_iupspin.h +29 -0
  319. data/ext/rb_iuptabs.h +29 -0
  320. data/ext/rb_iuptree.h +94 -0
  321. data/ext/rb_iupval.h +24 -0
  322. data/lib/README +1 -0
  323. metadata +391 -0
@@ -0,0 +1,34 @@
1
+ /** \file
2
+ * \brief RAW File Format
3
+ *
4
+ * See Copyright Notice in im_lib.h
5
+ */
6
+
7
+ #ifndef __IM_RAW_H
8
+ #define __IM_RAW_H
9
+
10
+ #if defined(__cplusplus)
11
+ extern "C" {
12
+ #endif
13
+
14
+
15
+ /** Opens a RAW image file.
16
+ * See also \ref imErrorCodes.
17
+ *
18
+ * \verbatim im.FileOpenRaw(file_name: string) -> ifile: imFile, error: number [in Lua 5] \endverbatim
19
+ * \ingroup raw */
20
+ imFile* imFileOpenRaw(const char* file_name, int *error);
21
+
22
+ /** Creates a RAW image file.
23
+ * See also \ref imErrorCodes.
24
+ *
25
+ * \verbatim im.FileNewRaw(file_name: string) -> ifile: imFile, error: number [in Lua 5] \endverbatim
26
+ * \ingroup raw */
27
+ imFile* imFileNewRaw(const char* file_name, int *error);
28
+
29
+
30
+ #if defined(__cplusplus)
31
+ }
32
+ #endif
33
+
34
+ #endif
@@ -0,0 +1,277 @@
1
+ /** \file
2
+ * \brief Utilities
3
+ *
4
+ * See Copyright Notice in im_lib.h
5
+ */
6
+
7
+ #ifndef __IM_UTIL_H
8
+ #define __IM_UTIL_H
9
+
10
+ #if defined(__cplusplus)
11
+ extern "C" {
12
+ #endif
13
+
14
+
15
+ /** \defgroup util Utilities
16
+ * \par
17
+ * See \ref im_util.h
18
+ * @{
19
+ */
20
+
21
+ #define IM_MIN(_a, _b) (_a < _b? _a: _b)
22
+ #define IM_MAX(_a, _b) (_a > _b? _a: _b)
23
+
24
+ /** @} */
25
+
26
+
27
+ /** \defgroup str String Utilities
28
+ * \par
29
+ * See \ref im_util.h
30
+ * \ingroup util */
31
+
32
+ /** Check if the two strings are equal.
33
+ * \ingroup str */
34
+ int imStrEqual(const char* str1, const char* str2);
35
+
36
+ /** Calculate the size of the string but limited to max_len.
37
+ * \ingroup str */
38
+ int imStrNLen(const char* str, int max_len);
39
+
40
+ /** Check if the data is a string.
41
+ * \ingroup str */
42
+ int imStrCheck(const void* data, int count);
43
+
44
+
45
+
46
+ /** \defgroup imageutil Raw Data Utilities
47
+ * \par
48
+ * See \ref im_util.h
49
+ * \ingroup imagerep */
50
+
51
+ /** Returns the size of the data buffer.
52
+ *
53
+ * \verbatim im.ImageDataSize(width: number, height: number, color_mode: number, data_type: number) -> datasize: number [in Lua 5] \endverbatim
54
+ * \ingroup imageutil */
55
+ int imImageDataSize(int width, int height, int color_mode, int data_type);
56
+
57
+ /** Returns the size of one line of the data buffer. \n
58
+ * This depends if the components are packed. If packed includes all components, if not includes only one.
59
+ *
60
+ * \verbatim im.ImageLineSize(width: number, color_mode: number, data_type: number) -> linesize: number [in Lua 5] \endverbatim
61
+ * \ingroup imageutil */
62
+ int imImageLineSize(int width, int color_mode, int data_type);
63
+
64
+ /** Returns the number of elements of one line of the data buffer. \n
65
+ * This depends if the components are packed. If packed includes all components, if not includes only one.
66
+ *
67
+ * \verbatim im.ImageLineCount(width: number, color_mode: number) -> linecount: number [in Lua 5] \endverbatim
68
+ * \ingroup imageutil */
69
+ int imImageLineCount(int width, int color_mode);
70
+
71
+ /** Check if the combination color_mode+data_type is valid.
72
+ *
73
+ * \verbatim im.ImageCheckFormat(color_mode: number, data_type: number) -> check: boolean [in Lua 5] \endverbatim
74
+ * \ingroup imageutil */
75
+ int imImageCheckFormat(int color_mode, int data_type);
76
+
77
+
78
+
79
+ /** \defgroup colorutl Color Utilities
80
+ * \par
81
+ * See \ref im_util.h
82
+ * \ingroup util */
83
+
84
+ /** Encode RGB components in a long for palete usage. \n
85
+ * "long" definition is compatible with the CD library definition.
86
+ *
87
+ * \verbatim im.ColorEncode(red: number, green: number, blue: number) -> color: lightuserdata [in Lua 5] \endverbatim
88
+ * \ingroup colorutl */
89
+ long imColorEncode(unsigned char red, unsigned char green, unsigned char blue);
90
+
91
+ /** Decode RGB components from a long for palete usage. \n
92
+ * "long" definition is compatible with the CD library definition.
93
+ *
94
+ * \verbatim im.ColorDecode(color: lightuserdata) -> red: number, green: number, blue: number [in Lua 5] \endverbatim
95
+ * \ingroup colorutl */
96
+ void imColorDecode(unsigned char *red, unsigned char *green, unsigned char *blue, long color);
97
+
98
+
99
+
100
+ /** \defgroup colormodeutl Color Mode Utilities
101
+ * \par
102
+ * See \ref im_util.h
103
+ * \ingroup imagerep */
104
+
105
+ /** Returns the color mode name.
106
+ *
107
+ * \verbatim im.ColorModeSpaceName(color_mode: number) -> name: string [in Lua 5] \endverbatim
108
+ * \ingroup colormodeutl */
109
+ const char* imColorModeSpaceName(int color_mode);
110
+
111
+ /** Returns the number of components of the color space including alpha.
112
+ *
113
+ * \verbatim im.ColorModeDepth(color_mode: number) -> depth: number [in Lua 5] \endverbatim
114
+ * \ingroup colormodeutl */
115
+ int imColorModeDepth(int color_mode);
116
+
117
+ /** Returns the color space of the color mode.
118
+ *
119
+ * \verbatim im.ColorModeSpace(color_mode: number) -> color_space: number [in Lua 5] \endverbatim
120
+ * \ingroup colormodeutl */
121
+ #define imColorModeSpace(_cm) (_cm & 0xFF)
122
+
123
+ /** Check if the two color modes match. Only the color space is compared.
124
+ *
125
+ * \verbatim im.ColorModeMatch(color_mode1: number, color_mode2: number) -> match: boolean [in Lua 5] \endverbatim
126
+ * \ingroup colormodeutl */
127
+ #define imColorModeMatch(_cm1, _cm2) (imColorModeSpace(_cm1) == imColorModeSpace(_cm2))
128
+
129
+ /** Check if the color mode has an alpha channel.
130
+ *
131
+ * \verbatim im.ColorModeHasAlpha(color_mode: number) -> has_alpha: boolean [in Lua 5] \endverbatim
132
+ * \ingroup colormodeutl */
133
+ #define imColorModeHasAlpha(_cm) (_cm & IM_ALPHA)
134
+
135
+ /** Check if the color mode components are packed in one plane.
136
+ *
137
+ * \verbatim im.ColorModeIsPacked(color_mode: number) -> is_packed: boolean [in Lua 5] \endverbatim
138
+ * \ingroup colormodeutl */
139
+ #define imColorModeIsPacked(_cm) (_cm & IM_PACKED)
140
+
141
+ /** Check if the color mode orients the image from top down to bottom.
142
+ *
143
+ * \verbatim im.ColorModeIsTopDown(color_mode: number) -> is_top_down: boolean [in Lua 5] \endverbatim
144
+ * \ingroup colormodeutl */
145
+ #define imColorModeIsTopDown(_cm) (_cm & IM_TOPDOWN)
146
+
147
+ /** Returns the color space of the equivalent display bitmap image. \n
148
+ * Original packing and alpha are ignored. Returns IM_RGB, IM_GRAY, IM_MAP or IM_BINARY.
149
+ *
150
+ * \verbatim im.ColorModeToBitmap(color_mode: number) -> color_space: number [in Lua 5] \endverbatim
151
+ * \ingroup colormodeutl */
152
+ int imColorModeToBitmap(int color_mode);
153
+
154
+ /** Check if the color mode and data_type defines a display bitmap image.
155
+ *
156
+ * \verbatim im.ColorModeIsBitmap(color_mode: number, data_type: number) -> is_bitmap: boolean [in Lua 5] \endverbatim
157
+ * \ingroup colormodeutl */
158
+ int imColorModeIsBitmap(int color_mode, int data_type);
159
+
160
+
161
+
162
+ /** \defgroup datatypeutl Data Type Utilities
163
+ * \par
164
+ * See \ref im_util.h
165
+ * \ingroup util
166
+ * @{
167
+ */
168
+
169
+ typedef unsigned char imbyte;
170
+ typedef unsigned short imushort;
171
+
172
+ #define IM_BYTECROP(_v) (_v < 0? 0: _v > 255? 255: _v)
173
+ #define IM_CROPMAX(_v, _max) (_v < 0? 0: _v > _max? _max: _v)
174
+
175
+ /** @} */
176
+
177
+ /** Returns the size in bytes of a specified numeric data type.
178
+ *
179
+ * \verbatim im.DataTypeSize(data_type: number) -> size: number [in Lua 5] \endverbatim
180
+ * \ingroup datatypeutl */
181
+ int imDataTypeSize(int data_type);
182
+
183
+ /** Returns the numeric data type name given its identifier.
184
+ *
185
+ * \verbatim im.DataTypeName(data_type: number) -> name: string [in Lua 5] \endverbatim
186
+ * \ingroup datatypeutl */
187
+ const char* imDataTypeName(int data_type);
188
+
189
+ /** Returns the maximum value of an integer data type. For floating point returns 0.
190
+ *
191
+ * \verbatim im.DataTypeIntMax(data_type: number) -> int_max: number [in Lua 5] \endverbatim
192
+ * \ingroup datatypeutl */
193
+ unsigned long imDataTypeIntMax(int data_type);
194
+
195
+ /** Returns the minimum value of an integer data type. For floating point returns 0.
196
+ *
197
+ * \verbatim im.DataTypeIntMin(data_type: number) -> int_min: number [in Lua 5] \endverbatim
198
+ * \ingroup datatypeutl */
199
+ long imDataTypeIntMin(int data_type);
200
+
201
+
202
+
203
+ /** \defgroup bin Binary Data Utilities
204
+ * \par
205
+ * See \ref im_util.h
206
+ * \ingroup util */
207
+
208
+ /** CPU Byte Orders.
209
+ * \ingroup bin */
210
+ enum imByteOrder
211
+ {
212
+ IM_LITTLEENDIAN, /**< Little Endian - The most significant byte is on the right end of a word. Used by Intel processors. */
213
+ IM_BIGENDIAN /**< Big Endian - The most significant byte is on the left end of a word. Used by Motorola processors, also is the network standard byte order. */
214
+ };
215
+
216
+ /** Returns the current CPU byte order.
217
+ * \ingroup bin */
218
+ int imBinCPUByteOrder(void);
219
+
220
+ /** Changes the byte order of an array of 2, 4 or 8 byte values.
221
+ * \ingroup bin */
222
+ void imBinSwapBytes(void *data, int count, int size);
223
+
224
+ /** Changes the byte order of an array of 2 byte values.
225
+ * \ingroup bin */
226
+ void imBinSwapBytes2(void *data, int count);
227
+
228
+ /** Inverts the byte order of the 4 byte values
229
+ * \ingroup bin */
230
+ void imBinSwapBytes4(void *data, int count);
231
+
232
+ /** Inverts the byte order of the 8 byte values
233
+ * \ingroup bin */
234
+ void imBinSwapBytes8(void *data, int count);
235
+
236
+
237
+
238
+ /** \defgroup compress Data Compression Utilities
239
+ * \par
240
+ * Deflate compression support uses zlib version 1.2.3. \n
241
+ * http://www.zlib.org/ \n
242
+ * Copyright (C) 1995-2004 Jean-loup Gailly and Mark Adler
243
+ * \par
244
+ * LZF compression support uses libLZF version 1.51. \n
245
+ * http://liblzf.plan9.de/ \n
246
+ * Copyright (C) 2000-2005 Marc Alexander Lehmann
247
+ * See \ref im_util.h
248
+ * \ingroup util */
249
+
250
+ /** Compresses the data using the ZLIB Deflate compression. \n
251
+ * The destination buffer must be at least 0.1% larger than source_size plus 12 bytes. \n
252
+ * It compresses raw byte data. zip_quality can be 1 to 9. \n
253
+ * Returns the size of the compressed buffer or zero if failed.
254
+ * \ingroup compress */
255
+ int imCompressDataZ(const void* src_data, int src_size, void* dst_data, int dst_size, int zip_quality);
256
+
257
+ /** Uncompresses the data compressed with the ZLIB Deflate compression. \n
258
+ * Returns zero if failed.
259
+ * \ingroup compress */
260
+ int imCompressDataUnZ(const void* src_data, int src_size, void* dst_data, int dst_size);
261
+
262
+ /** Compresses the data using the libLZF compression. \n
263
+ * Returns the size of the compressed buffer or zero if failed.
264
+ * \ingroup compress */
265
+ int imCompressDataLZF(const void* src_data, int src_size, void* dst_data, int dst_size, int zip_quality);
266
+
267
+ /** Uncompresses the data compressed with the libLZF compression.
268
+ * Returns zero if failed.
269
+ * \ingroup compress */
270
+ int imCompressDataUnLZF(const void* src_data, int src_size, void* dst_data, int dst_size);
271
+
272
+
273
+ #if defined(__cplusplus)
274
+ }
275
+ #endif
276
+
277
+ #endif
@@ -0,0 +1,83 @@
1
+ /** \file
2
+ * \brief IM Lua 5 Binding
3
+ *
4
+ * See Copyright Notice in im_lib.h
5
+ */
6
+
7
+ #ifndef __IMLUA_H
8
+ #define __IMLUA_H
9
+
10
+ #ifdef __cplusplus
11
+ extern "C" {
12
+ #endif
13
+
14
+ /** \defgroup imlua IM Lua 5 Binding
15
+ * \par
16
+ * Binding for the Lua 5 scripting language. \n
17
+ * Lua 5.1 Copyright (C) 1994-2005 Lua.org, PUC-Rio \n
18
+ * R. Ierusalimschy, L. H. de Figueiredo & W. Celes \n
19
+ * http://www.lua.org
20
+ * \par
21
+ * The name of the functions were changed because of the namespace "im" and because of the object orientation. \n
22
+ * As a general rule use:
23
+ \verbatim
24
+ imXxx -> im.Xxx
25
+ IM_XXX -> im.XXX
26
+ imFileXXX(ifile,... -> ifile:XXX(...
27
+ imImageXXX(image,... -> image:XXX(...
28
+ \endverbatim
29
+ * All the objects are garbage collected by the Lua garbage collector.
30
+ * \par
31
+ * See \ref imlua.h
32
+ * \ingroup util */
33
+
34
+ #ifdef LUA_NOOBJECT /* Lua 3 */
35
+ void imlua_open(void);
36
+ #endif
37
+
38
+ #ifdef LUA_TNONE /* Lua 5 */
39
+
40
+ /** Initializes the Lua binding of the main IM library. \n
41
+ * Returns 1 (leaves the "im" table on the top of the stack).
42
+ * You must link the application with the "imlua51" library.
43
+ * \ingroup imlua */
44
+ int imlua_open(lua_State *L);
45
+ int luaopen_imlua(lua_State *L);
46
+
47
+ /** Pushes an image as a metatable on the stack.
48
+ * \ingroup imlua */
49
+ void imlua_pushimage(lua_State *L, imImage* image);
50
+
51
+ /** Gets an image as a metatable from the stack, checks for correct type.
52
+ * \ingroup imlua */
53
+ imImage* imlua_checkimage(lua_State *L, int param);
54
+
55
+ /** Initializes the Lua binding of the capture library. \n
56
+ * Returns 1 (leaves the "im" table on the top of the stack).
57
+ * You must link the application with the "imlua_capture51" library.
58
+ * \ingroup imlua */
59
+ int imlua_open_capture(lua_State *L);
60
+ int luaopen_imlua_capture(lua_State *L);
61
+
62
+ /** Initializes the Lua binding of the process library. \n
63
+ * Returns 1 (leaves the "im" table on the top of the stack).
64
+ * You must link the application with the "imlua_process51" library.
65
+ * \ingroup imlua */
66
+ int imlua_open_process(lua_State *L);
67
+ int luaopen_imlua_process(lua_State *L);
68
+
69
+ /** Initializes the Lua binding of the fourier transform library. \n
70
+ * Returns 1 (leaves the "im" table on the top of the stack).
71
+ * You must link the application with the "imlua_fftw51" library.
72
+ * \ingroup imlua */
73
+ int imlua_open_fftw(lua_State *L);
74
+ int luaopen_imlua_fftw(lua_State *L);
75
+
76
+
77
+ #endif
78
+
79
+ #ifdef __cplusplus
80
+ }
81
+ #endif
82
+
83
+ #endif
@@ -0,0 +1,255 @@
1
+ /** \file
2
+ * \brief User API
3
+ * IUP - A Portable User Interface Toolkit
4
+ * Tecgraf: Computer Graphics Technology Group, PUC-Rio, Brazil
5
+ * http://www.tecgraf.puc-rio.br/iup mailto:iup@tecgraf.puc-rio.br
6
+ *
7
+ * See Copyright Notice at the end of this file
8
+ */
9
+
10
+ #ifndef __IUP_H
11
+ #define __IUP_H
12
+
13
+ #include <iupkey.h>
14
+ #include <iupdef.h>
15
+
16
+ #ifdef __cplusplus
17
+ extern "C" {
18
+ #endif
19
+
20
+
21
+ #define IUP_NAME "IUP - Portable User Interface"
22
+ #define IUP_COPYRIGHT "Copyright (C) 1994-2008 Tecgraf, PUC-Rio."
23
+ #define IUP_DESCRIPTION "Portable toolkit for building graphical user interfaces."
24
+ #define IUP_VERSION "2.7.0"
25
+ #define IUP_VERSION_DATE "2008/10/14"
26
+ #define IUP_VERSION_NUMBER 207000
27
+
28
+ typedef struct Ihandle_ Ihandle;
29
+ typedef int (*Icallback)(Ihandle*);
30
+
31
+ /************************************************************************/
32
+ /* pre-definided dialogs */
33
+ /************************************************************************/
34
+ Ihandle* IupFileDlg(void);
35
+
36
+ int IupGetFile (char *arq);
37
+ void IupMessage (const char *title, const char *msg);
38
+ void IupMessagef (const char *title, const char *format, ...);
39
+ int IupAlarm (const char *title, const char *msg, const char *b1, const char *b2, const char *b3);
40
+ int IupScanf (const char *format, ...);
41
+ int IupListDialog (int type, const char *title, int size, const char *lst[],
42
+ int op, int col, int line, int marks[]);
43
+ int IupGetText (const char* title, char* text);
44
+
45
+ /************************************************************************/
46
+ /* Functions */
47
+ /************************************************************************/
48
+
49
+ int IupOpen (int *argc, char ***argv);
50
+ void IupClose (void);
51
+
52
+ int IupMainLoop (void);
53
+ int IupLoopStep (void);
54
+ void IupFlush (void);
55
+ void IupExitLoop (void);
56
+
57
+ void IupUpdate (Ihandle* ih);
58
+ void IupRefresh (Ihandle* ih);
59
+ char* IupMapFont (const char *iupfont);
60
+ char* IupUnMapFont (const char *driverfont);
61
+ int IupHelp (const char* url);
62
+ char * IupLoad (const char *filename);
63
+
64
+ char* IupVersion (void);
65
+ char* IupVersionDate (void);
66
+ int IupVersionNumber (void);
67
+ void IupSetLanguage (const char *lng);
68
+ char* IupGetLanguage (void);
69
+
70
+ void IupDestroy (Ihandle *ih);
71
+ void IupDetach (Ihandle *child);
72
+ Ihandle* IupAppend (Ihandle *ih, Ihandle *child);
73
+ Ihandle* IupGetNextChild (Ihandle *ih, Ihandle *child);
74
+ Ihandle* IupGetBrother (Ihandle *ih);
75
+ Ihandle* IupGetParent (Ihandle *ih);
76
+ Ihandle* IupGetDialog (Ihandle *ih);
77
+
78
+ int IupPopup (Ihandle *ih, int x, int y);
79
+ int IupShow (Ihandle *ih);
80
+ int IupShowXY (Ihandle *ih, int x, int y);
81
+ int IupHide (Ihandle *ih);
82
+ int IupMap (Ihandle *ih);
83
+
84
+ void IupSetAttribute (Ihandle *ih, const char* name, const char* value);
85
+ void IupStoreAttribute(Ihandle *ih, const char* name, const char* value);
86
+ Ihandle* IupSetAttributes (Ihandle *ih, const char *str);
87
+ char* IupGetAttribute (Ihandle *ih, const char* name);
88
+ char* IupGetAttributes (Ihandle *ih);
89
+ int IupGetInt (Ihandle *ih, const char* name);
90
+ int IupGetInt2 (Ihandle *ih, const char* name);
91
+ float IupGetFloat (Ihandle *ih, const char* name);
92
+ void IupSetfAttribute (Ihandle *ih, const char* name, const char* format, ...);
93
+
94
+ void IupSetGlobal (const char* name, const char* value);
95
+ void IupStoreGlobal (const char* name, const char* value);
96
+ char* IupGetGlobal (const char* name);
97
+
98
+ Ihandle* IupSetFocus (Ihandle *ih);
99
+ Ihandle* IupGetFocus (void);
100
+ Ihandle* IupPreviousField (Ihandle *ih);
101
+ Ihandle* IupNextField (Ihandle *ih);
102
+
103
+ Icallback IupGetCallback(Ihandle *ih, const char *name);
104
+ Icallback IupSetCallback(Ihandle *ih, const char *name, Icallback func);
105
+ Ihandle* IupSetCallbacks(Ihandle* ih, ...);
106
+
107
+ Icallback IupGetFunction (const char *name);
108
+ Icallback IupSetFunction (const char *name, Icallback func);
109
+ const char* IupGetActionName (void);
110
+
111
+ Ihandle* IupGetHandle (const char *name);
112
+ Ihandle* IupSetHandle (const char *name, Ihandle *ih);
113
+ int IupGetAllNames (char *names[], int n);
114
+ int IupGetAllDialogs (char *names[], int n);
115
+ char* IupGetName (Ihandle* ih);
116
+
117
+ void IupSetAttributeHandle (Ihandle *ih, const char* name, Ihandle *ih_named);
118
+ Ihandle* IupGetAttributeHandle(Ihandle *ih, const char* name);
119
+
120
+ char* IupGetClassName (Ihandle *ih);
121
+
122
+ Ihandle* IupCreate (const char *name);
123
+ Ihandle* IupCreatev (const char *name, void* *params);
124
+ Ihandle* IupCreatep (const char *name, void* first, ...);
125
+
126
+ Ihandle* IupFill (void);
127
+ Ihandle* IupRadio (Ihandle *child);
128
+ Ihandle* IupVbox (Ihandle* child, ...);
129
+ Ihandle* IupVboxv (Ihandle* *children);
130
+ Ihandle* IupZbox (Ihandle* child, ...);
131
+ Ihandle* IupZboxv (Ihandle* *children);
132
+ Ihandle* IupHbox (Ihandle* child,...);
133
+ Ihandle* IupHboxv (Ihandle* *children);
134
+
135
+
136
+ Ihandle* IupFrame (Ihandle* child);
137
+
138
+ Ihandle* IupImage (int width, int height, const unsigned char *pixmap);
139
+ Ihandle* IupButton (const char* title, const char* action);
140
+ Ihandle* IupCanvas (const char* action);
141
+ Ihandle* IupDialog (Ihandle* child);
142
+ Ihandle* IupUser (void);
143
+ Ihandle* IupItem (const char* title, const char* action);
144
+ Ihandle* IupSubmenu (const char* title, Ihandle* child);
145
+ Ihandle* IupSeparator (void);
146
+ Ihandle* IupLabel (const char* title);
147
+ Ihandle* IupList (const char* action);
148
+ Ihandle* IupMenu (Ihandle *child,...);
149
+ Ihandle* IupMenuv (Ihandle **children);
150
+ Ihandle* IupText (const char* action);
151
+ Ihandle* IupMultiLine (const char* action);
152
+ Ihandle* IupToggle (const char* title, const char* action);
153
+ Ihandle* IupTimer (void);
154
+
155
+ #ifdef __cplusplus
156
+ }
157
+ #endif
158
+
159
+ /************************************************************************/
160
+ /* Common Return Values */
161
+ /************************************************************************/
162
+ #define IUP_ERROR 1
163
+ #define IUP_NOERROR 0
164
+ #define IUP_OPENED -1
165
+ #define IUP_INVALID -1
166
+
167
+ /************************************************************************/
168
+ /* Callback Return Values */
169
+ /************************************************************************/
170
+ #define IUP_IGNORE -1
171
+ #define IUP_DEFAULT -2
172
+ #define IUP_CLOSE -3
173
+ #define IUP_CONTINUE -4
174
+
175
+ /************************************************************************/
176
+ /* IupPopup and IupShowXY Parameter Values */
177
+ /************************************************************************/
178
+ #define IUP_CENTER 0xFFFF /* 65535 */
179
+ #define IUP_LEFT 0xFFFE /* 65534 */
180
+ #define IUP_RIGHT 0xFFFD /* 65533 */
181
+ #define IUP_MOUSEPOS 0xFFFC /* 65532 */
182
+ #define IUP_CURRENT 0xFFFB /* 65531 */
183
+ #define IUP_CENTERPARENT 0xFFFA
184
+ #define IUP_TOP IUP_LEFT
185
+ #define IUP_BOTTOM IUP_RIGHT
186
+
187
+ /************************************************************************/
188
+ /* SHOW_CB Callback Values */
189
+ /************************************************************************/
190
+ enum{IUP_SHOW, IUP_RESTORE, IUP_MINIMIZE, IUP_MAXIMIZE, IUP_HIDE};
191
+
192
+ /************************************************************************/
193
+ /* SCROLL_CB Callback Values */
194
+ /************************************************************************/
195
+ enum{IUP_SBUP, IUP_SBDN, IUP_SBPGUP, IUP_SBPGDN, IUP_SBPOSV, IUP_SBDRAGV,
196
+ IUP_SBLEFT, IUP_SBRIGHT, IUP_SBPGLEFT, IUP_SBPGRIGHT, IUP_SBPOSH, IUP_SBDRAGH};
197
+
198
+ /************************************************************************/
199
+ /* Mouse Button Values and Macros */
200
+ /************************************************************************/
201
+ #define IUP_BUTTON1 '1'
202
+ #define IUP_BUTTON2 '2'
203
+ #define IUP_BUTTON3 '3'
204
+ #define IUP_BUTTON4 '4'
205
+ #define IUP_BUTTON5 '5'
206
+
207
+ #define isshift(_s) (_s[0]=='S')
208
+ #define iscontrol(_s) (_s[1]=='C')
209
+ #define isbutton1(_s) (_s[2]=='1')
210
+ #define isbutton2(_s) (_s[3]=='2')
211
+ #define isbutton3(_s) (_s[4]=='3')
212
+ #define isdouble(_s) (_s[5]=='D')
213
+ #define isalt(_s) (_s[6]=='A')
214
+ #define issys(_s) (_s[7]=='Y')
215
+ #define isbutton4(_s) (_s[8]=='4')
216
+ #define isbutton5(_s) (_s[9]=='5')
217
+
218
+
219
+ /************************************************************************/
220
+ /* Replacement for the WinMain in Windows, */
221
+ /* this allows the application to start from "main". */
222
+ /************************************************************************/
223
+ #if defined (__WATCOMC__) || defined (__MWERKS__)
224
+ #ifdef __cplusplus
225
+ extern "C" {
226
+ int IupMain (int argc, char** argv); /* In C++ we have to declare the prototype */
227
+ }
228
+ #endif
229
+ #define main IupMain /* this is the trick for Watcom and MetroWerks */
230
+ #endif
231
+
232
+ /******************************************************************************
233
+ * Copyright (C) 1994-2008 Tecgraf, PUC-Rio.
234
+ *
235
+ * Permission is hereby granted, free of charge, to any person obtaining
236
+ * a copy of this software and associated documentation files (the
237
+ * "Software"), to deal in the Software without restriction, including
238
+ * without limitation the rights to use, copy, modify, merge, publish,
239
+ * distribute, sublicense, and/or sell copies of the Software, and to
240
+ * permit persons to whom the Software is furnished to do so, subject to
241
+ * the following conditions:
242
+ *
243
+ * The above copyright notice and this permission notice shall be
244
+ * included in all copies or substantial portions of the Software.
245
+ *
246
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
247
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
248
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
249
+ * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
250
+ * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
251
+ * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
252
+ * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
253
+ ******************************************************************************/
254
+
255
+ #endif