ruby-dcl 1.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (319) hide show
  1. data/ChangeLog +321 -0
  2. data/GenWrapper/Makefile +14 -0
  3. data/GenWrapper/cproto2init.rb +41 -0
  4. data/GenWrapper/dcl_narrayed_funcs.rb +181 -0
  5. data/GenWrapper/dcl_rb_footing +29 -0
  6. data/GenWrapper/dcl_rb_heading +129 -0
  7. data/GenWrapper/def.rb +20 -0
  8. data/GenWrapper/elim_ary_size.rb +398 -0
  9. data/GenWrapper/etc/Mk_proto +375 -0
  10. data/GenWrapper/etc/dcl_gen +13 -0
  11. data/GenWrapper/etc/p_header +63 -0
  12. data/GenWrapper/etc/p_init +410 -0
  13. data/GenWrapper/pparse.rb +137 -0
  14. data/GenWrapper/proto/Makefile +35 -0
  15. data/GenWrapper/proto/grph1_00 +17 -0
  16. data/GenWrapper/proto/grph1_csgi.fp +27 -0
  17. data/GenWrapper/proto/grph1_scpack.fp +442 -0
  18. data/GenWrapper/proto/grph1_sgpack.fp +1406 -0
  19. data/GenWrapper/proto/grph1_slpack.fp +316 -0
  20. data/GenWrapper/proto/grph1_stpack.fp +411 -0
  21. data/GenWrapper/proto/grph1_swpack.fp +746 -0
  22. data/GenWrapper/proto/grph2_00 +16 -0
  23. data/GenWrapper/proto/grph2_grpack.fp +139 -0
  24. data/GenWrapper/proto/grph2_ucpack.fp +522 -0
  25. data/GenWrapper/proto/grph2_udpack.fp +692 -0
  26. data/GenWrapper/proto/grph2_uepack.fp +601 -0
  27. data/GenWrapper/proto/grph2_ugpack.fp +436 -0
  28. data/GenWrapper/proto/grph2_uhpack.fp +246 -0
  29. data/GenWrapper/proto/grph2_ulpack.fp +516 -0
  30. data/GenWrapper/proto/grph2_umpack.fp +676 -0
  31. data/GenWrapper/proto/grph2_uspack.fp +989 -0
  32. data/GenWrapper/proto/grph2_uupack.fp +663 -0
  33. data/GenWrapper/proto/grph2_uvpack.fp +246 -0
  34. data/GenWrapper/proto/grph2_uwpack.fp +203 -0
  35. data/GenWrapper/proto/grph2_uxpack.fp +295 -0
  36. data/GenWrapper/proto/grph2_uypack.fp +295 -0
  37. data/GenWrapper/proto/grph2_uzpack.fp +574 -0
  38. data/GenWrapper/proto/math1_00 +12 -0
  39. data/GenWrapper/proto/math1_blklib.fp +58 -0
  40. data/GenWrapper/proto/math1_chrlib.fp +83 -0
  41. data/GenWrapper/proto/math1_fnclib.fp +79 -0
  42. data/GenWrapper/proto/math1_gnmlib.fp +118 -0
  43. data/GenWrapper/proto/math1_gt2dlib.fp +144 -0
  44. data/GenWrapper/proto/math1_ifalib.fp +123 -0
  45. data/GenWrapper/proto/math1_indxlib.fp +222 -0
  46. data/GenWrapper/proto/math1_intlib.fp +46 -0
  47. data/GenWrapper/proto/math1_lrllib.fp +276 -0
  48. data/GenWrapper/proto/math1_maplib.fp +24 -0
  49. data/GenWrapper/proto/math1_oslib.fp +28 -0
  50. data/GenWrapper/proto/math1_rfalib.fp +420 -0
  51. data/GenWrapper/proto/math1_rfblib.fp +51 -0
  52. data/GenWrapper/proto/math1_sublib.fp +60 -0
  53. data/GenWrapper/proto/math1_syslib.fp +767 -0
  54. data/GenWrapper/proto/math1_vialib.fp +339 -0
  55. data/GenWrapper/proto/math1_viblib.fp +264 -0
  56. data/GenWrapper/proto/math1_vralib.fp +339 -0
  57. data/GenWrapper/proto/math1_vrblib.fp +264 -0
  58. data/GenWrapper/proto/math1_xfclib.fp +68 -0
  59. data/GenWrapper/proto/math2_00 +12 -0
  60. data/GenWrapper/proto/math2_fftlib.fp +803 -0
  61. data/GenWrapper/proto/math2_intrlib.fp +32 -0
  62. data/GenWrapper/proto/math2_odelib.fp_notused +568 -0
  63. data/GenWrapper/proto/math2_rnmlib.fp +54 -0
  64. data/GenWrapper/proto/math2_shtlib.fp +1292 -0
  65. data/GenWrapper/proto/math2_shtlib.fp_old +1294 -0
  66. data/GenWrapper/proto/math2_vstlib.fp +84 -0
  67. data/GenWrapper/proto/misc1_00 +17 -0
  68. data/GenWrapper/proto/misc1_chnlib.fp +47 -0
  69. data/GenWrapper/proto/misc1_datelib.fp +352 -0
  70. data/GenWrapper/proto/misc1_fmtlib.fp +19 -0
  71. data/GenWrapper/proto/misc1_misclib.fp +26 -0
  72. data/GenWrapper/proto/misc1_randlib.fp +36 -0
  73. data/GenWrapper/proto/misc1_timelib.fp +151 -0
  74. data/GenWrapper/proto2c.rb +13 -0
  75. data/GenWrapper/prototype.rb +209 -0
  76. data/GenWrapper/util.rb +9 -0
  77. data/GenWrapper/variable.rb +671 -0
  78. data/README +29 -0
  79. data/Rakefile +44 -0
  80. data/ToDo +2 -0
  81. data/dcl_cary2obj.c +354 -0
  82. data/dcl_narrayed_funcs.c +518 -0
  83. data/dcl_obj2cary.c +512 -0
  84. data/dcl_rubydcloriginal.c +129 -0
  85. data/demo/gokuraku/hop/hop.rb +26 -0
  86. data/demo/gokuraku/jump/jump1.rb +64 -0
  87. data/demo/gokuraku/jump/jump2.rb +50 -0
  88. data/demo/gokuraku/layout/lay1.rb +46 -0
  89. data/demo/gokuraku/layout/lay2.rb +44 -0
  90. data/demo/gokuraku/step/step0.rb +34 -0
  91. data/demo/gokuraku/step/step1.rb +84 -0
  92. data/demo/gokuraku/step/step2.rb +62 -0
  93. data/demo/gokuraku/u1d/u1d1.rb +37 -0
  94. data/demo/gokuraku/u1d/u1d2.rb +50 -0
  95. data/demo/gokuraku/u2d/u2d1.rb +46 -0
  96. data/demo/gokuraku/u2d/u2d2.rb +49 -0
  97. data/demo/gokuraku/u2d/u2d3.rb +45 -0
  98. data/demo/gokuraku/u2d/u2d4.rb +61 -0
  99. data/demo/grph1/scpack/scpkt2.rb +40 -0
  100. data/demo/grph1/scpack/scpkt3.rb +102 -0
  101. data/demo/grph1/scpack/scpkt6.rb +84 -0
  102. data/demo/grph1/scpack/scpkt7.rb +59 -0
  103. data/demo/grph1/scpack/scpkt8.rb +60 -0
  104. data/demo/grph1/scpack/t810630.dat +296 -0
  105. data/demo/grph1/scpack/t811231.dat +296 -0
  106. data/demo/grph1/sgpack/sgfont.rb +52 -0
  107. data/demo/grph1/sgpack/sgfonz.rb +53 -0
  108. data/demo/grph1/sgpack/sgksx1.rb +44 -0
  109. data/demo/grph1/sgpack/sgksx2.rb +90 -0
  110. data/demo/grph1/sgpack/sgksx3.rb +75 -0
  111. data/demo/grph1/sgpack/sglidx.rb +40 -0
  112. data/demo/grph1/sgpack/sgltyp.rb +48 -0
  113. data/demo/grph1/sgpack/sgpk01.rb +39 -0
  114. data/demo/grph1/sgpack/sgpk02.rb +79 -0
  115. data/demo/grph1/sgpack/sgpk03.rb +107 -0
  116. data/demo/grph1/sgpack/sgpk04.rb +86 -0
  117. data/demo/grph1/sgpack/sgpk05.rb +66 -0
  118. data/demo/grph1/sgpack/sgpk06.rb +91 -0
  119. data/demo/grph1/sgpack/sgpk07.rb +66 -0
  120. data/demo/grph1/sgpack/sgpk08.rb +67 -0
  121. data/demo/grph1/sgpack/sgpk09.rb +61 -0
  122. data/demo/grph1/sgpack/sgpk10.rb +58 -0
  123. data/demo/grph1/sgpack/sgtclr.rb +59 -0
  124. data/demo/grph1/sgpack/sgtone.rb +70 -0
  125. data/demo/grph1/sgpack/sgtonz.rb +66 -0
  126. data/demo/grph1/slpack/slpk01.rb +37 -0
  127. data/demo/grph1/slpack/slpk02.rb +29 -0
  128. data/demo/grph1/slpack/slpk03.rb +36 -0
  129. data/demo/grph1/slpack/slpk04.rb +36 -0
  130. data/demo/grph2/g2pack/g2pk01.rb +78 -0
  131. data/demo/grph2/g2pack/g2pk02.rb +75 -0
  132. data/demo/grph2/grpack/grpk01.rb +65 -0
  133. data/demo/grph2/ucpack/ucpk01.rb +95 -0
  134. data/demo/grph2/ucpack/ucpk02.rb +95 -0
  135. data/demo/grph2/udegpk/u2df01.rb +50 -0
  136. data/demo/grph2/udegpk/u2df02.rb +76 -0
  137. data/demo/grph2/udegpk/u2df03.rb +80 -0
  138. data/demo/grph2/udegpk/u2df04.rb +52 -0
  139. data/demo/grph2/udegpk/u2df05.rb +70 -0
  140. data/demo/grph2/udegpk/u2df06.rb +59 -0
  141. data/demo/grph2/udegpk/u2df07.rb +68 -0
  142. data/demo/grph2/udegpk/u2df08.rb +91 -0
  143. data/demo/grph2/udegpk/u2df09b.rb +88 -0
  144. data/demo/grph2/udegpk/u2df09c.rb +89 -0
  145. data/demo/grph2/udegpk/u2df09e.rb +88 -0
  146. data/demo/grph2/udegpk/u2df09f.rb +89 -0
  147. data/demo/grph2/ulpack/ulpk01.rb +111 -0
  148. data/demo/grph2/ulpack/ulpk01n.rb +111 -0
  149. data/demo/grph2/ulpack/ulpk02.rb +111 -0
  150. data/demo/grph2/ulpack/ulpk02n.rb +111 -0
  151. data/demo/grph2/umpack/t811231.dat +296 -0
  152. data/demo/grph2/umpack/test01.rb +69 -0
  153. data/demo/grph2/umpack/test02.rb +64 -0
  154. data/demo/grph2/umpack/test03.rb +84 -0
  155. data/demo/grph2/umpack/test04.rb +54 -0
  156. data/demo/grph2/umpack/test05.rb +85 -0
  157. data/demo/grph2/umpack/test06.rb +44 -0
  158. data/demo/grph2/umpack/test07.rb +43 -0
  159. data/demo/grph2/umpack/test08.rb +37 -0
  160. data/demo/grph2/umpack/test09.rb +86 -0
  161. data/demo/grph2/umpack/test10.rb +52 -0
  162. data/demo/grph2/umpack/umpk01.rb +65 -0
  163. data/demo/grph2/umpack/umpk02.rb +54 -0
  164. data/demo/grph2/umpack/umpk03.rb +46 -0
  165. data/demo/grph2/umpack/umpk04.rb +65 -0
  166. data/demo/grph2/umpack/umpk05.rb +84 -0
  167. data/demo/grph2/uspack/uspk01.rb +39 -0
  168. data/demo/grph2/uspack/uspk02.rb +47 -0
  169. data/demo/grph2/uspack/uspk03.rb +38 -0
  170. data/demo/grph2/uspack/uspk04.rb +64 -0
  171. data/demo/grph2/uspack/uspk05.rb +68 -0
  172. data/demo/grph2/uspack/uspk06.rb +43 -0
  173. data/demo/grph2/uspack/uspk07.rb +62 -0
  174. data/demo/grph2/uspack/uspk08.rb +46 -0
  175. data/demo/grph2/uspack/uspk09.rb +89 -0
  176. data/demo/grph2/uspack/uspk10.rb +48 -0
  177. data/demo/grph2/uspack/uspk11.rb +71 -0
  178. data/demo/grph2/uspack/uspk12.rb +51 -0
  179. data/demo/grph2/uupack/uupk01.rb +50 -0
  180. data/demo/grph2/uupack/uupk02.rb +74 -0
  181. data/demo/grph2/uupack/uupk03.rb +56 -0
  182. data/demo/grph2/uupack/uupk04.rb +84 -0
  183. data/demo/grph2/uupack/uupk05.rb +74 -0
  184. data/demo/grph2/uupack/uupk06.rb +77 -0
  185. data/demo/grph2/uupack/uupk07.rb +88 -0
  186. data/demo/grph2/uxyzpk/uxyz01.rb +38 -0
  187. data/demo/grph2/uxyzpk/uxyz02.rb +36 -0
  188. data/demo/grph2/uxyzpk/uxyz03.rb +37 -0
  189. data/demo/grph2/uxyzpk/uxyz04.rb +54 -0
  190. data/demo/grph2/uxyzpk/uxyz05.rb +41 -0
  191. data/demo/grph2/uxyzpk/uxyz06.rb +42 -0
  192. data/demo/grph2/uxyzpk/uxyz07.rb +38 -0
  193. data/demo/grph2/uxyzpk/uxyz08.rb +60 -0
  194. data/demo/grph2/uxyzpk/uxyz09.rb +52 -0
  195. data/demo/grph2/uxyzpk/uxyz10.rb +57 -0
  196. data/demo/grph2/ximage/MEMO +23 -0
  197. data/demo/grph2/ximage/tomsclm.dat +1344 -0
  198. data/demo/grph2/ximage/ximg01.rb +145 -0
  199. data/demo/math1/gt2dlib/gt2d01.rb +33 -0
  200. data/demo/math2/fftlib/fftl01.rb +28 -0
  201. data/demo/math2/fftlib/fftl02.rb +224 -0
  202. data/demo/math2/intrlib/intr01.rb +22 -0
  203. data/demo/math2/rnmlib/rnml01.rb +21 -0
  204. data/demo/math2/vstlib/vstl01.rb +29 -0
  205. data/demo/math2/vstlib/vstl02.rb +38 -0
  206. data/demo/rakuraku/color/color1.rb +61 -0
  207. data/demo/rakuraku/color/color2.rb +57 -0
  208. data/demo/rakuraku/color/color3.rb +81 -0
  209. data/demo/rakuraku/kihon/kihon1.rb +39 -0
  210. data/demo/rakuraku/kihon/kihon2.rb +56 -0
  211. data/demo/rakuraku/kihon/kihon3.rb +57 -0
  212. data/demo/rakuraku/kihon/kihon4.rb +70 -0
  213. data/demo/rakuraku/kihon/kihon5.rb +56 -0
  214. data/demo/rakuraku/kihon/kihon6.rb +40 -0
  215. data/demo/rakuraku/kihon/kihon7.rb +98 -0
  216. data/demo/rakuraku/kihon/kihon8.rb +93 -0
  217. data/demo/rakuraku/kihon/kihon9.rb +77 -0
  218. data/demo/rakuraku/kihon/kihona.rb +123 -0
  219. data/demo/rakuraku/kihon/kihonb.rb +73 -0
  220. data/demo/rakuraku/kihon/kihonc.rb +110 -0
  221. data/demo/rakuraku/layout/lay1.rb +29 -0
  222. data/demo/rakuraku/layout/lay2.rb +28 -0
  223. data/demo/rakuraku/layout/lay3.rb +29 -0
  224. data/demo/rakuraku/map3d/map3d1.rb +68 -0
  225. data/demo/rakuraku/map3d/map3d2.rb +67 -0
  226. data/demo/rakuraku/map3d/map3d3.rb +66 -0
  227. data/demo/rakuraku/map3d/map3d4.rb +107 -0
  228. data/demo/rakuraku/map3d/map3d5.rb +118 -0
  229. data/demo/rakuraku/map3d/map3d6.rb +96 -0
  230. data/demo/rakuraku/map3d/map3d7.rb +98 -0
  231. data/demo/rakuraku/miss/miss1.rb +76 -0
  232. data/demo/rakuraku/miss/miss2.rb +60 -0
  233. data/demo/rakuraku/quick/quick1.rb +35 -0
  234. data/demo/rakuraku/quick/quick2.rb +33 -0
  235. data/demo/rakuraku/quick/quick3.rb +46 -0
  236. data/demo/rakuraku/quick/quick4.rb +47 -0
  237. data/demo/rakuraku/quick/quick5.rb +46 -0
  238. data/demo/rakuraku/u2d/u2d1.rb +50 -0
  239. data/demo/rakuraku/u2d/u2d2.rb +51 -0
  240. data/demo/rakuraku/u2d/u2d3.rb +70 -0
  241. data/demo/rakuraku/u2d/u2d4.rb +59 -0
  242. data/demo/rakuraku/u2d/u2d5.rb +61 -0
  243. data/demo/rakuraku/u2d/u2d6.rb +57 -0
  244. data/demo/rakuraku/u2d/u2d7.rb +103 -0
  245. data/demo/rakuraku/uspack/uspac1.rb +35 -0
  246. data/demo/rakuraku/uspack/uspac2.rb +66 -0
  247. data/demo/rakuraku/uspack/uspac3.rb +37 -0
  248. data/demo/rakuraku/uspack/uspac4.rb +49 -0
  249. data/demo/rakuraku/uxyz/uxyz1.rb +37 -0
  250. data/demo/rakuraku/uxyz/uxyz2.rb +35 -0
  251. data/demo/rakuraku/uxyz/uxyz3.rb +38 -0
  252. data/demo/rakuraku/uxyz/uxyz4.rb +36 -0
  253. data/demo/rakuraku/uxyz/uxyz5.rb +57 -0
  254. data/demo/rakuraku/uxyz/uxyz6.rb +43 -0
  255. data/demo/rakuraku/uxyz/uxyz7.rb +39 -0
  256. data/demo/rakuraku/uxyz/uxyz8.rb +56 -0
  257. data/demo/rubydcloriginal/uemrkz1.rb +37 -0
  258. data/dummy.c +9 -0
  259. data/extconf.rb +133 -0
  260. data/grph1_csgi.c +119 -0
  261. data/grph1_scpack.c +1388 -0
  262. data/grph1_sgpack.c +3876 -0
  263. data/grph1_slpack.c +432 -0
  264. data/grph1_stpack.c +1044 -0
  265. data/grph1_swpack.c +1922 -0
  266. data/grph1_zgpack.c.org +141 -0
  267. data/grph2_grpack.c +368 -0
  268. data/grph2_ucpack.c +1232 -0
  269. data/grph2_udpack.c +1404 -0
  270. data/grph2_uepack.c +1443 -0
  271. data/grph2_ugpack.c +1073 -0
  272. data/grph2_uhpack.c +943 -0
  273. data/grph2_ulpack.c +1304 -0
  274. data/grph2_umpack.c +1540 -0
  275. data/grph2_uspack.c +2481 -0
  276. data/grph2_uupack.c +1689 -0
  277. data/grph2_uvpack.c +943 -0
  278. data/grph2_uwpack.c +552 -0
  279. data/grph2_uxpack.c +555 -0
  280. data/grph2_uypack.c +555 -0
  281. data/grph2_uzpack.c +1455 -0
  282. data/init.c.default +187 -0
  283. data/init.c.gtk +189 -0
  284. data/lib/dcl.rb +5084 -0
  285. data/math1_blklib.c +227 -0
  286. data/math1_chrlib.c +239 -0
  287. data/math1_fnclib.c +254 -0
  288. data/math1_gnmlib.c +356 -0
  289. data/math1_gt2dlib.c +514 -0
  290. data/math1_ifalib.c +427 -0
  291. data/math1_indxlib.c +709 -0
  292. data/math1_intlib.c +167 -0
  293. data/math1_lrllib.c +817 -0
  294. data/math1_maplib.c +172 -0
  295. data/math1_oslib.c +111 -0
  296. data/math1_rfalib.c +1417 -0
  297. data/math1_rfblib.c +232 -0
  298. data/math1_sublib.c +221 -0
  299. data/math1_syslib.c +2025 -0
  300. data/math1_vialib.c +1156 -0
  301. data/math1_viblib.c +1027 -0
  302. data/math1_vralib.c +1156 -0
  303. data/math1_vrblib.c +1027 -0
  304. data/math1_xfclib.c +142 -0
  305. data/math2_fftlib.c +833 -0
  306. data/math2_intrlib.c +138 -0
  307. data/math2_rnmlib.c +226 -0
  308. data/math2_shtlib.c +1568 -0
  309. data/math2_vstlib.c +366 -0
  310. data/misc1_chnlib.c +179 -0
  311. data/misc1_datelib.c +953 -0
  312. data/misc1_fmtlib.c +99 -0
  313. data/misc1_misclib.c +118 -0
  314. data/misc1_randlib.c +142 -0
  315. data/misc1_timelib.c +380 -0
  316. data/obsolete/README +2 -0
  317. data/obsolete/dcl_ext.html +112 -0
  318. data/obsolete/dcl_ext.rb +313 -0
  319. metadata +433 -0
data/grph2_ulpack.c ADDED
@@ -0,0 +1,1304 @@
1
+ /*
2
+ * $Id: p_header,v 1.2 2011-02-23 17:47:10 koshiro Exp $
3
+ */
4
+
5
+ #include <stdio.h>
6
+ #include "ruby.h"
7
+ #include "libtinyf2c.h"
8
+ #include "narray.h"
9
+
10
+ /* for compatibility with ruby 1.6 */
11
+ #ifndef StringValuePtr
12
+ #define StringValuePtr(s) STR2CSTR(s)
13
+ #endif
14
+
15
+ #define DFLT_SIZE 32
16
+
17
+ extern char *dcl_obj2ccharary(VALUE, int, int);
18
+ extern integer *dcl_obj2cintegerary(VALUE);
19
+ extern real *dcl_obj2crealary(VALUE);
20
+ extern complex *dcl_obj2ccomplexary(VALUE);
21
+ extern logical *dcl_obj2clogicalary(VALUE);
22
+
23
+ extern VALUE dcl_ccharary2obj(char *, int, int);
24
+ extern VALUE dcl_cintegerary2obj(integer *, int, int, int *);
25
+ extern VALUE dcl_crealary2obj(real *, int, int, int *);
26
+ extern VALUE dcl_ccomplexary2obj(complex *, int, char *);
27
+ extern VALUE dcl_clogicalary2obj(logical *, int, int, int *);
28
+
29
+ extern void dcl_freeccharary(char *);
30
+ extern void dcl_freecintegerary(integer *);
31
+ extern void dcl_freecrealary(real *);
32
+ extern void dcl_freeccomplexary(complex *);
33
+ extern void dcl_freeclogicalary(logical *);
34
+
35
+ /* for functions which return real */
36
+ /* fnclib */
37
+ extern real rd2r_(real *);
38
+ extern real rr2d_(real *);
39
+ extern real rexp_(real *, integer *, integer *);
40
+ extern real rfpi_(void);
41
+ extern real rmod_(real *, real *);
42
+ /* gnmlib */
43
+ extern real rgnlt_(real *);
44
+ extern real rgnle_(real *);
45
+ extern real rgngt_(real *);
46
+ extern real rgnge_(real *);
47
+ /* rfalib */
48
+ extern real rmax_(real *, integer *, integer *);
49
+ extern real rmin_(real *, integer *, integer *);
50
+ extern real rsum_(real *, integer *, integer *);
51
+ extern real rave_(real *, integer *, integer *);
52
+ extern real rvar_(real *, integer *, integer *);
53
+ extern real rstd_(real *, integer *, integer *);
54
+ extern real rrms_(real *, integer *, integer *);
55
+ extern real ramp_(real *, integer *, integer *);
56
+ /* rfblib */
57
+ extern real rprd_(real *, real *, integer *, integer *, integer *);
58
+ extern real rcov_(real *, real *, integer *, integer *, integer *);
59
+ extern real rcor_(real *, real *, integer *, integer *, integer *);
60
+
61
+
62
+ extern VALUE mDCL;
63
+
64
+ static VALUE
65
+ dcl_ulxlog(obj, cside, nlbl, nticks)
66
+ VALUE obj, cside, nlbl, nticks;
67
+ {
68
+ char *i_cside;
69
+ integer i_nlbl;
70
+ integer i_nticks;
71
+
72
+ if (TYPE(cside) != T_STRING) {
73
+ cside = rb_funcall(cside, rb_intern("to_str"), 0);
74
+ }
75
+ if ((TYPE(nlbl) != T_BIGNUM) || (TYPE(nlbl) != T_FIXNUM)) {
76
+ nlbl = rb_funcall(nlbl, rb_intern("to_i"), 0);
77
+ }
78
+ if ((TYPE(nticks) != T_BIGNUM) || (TYPE(nticks) != T_FIXNUM)) {
79
+ nticks = rb_funcall(nticks, rb_intern("to_i"), 0);
80
+ }
81
+
82
+ i_cside = StringValuePtr(cside);
83
+ i_nlbl = NUM2INT(nlbl);
84
+ i_nticks = NUM2INT(nticks);
85
+
86
+
87
+ ulxlog_(i_cside, &i_nlbl, &i_nticks, (ftnlen)strlen(i_cside));
88
+
89
+ return Qnil;
90
+
91
+ }
92
+
93
+ static VALUE
94
+ dcl_ulylog(obj, cside, nlbl, nticks)
95
+ VALUE obj, cside, nlbl, nticks;
96
+ {
97
+ char *i_cside;
98
+ integer i_nlbl;
99
+ integer i_nticks;
100
+
101
+ if (TYPE(cside) != T_STRING) {
102
+ cside = rb_funcall(cside, rb_intern("to_str"), 0);
103
+ }
104
+ if ((TYPE(nlbl) != T_BIGNUM) || (TYPE(nlbl) != T_FIXNUM)) {
105
+ nlbl = rb_funcall(nlbl, rb_intern("to_i"), 0);
106
+ }
107
+ if ((TYPE(nticks) != T_BIGNUM) || (TYPE(nticks) != T_FIXNUM)) {
108
+ nticks = rb_funcall(nticks, rb_intern("to_i"), 0);
109
+ }
110
+
111
+ i_cside = StringValuePtr(cside);
112
+ i_nlbl = NUM2INT(nlbl);
113
+ i_nticks = NUM2INT(nticks);
114
+
115
+
116
+ ulylog_(i_cside, &i_nlbl, &i_nticks, (ftnlen)strlen(i_cside));
117
+
118
+ return Qnil;
119
+
120
+ }
121
+
122
+ static VALUE
123
+ dcl_ulxlbl(obj, inum)
124
+ VALUE obj, inum;
125
+ {
126
+ real *o_bl;
127
+ integer o_nbl;
128
+ integer i_inum;
129
+ VALUE bl;
130
+ VALUE nbl;
131
+
132
+ if ((TYPE(inum) != T_BIGNUM) || (TYPE(inum) != T_FIXNUM)) {
133
+ inum = rb_funcall(inum, rb_intern("to_i"), 0);
134
+ }
135
+
136
+ i_inum = NUM2INT(inum);
137
+
138
+ o_bl= ALLOCA_N(real, (o_nbl));
139
+
140
+ ulxlbl_(o_bl, &o_nbl, &i_inum);
141
+
142
+ {int array_shape[1] = {o_nbl};
143
+ bl = dcl_crealary2obj(o_bl, (o_nbl), 1, array_shape);
144
+ }
145
+ nbl = INT2NUM(o_nbl);
146
+
147
+
148
+ return rb_ary_new3(2, bl, nbl);
149
+
150
+ }
151
+
152
+ static VALUE
153
+ dcl_ulsxbl(obj, bl, nbl)
154
+ VALUE obj, bl, nbl;
155
+ {
156
+ real *i_bl;
157
+ integer i_nbl;
158
+
159
+ if (TYPE(bl) == T_FLOAT) {
160
+ bl = rb_Array(bl);
161
+ }
162
+ /* if ((TYPE(bl) != T_ARRAY) &&
163
+ (rb_obj_is_kind_of(bl, cNArray) != Qtrue)) {
164
+ rb_raise(rb_eTypeError, "invalid type");
165
+ } -- no check since obj2c*ary will do that */
166
+ if ((TYPE(nbl) != T_BIGNUM) || (TYPE(nbl) != T_FIXNUM)) {
167
+ nbl = rb_funcall(nbl, rb_intern("to_i"), 0);
168
+ }
169
+
170
+ i_nbl = NUM2INT(nbl);
171
+ i_bl = dcl_obj2crealary(bl);
172
+
173
+
174
+ ulsxbl_(i_bl, &i_nbl);
175
+
176
+ dcl_freecrealary(i_bl);
177
+
178
+ return Qnil;
179
+
180
+ }
181
+
182
+ static VALUE
183
+ dcl_ulqxbl(obj)
184
+ VALUE obj;
185
+ {
186
+ real *o_bl;
187
+ integer o_nbl;
188
+ VALUE bl;
189
+ VALUE nbl;
190
+
191
+ o_bl= ALLOCA_N(real, (o_nbl));
192
+
193
+ ulqxbl_(o_bl, &o_nbl);
194
+
195
+ {int array_shape[1] = {o_nbl};
196
+ bl = dcl_crealary2obj(o_bl, (o_nbl), 1, array_shape);
197
+ }
198
+ nbl = INT2NUM(o_nbl);
199
+
200
+
201
+ return rb_ary_new3(2, bl, nbl);
202
+
203
+ }
204
+
205
+ static VALUE
206
+ dcl_ulylbl(obj, inum)
207
+ VALUE obj, inum;
208
+ {
209
+ real *o_bl;
210
+ integer o_nbl;
211
+ integer i_inum;
212
+ VALUE bl;
213
+ VALUE nbl;
214
+
215
+ if ((TYPE(inum) != T_BIGNUM) || (TYPE(inum) != T_FIXNUM)) {
216
+ inum = rb_funcall(inum, rb_intern("to_i"), 0);
217
+ }
218
+
219
+ i_inum = NUM2INT(inum);
220
+
221
+ o_bl= ALLOCA_N(real, (o_nbl));
222
+
223
+ ulylbl_(o_bl, &o_nbl, &i_inum);
224
+
225
+ {int array_shape[1] = {o_nbl};
226
+ bl = dcl_crealary2obj(o_bl, (o_nbl), 1, array_shape);
227
+ }
228
+ nbl = INT2NUM(o_nbl);
229
+
230
+
231
+ return rb_ary_new3(2, bl, nbl);
232
+
233
+ }
234
+
235
+ static VALUE
236
+ dcl_ulsybl(obj, bl, nbl)
237
+ VALUE obj, bl, nbl;
238
+ {
239
+ real *i_bl;
240
+ integer i_nbl;
241
+
242
+ if (TYPE(bl) == T_FLOAT) {
243
+ bl = rb_Array(bl);
244
+ }
245
+ /* if ((TYPE(bl) != T_ARRAY) &&
246
+ (rb_obj_is_kind_of(bl, cNArray) != Qtrue)) {
247
+ rb_raise(rb_eTypeError, "invalid type");
248
+ } -- no check since obj2c*ary will do that */
249
+ if ((TYPE(nbl) != T_BIGNUM) || (TYPE(nbl) != T_FIXNUM)) {
250
+ nbl = rb_funcall(nbl, rb_intern("to_i"), 0);
251
+ }
252
+
253
+ i_nbl = NUM2INT(nbl);
254
+ i_bl = dcl_obj2crealary(bl);
255
+
256
+
257
+ ulsybl_(i_bl, &i_nbl);
258
+
259
+ dcl_freecrealary(i_bl);
260
+
261
+ return Qnil;
262
+
263
+ }
264
+
265
+ static VALUE
266
+ dcl_ulqybl(obj)
267
+ VALUE obj;
268
+ {
269
+ real *o_bl;
270
+ integer o_nbl;
271
+ VALUE bl;
272
+ VALUE nbl;
273
+
274
+ o_bl= ALLOCA_N(real, (o_nbl));
275
+
276
+ ulqybl_(o_bl, &o_nbl);
277
+
278
+ {int array_shape[1] = {o_nbl};
279
+ bl = dcl_crealary2obj(o_bl, (o_nbl), 1, array_shape);
280
+ }
281
+ nbl = INT2NUM(o_nbl);
282
+
283
+
284
+ return rb_ary_new3(2, bl, nbl);
285
+
286
+ }
287
+
288
+ static VALUE
289
+ dcl_ulpqnp(obj)
290
+ VALUE obj;
291
+ {
292
+ integer o_ncp;
293
+ VALUE ncp;
294
+
295
+ ulpqnp_(&o_ncp);
296
+
297
+ ncp = INT2NUM(o_ncp);
298
+
299
+
300
+ return ncp;
301
+
302
+ }
303
+
304
+ static VALUE
305
+ dcl_ulpqid(obj, cp)
306
+ VALUE obj, cp;
307
+ {
308
+ char *i_cp;
309
+ integer o_idx;
310
+ VALUE idx;
311
+
312
+ if (TYPE(cp) != T_STRING) {
313
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
314
+ }
315
+
316
+ i_cp = StringValuePtr(cp);
317
+
318
+
319
+ ulpqid_(i_cp, &o_idx, (ftnlen)strlen(i_cp));
320
+
321
+ idx = INT2NUM(o_idx);
322
+
323
+
324
+ return idx;
325
+
326
+ }
327
+
328
+ static VALUE
329
+ dcl_ulpqcp(obj, idx)
330
+ VALUE obj, idx;
331
+ {
332
+ integer i_idx;
333
+ char *o_cp;
334
+ VALUE cp;
335
+
336
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
337
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
338
+ }
339
+
340
+ i_idx = NUM2INT(idx);
341
+
342
+ o_cp= ALLOCA_N(char, (DFLT_SIZE+1));
343
+ memset(o_cp, '\0', DFLT_SIZE+1);
344
+
345
+ ulpqcp_(&i_idx, o_cp, (ftnlen)DFLT_SIZE);
346
+
347
+ cp = rb_str_new2(o_cp);
348
+
349
+
350
+ return cp;
351
+
352
+ }
353
+
354
+ static VALUE
355
+ dcl_ulpqcl(obj, idx)
356
+ VALUE obj, idx;
357
+ {
358
+ integer i_idx;
359
+ char *o_cp;
360
+ VALUE cp;
361
+
362
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
363
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
364
+ }
365
+
366
+ i_idx = NUM2INT(idx);
367
+
368
+ o_cp= ALLOCA_N(char, (DFLT_SIZE+1));
369
+ memset(o_cp, '\0', DFLT_SIZE+1);
370
+
371
+ ulpqcl_(&i_idx, o_cp, (ftnlen)DFLT_SIZE);
372
+
373
+ cp = rb_str_new2(o_cp);
374
+
375
+
376
+ return cp;
377
+
378
+ }
379
+
380
+ static VALUE
381
+ dcl_ulpqit(obj, idx)
382
+ VALUE obj, idx;
383
+ {
384
+ integer i_idx;
385
+ integer o_itp;
386
+ VALUE itp;
387
+
388
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
389
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
390
+ }
391
+
392
+ i_idx = NUM2INT(idx);
393
+
394
+
395
+ ulpqit_(&i_idx, &o_itp);
396
+
397
+ itp = INT2NUM(o_itp);
398
+
399
+
400
+ return itp;
401
+
402
+ }
403
+
404
+ static VALUE
405
+ dcl_ulpqvl(obj, idx)
406
+ VALUE obj, idx;
407
+ {
408
+ integer i_idx;
409
+ integer o_ipara;
410
+ VALUE ipara;
411
+
412
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
413
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
414
+ }
415
+
416
+ i_idx = NUM2INT(idx);
417
+
418
+
419
+ ulpqvl_(&i_idx, &o_ipara);
420
+
421
+ ipara = INT2NUM(o_ipara);
422
+
423
+
424
+ return ipara;
425
+
426
+ }
427
+
428
+ static VALUE
429
+ dcl_ulpsvl(obj, idx, ipara)
430
+ VALUE obj, idx, ipara;
431
+ {
432
+ integer i_idx;
433
+ integer i_ipara;
434
+
435
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
436
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
437
+ }
438
+ if ((TYPE(ipara) != T_BIGNUM) || (TYPE(ipara) != T_FIXNUM)) {
439
+ ipara = rb_funcall(ipara, rb_intern("to_i"), 0);
440
+ }
441
+
442
+ i_idx = NUM2INT(idx);
443
+ i_ipara = NUM2INT(ipara);
444
+
445
+
446
+ ulpsvl_(&i_idx, &i_ipara);
447
+
448
+ return Qnil;
449
+
450
+ }
451
+
452
+ static VALUE
453
+ dcl_ulpqin(obj, cp)
454
+ VALUE obj, cp;
455
+ {
456
+ char *i_cp;
457
+ integer o_in;
458
+ VALUE in;
459
+
460
+ if (TYPE(cp) != T_STRING) {
461
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
462
+ }
463
+
464
+ i_cp = StringValuePtr(cp);
465
+
466
+
467
+ ulpqin_(i_cp, &o_in, (ftnlen)strlen(i_cp));
468
+
469
+ in = INT2NUM(o_in);
470
+
471
+
472
+ return in;
473
+
474
+ }
475
+
476
+ static VALUE
477
+ dcl_uliget(obj, cp)
478
+ VALUE obj, cp;
479
+ {
480
+ char *i_cp;
481
+ integer o_ipara;
482
+ VALUE ipara;
483
+
484
+ if (TYPE(cp) != T_STRING) {
485
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
486
+ }
487
+
488
+ i_cp = StringValuePtr(cp);
489
+
490
+
491
+ uliget_(i_cp, &o_ipara, (ftnlen)strlen(i_cp));
492
+
493
+ ipara = INT2NUM(o_ipara);
494
+
495
+
496
+ return ipara;
497
+
498
+ }
499
+
500
+ static VALUE
501
+ dcl_uliset(obj, cp, ipara)
502
+ VALUE obj, cp, ipara;
503
+ {
504
+ char *i_cp;
505
+ integer i_ipara;
506
+
507
+ if (TYPE(cp) != T_STRING) {
508
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
509
+ }
510
+ if ((TYPE(ipara) != T_BIGNUM) || (TYPE(ipara) != T_FIXNUM)) {
511
+ ipara = rb_funcall(ipara, rb_intern("to_i"), 0);
512
+ }
513
+
514
+ i_cp = StringValuePtr(cp);
515
+ i_ipara = NUM2INT(ipara);
516
+
517
+
518
+ uliset_(i_cp, &i_ipara, (ftnlen)strlen(i_cp));
519
+
520
+ return Qnil;
521
+
522
+ }
523
+
524
+ static VALUE
525
+ dcl_ulistx(obj, cp, ipara)
526
+ VALUE obj, cp, ipara;
527
+ {
528
+ char *i_cp;
529
+ integer i_ipara;
530
+
531
+ if (TYPE(cp) != T_STRING) {
532
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
533
+ }
534
+ if ((TYPE(ipara) != T_BIGNUM) || (TYPE(ipara) != T_FIXNUM)) {
535
+ ipara = rb_funcall(ipara, rb_intern("to_i"), 0);
536
+ }
537
+
538
+ i_cp = StringValuePtr(cp);
539
+ i_ipara = NUM2INT(ipara);
540
+
541
+
542
+ ulistx_(i_cp, &i_ipara, (ftnlen)strlen(i_cp));
543
+
544
+ return Qnil;
545
+
546
+ }
547
+
548
+ static VALUE
549
+ dcl_uliqnp(obj)
550
+ VALUE obj;
551
+ {
552
+ integer o_ncp;
553
+ VALUE ncp;
554
+
555
+ uliqnp_(&o_ncp);
556
+
557
+ ncp = INT2NUM(o_ncp);
558
+
559
+
560
+ return ncp;
561
+
562
+ }
563
+
564
+ static VALUE
565
+ dcl_uliqid(obj, cp)
566
+ VALUE obj, cp;
567
+ {
568
+ char *i_cp;
569
+ integer o_idx;
570
+ VALUE idx;
571
+
572
+ if (TYPE(cp) != T_STRING) {
573
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
574
+ }
575
+
576
+ i_cp = StringValuePtr(cp);
577
+
578
+
579
+ uliqid_(i_cp, &o_idx, (ftnlen)strlen(i_cp));
580
+
581
+ idx = INT2NUM(o_idx);
582
+
583
+
584
+ return idx;
585
+
586
+ }
587
+
588
+ static VALUE
589
+ dcl_uliqcp(obj, idx)
590
+ VALUE obj, idx;
591
+ {
592
+ integer i_idx;
593
+ char *o_cp;
594
+ VALUE cp;
595
+
596
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
597
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
598
+ }
599
+
600
+ i_idx = NUM2INT(idx);
601
+
602
+ o_cp= ALLOCA_N(char, (DFLT_SIZE+1));
603
+ memset(o_cp, '\0', DFLT_SIZE+1);
604
+
605
+ uliqcp_(&i_idx, o_cp, (ftnlen)DFLT_SIZE);
606
+
607
+ cp = rb_str_new2(o_cp);
608
+
609
+
610
+ return cp;
611
+
612
+ }
613
+
614
+ static VALUE
615
+ dcl_uliqcl(obj, idx)
616
+ VALUE obj, idx;
617
+ {
618
+ integer i_idx;
619
+ char *o_cp;
620
+ VALUE cp;
621
+
622
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
623
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
624
+ }
625
+
626
+ i_idx = NUM2INT(idx);
627
+
628
+ o_cp= ALLOCA_N(char, (DFLT_SIZE+1));
629
+ memset(o_cp, '\0', DFLT_SIZE+1);
630
+
631
+ uliqcl_(&i_idx, o_cp, (ftnlen)DFLT_SIZE);
632
+
633
+ cp = rb_str_new2(o_cp);
634
+
635
+
636
+ return cp;
637
+
638
+ }
639
+
640
+ static VALUE
641
+ dcl_uliqvl(obj, idx)
642
+ VALUE obj, idx;
643
+ {
644
+ integer i_idx;
645
+ integer o_ipara;
646
+ VALUE ipara;
647
+
648
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
649
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
650
+ }
651
+
652
+ i_idx = NUM2INT(idx);
653
+
654
+
655
+ uliqvl_(&i_idx, &o_ipara);
656
+
657
+ ipara = INT2NUM(o_ipara);
658
+
659
+
660
+ return ipara;
661
+
662
+ }
663
+
664
+ static VALUE
665
+ dcl_ulisvl(obj, idx, ipara)
666
+ VALUE obj, idx, ipara;
667
+ {
668
+ integer i_idx;
669
+ integer i_ipara;
670
+
671
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
672
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
673
+ }
674
+ if ((TYPE(ipara) != T_BIGNUM) || (TYPE(ipara) != T_FIXNUM)) {
675
+ ipara = rb_funcall(ipara, rb_intern("to_i"), 0);
676
+ }
677
+
678
+ i_idx = NUM2INT(idx);
679
+ i_ipara = NUM2INT(ipara);
680
+
681
+
682
+ ulisvl_(&i_idx, &i_ipara);
683
+
684
+ return Qnil;
685
+
686
+ }
687
+
688
+ static VALUE
689
+ dcl_uliqin(obj, cp)
690
+ VALUE obj, cp;
691
+ {
692
+ char *i_cp;
693
+ integer o_in;
694
+ VALUE in;
695
+
696
+ if (TYPE(cp) != T_STRING) {
697
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
698
+ }
699
+
700
+ i_cp = StringValuePtr(cp);
701
+
702
+
703
+ uliqin_(i_cp, &o_in, (ftnlen)strlen(i_cp));
704
+
705
+ in = INT2NUM(o_in);
706
+
707
+
708
+ return in;
709
+
710
+ }
711
+
712
+ static VALUE
713
+ dcl_ullget(obj, cp)
714
+ VALUE obj, cp;
715
+ {
716
+ char *i_cp;
717
+ logical o_lpara;
718
+ VALUE lpara;
719
+
720
+ if (TYPE(cp) != T_STRING) {
721
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
722
+ }
723
+
724
+ i_cp = StringValuePtr(cp);
725
+
726
+
727
+ ullget_(i_cp, &o_lpara, (ftnlen)strlen(i_cp));
728
+
729
+ lpara = (o_lpara == FALSE_) ? Qfalse : Qtrue;
730
+
731
+
732
+ return lpara;
733
+
734
+ }
735
+
736
+ static VALUE
737
+ dcl_ullset(obj, cp, lpara)
738
+ VALUE obj, cp, lpara;
739
+ {
740
+ char *i_cp;
741
+ logical i_lpara;
742
+
743
+ if (TYPE(cp) != T_STRING) {
744
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
745
+ }
746
+
747
+ i_cp = StringValuePtr(cp);
748
+ i_lpara = ((lpara == Qnil)||(lpara == Qfalse)) ? FALSE_ : TRUE_;
749
+
750
+
751
+ ullset_(i_cp, &i_lpara, (ftnlen)strlen(i_cp));
752
+
753
+ return Qnil;
754
+
755
+ }
756
+
757
+ static VALUE
758
+ dcl_ullstx(obj, cp, lpara)
759
+ VALUE obj, cp, lpara;
760
+ {
761
+ char *i_cp;
762
+ logical i_lpara;
763
+
764
+ if (TYPE(cp) != T_STRING) {
765
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
766
+ }
767
+
768
+ i_cp = StringValuePtr(cp);
769
+ i_lpara = ((lpara == Qnil)||(lpara == Qfalse)) ? FALSE_ : TRUE_;
770
+
771
+
772
+ ullstx_(i_cp, &i_lpara, (ftnlen)strlen(i_cp));
773
+
774
+ return Qnil;
775
+
776
+ }
777
+
778
+ static VALUE
779
+ dcl_ullqnp(obj)
780
+ VALUE obj;
781
+ {
782
+ integer o_ncp;
783
+ VALUE ncp;
784
+
785
+ ullqnp_(&o_ncp);
786
+
787
+ ncp = INT2NUM(o_ncp);
788
+
789
+
790
+ return ncp;
791
+
792
+ }
793
+
794
+ static VALUE
795
+ dcl_ullqid(obj, cp)
796
+ VALUE obj, cp;
797
+ {
798
+ char *i_cp;
799
+ integer o_idx;
800
+ VALUE idx;
801
+
802
+ if (TYPE(cp) != T_STRING) {
803
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
804
+ }
805
+
806
+ i_cp = StringValuePtr(cp);
807
+
808
+
809
+ ullqid_(i_cp, &o_idx, (ftnlen)strlen(i_cp));
810
+
811
+ idx = INT2NUM(o_idx);
812
+
813
+
814
+ return idx;
815
+
816
+ }
817
+
818
+ static VALUE
819
+ dcl_ullqcp(obj, idx)
820
+ VALUE obj, idx;
821
+ {
822
+ integer i_idx;
823
+ char *o_cp;
824
+ VALUE cp;
825
+
826
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
827
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
828
+ }
829
+
830
+ i_idx = NUM2INT(idx);
831
+
832
+ o_cp= ALLOCA_N(char, (DFLT_SIZE+1));
833
+ memset(o_cp, '\0', DFLT_SIZE+1);
834
+
835
+ ullqcp_(&i_idx, o_cp, (ftnlen)DFLT_SIZE);
836
+
837
+ cp = rb_str_new2(o_cp);
838
+
839
+
840
+ return cp;
841
+
842
+ }
843
+
844
+ static VALUE
845
+ dcl_ullqcl(obj, idx)
846
+ VALUE obj, idx;
847
+ {
848
+ integer i_idx;
849
+ char *o_cp;
850
+ VALUE cp;
851
+
852
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
853
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
854
+ }
855
+
856
+ i_idx = NUM2INT(idx);
857
+
858
+ o_cp= ALLOCA_N(char, (DFLT_SIZE+1));
859
+ memset(o_cp, '\0', DFLT_SIZE+1);
860
+
861
+ ullqcl_(&i_idx, o_cp, (ftnlen)DFLT_SIZE);
862
+
863
+ cp = rb_str_new2(o_cp);
864
+
865
+
866
+ return cp;
867
+
868
+ }
869
+
870
+ static VALUE
871
+ dcl_ullqvl(obj, idx)
872
+ VALUE obj, idx;
873
+ {
874
+ integer i_idx;
875
+ logical o_lpara;
876
+ VALUE lpara;
877
+
878
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
879
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
880
+ }
881
+
882
+ i_idx = NUM2INT(idx);
883
+
884
+
885
+ ullqvl_(&i_idx, &o_lpara);
886
+
887
+ lpara = (o_lpara == FALSE_) ? Qfalse : Qtrue;
888
+
889
+
890
+ return lpara;
891
+
892
+ }
893
+
894
+ static VALUE
895
+ dcl_ullsvl(obj, idx, lpara)
896
+ VALUE obj, idx, lpara;
897
+ {
898
+ integer i_idx;
899
+ logical i_lpara;
900
+
901
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
902
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
903
+ }
904
+
905
+ i_idx = NUM2INT(idx);
906
+ i_lpara = ((lpara == Qnil)||(lpara == Qfalse)) ? FALSE_ : TRUE_;
907
+
908
+
909
+ ullsvl_(&i_idx, &i_lpara);
910
+
911
+ return Qnil;
912
+
913
+ }
914
+
915
+ static VALUE
916
+ dcl_ullqin(obj, cp)
917
+ VALUE obj, cp;
918
+ {
919
+ char *i_cp;
920
+ integer o_in;
921
+ VALUE in;
922
+
923
+ if (TYPE(cp) != T_STRING) {
924
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
925
+ }
926
+
927
+ i_cp = StringValuePtr(cp);
928
+
929
+
930
+ ullqin_(i_cp, &o_in, (ftnlen)strlen(i_cp));
931
+
932
+ in = INT2NUM(o_in);
933
+
934
+
935
+ return in;
936
+
937
+ }
938
+
939
+ static VALUE
940
+ dcl_ulrget(obj, cp)
941
+ VALUE obj, cp;
942
+ {
943
+ char *i_cp;
944
+ real o_rpara;
945
+ VALUE rpara;
946
+
947
+ if (TYPE(cp) != T_STRING) {
948
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
949
+ }
950
+
951
+ i_cp = StringValuePtr(cp);
952
+
953
+
954
+ ulrget_(i_cp, &o_rpara, (ftnlen)strlen(i_cp));
955
+
956
+ rpara = rb_float_new((double)o_rpara);
957
+
958
+
959
+ return rpara;
960
+
961
+ }
962
+
963
+ static VALUE
964
+ dcl_ulrset(obj, cp, rpara)
965
+ VALUE obj, cp, rpara;
966
+ {
967
+ char *i_cp;
968
+ real i_rpara;
969
+
970
+ if (TYPE(cp) != T_STRING) {
971
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
972
+ }
973
+ if (TYPE(rpara) != T_FLOAT) {
974
+ rpara = rb_funcall(rpara, rb_intern("to_f"), 0);
975
+ }
976
+
977
+ i_cp = StringValuePtr(cp);
978
+ i_rpara = (real)NUM2DBL(rpara);
979
+
980
+
981
+ ulrset_(i_cp, &i_rpara, (ftnlen)strlen(i_cp));
982
+
983
+ return Qnil;
984
+
985
+ }
986
+
987
+ static VALUE
988
+ dcl_ulrstx(obj, cp, rpara)
989
+ VALUE obj, cp, rpara;
990
+ {
991
+ char *i_cp;
992
+ real i_rpara;
993
+
994
+ if (TYPE(cp) != T_STRING) {
995
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
996
+ }
997
+ if (TYPE(rpara) != T_FLOAT) {
998
+ rpara = rb_funcall(rpara, rb_intern("to_f"), 0);
999
+ }
1000
+
1001
+ i_cp = StringValuePtr(cp);
1002
+ i_rpara = (real)NUM2DBL(rpara);
1003
+
1004
+
1005
+ ulrstx_(i_cp, &i_rpara, (ftnlen)strlen(i_cp));
1006
+
1007
+ return Qnil;
1008
+
1009
+ }
1010
+
1011
+ static VALUE
1012
+ dcl_ulrqnp(obj)
1013
+ VALUE obj;
1014
+ {
1015
+ integer o_ncp;
1016
+ VALUE ncp;
1017
+
1018
+ ulrqnp_(&o_ncp);
1019
+
1020
+ ncp = INT2NUM(o_ncp);
1021
+
1022
+
1023
+ return ncp;
1024
+
1025
+ }
1026
+
1027
+ static VALUE
1028
+ dcl_ulrqid(obj, cp)
1029
+ VALUE obj, cp;
1030
+ {
1031
+ char *i_cp;
1032
+ integer o_idx;
1033
+ VALUE idx;
1034
+
1035
+ if (TYPE(cp) != T_STRING) {
1036
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
1037
+ }
1038
+
1039
+ i_cp = StringValuePtr(cp);
1040
+
1041
+
1042
+ ulrqid_(i_cp, &o_idx, (ftnlen)strlen(i_cp));
1043
+
1044
+ idx = INT2NUM(o_idx);
1045
+
1046
+
1047
+ return idx;
1048
+
1049
+ }
1050
+
1051
+ static VALUE
1052
+ dcl_ulrqcp(obj, idx)
1053
+ VALUE obj, idx;
1054
+ {
1055
+ integer i_idx;
1056
+ char *o_cp;
1057
+ VALUE cp;
1058
+
1059
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
1060
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
1061
+ }
1062
+
1063
+ i_idx = NUM2INT(idx);
1064
+
1065
+ o_cp= ALLOCA_N(char, (DFLT_SIZE+1));
1066
+ memset(o_cp, '\0', DFLT_SIZE+1);
1067
+
1068
+ ulrqcp_(&i_idx, o_cp, (ftnlen)DFLT_SIZE);
1069
+
1070
+ cp = rb_str_new2(o_cp);
1071
+
1072
+
1073
+ return cp;
1074
+
1075
+ }
1076
+
1077
+ static VALUE
1078
+ dcl_ulrqcl(obj, idx)
1079
+ VALUE obj, idx;
1080
+ {
1081
+ integer i_idx;
1082
+ char *o_cp;
1083
+ VALUE cp;
1084
+
1085
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
1086
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
1087
+ }
1088
+
1089
+ i_idx = NUM2INT(idx);
1090
+
1091
+ o_cp= ALLOCA_N(char, (DFLT_SIZE+1));
1092
+ memset(o_cp, '\0', DFLT_SIZE+1);
1093
+
1094
+ ulrqcl_(&i_idx, o_cp, (ftnlen)DFLT_SIZE);
1095
+
1096
+ cp = rb_str_new2(o_cp);
1097
+
1098
+
1099
+ return cp;
1100
+
1101
+ }
1102
+
1103
+ static VALUE
1104
+ dcl_ulrqvl(obj, idx)
1105
+ VALUE obj, idx;
1106
+ {
1107
+ integer i_idx;
1108
+ real o_rpara;
1109
+ VALUE rpara;
1110
+
1111
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
1112
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
1113
+ }
1114
+
1115
+ i_idx = NUM2INT(idx);
1116
+
1117
+
1118
+ ulrqvl_(&i_idx, &o_rpara);
1119
+
1120
+ rpara = rb_float_new((double)o_rpara);
1121
+
1122
+
1123
+ return rpara;
1124
+
1125
+ }
1126
+
1127
+ static VALUE
1128
+ dcl_ulrsvl(obj, idx, rpara)
1129
+ VALUE obj, idx, rpara;
1130
+ {
1131
+ integer i_idx;
1132
+ real i_rpara;
1133
+
1134
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
1135
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
1136
+ }
1137
+ if (TYPE(rpara) != T_FLOAT) {
1138
+ rpara = rb_funcall(rpara, rb_intern("to_f"), 0);
1139
+ }
1140
+
1141
+ i_idx = NUM2INT(idx);
1142
+ i_rpara = (real)NUM2DBL(rpara);
1143
+
1144
+
1145
+ ulrsvl_(&i_idx, &i_rpara);
1146
+
1147
+ return Qnil;
1148
+
1149
+ }
1150
+
1151
+ static VALUE
1152
+ dcl_ulrqin(obj, cp)
1153
+ VALUE obj, cp;
1154
+ {
1155
+ char *i_cp;
1156
+ integer o_in;
1157
+ VALUE in;
1158
+
1159
+ if (TYPE(cp) != T_STRING) {
1160
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
1161
+ }
1162
+
1163
+ i_cp = StringValuePtr(cp);
1164
+
1165
+
1166
+ ulrqin_(i_cp, &o_in, (ftnlen)strlen(i_cp));
1167
+
1168
+ in = INT2NUM(o_in);
1169
+
1170
+
1171
+ return in;
1172
+
1173
+ }
1174
+
1175
+ static VALUE
1176
+ dcl_ulxsfm(obj, cxfmt)
1177
+ VALUE obj, cxfmt;
1178
+ {
1179
+ char *i_cxfmt;
1180
+
1181
+ if (TYPE(cxfmt) != T_STRING) {
1182
+ cxfmt = rb_funcall(cxfmt, rb_intern("to_str"), 0);
1183
+ }
1184
+
1185
+ i_cxfmt = StringValuePtr(cxfmt);
1186
+
1187
+
1188
+ ulxsfm_(i_cxfmt, (ftnlen)strlen(i_cxfmt));
1189
+
1190
+ return Qnil;
1191
+
1192
+ }
1193
+
1194
+ static VALUE
1195
+ dcl_ulxqfm(obj)
1196
+ VALUE obj;
1197
+ {
1198
+ char *o_cxfmt;
1199
+ VALUE cxfmt;
1200
+
1201
+ o_cxfmt= ALLOCA_N(char, (DFLT_SIZE+1));
1202
+ memset(o_cxfmt, '\0', DFLT_SIZE+1);
1203
+
1204
+ ulxqfm_(o_cxfmt, (ftnlen)DFLT_SIZE);
1205
+
1206
+ cxfmt = rb_str_new2(o_cxfmt);
1207
+
1208
+
1209
+ return cxfmt;
1210
+
1211
+ }
1212
+
1213
+ static VALUE
1214
+ dcl_ulysfm(obj, cyfmt)
1215
+ VALUE obj, cyfmt;
1216
+ {
1217
+ char *i_cyfmt;
1218
+
1219
+ if (TYPE(cyfmt) != T_STRING) {
1220
+ cyfmt = rb_funcall(cyfmt, rb_intern("to_str"), 0);
1221
+ }
1222
+
1223
+ i_cyfmt = StringValuePtr(cyfmt);
1224
+
1225
+
1226
+ ulysfm_(i_cyfmt, (ftnlen)strlen(i_cyfmt));
1227
+
1228
+ return Qnil;
1229
+
1230
+ }
1231
+
1232
+ static VALUE
1233
+ dcl_ulyqfm(obj)
1234
+ VALUE obj;
1235
+ {
1236
+ char *o_cyfmt;
1237
+ VALUE cyfmt;
1238
+
1239
+ o_cyfmt= ALLOCA_N(char, (DFLT_SIZE+1));
1240
+ memset(o_cyfmt, '\0', DFLT_SIZE+1);
1241
+
1242
+ ulyqfm_(o_cyfmt, (ftnlen)DFLT_SIZE);
1243
+
1244
+ cyfmt = rb_str_new2(o_cyfmt);
1245
+
1246
+
1247
+ return cyfmt;
1248
+
1249
+ }
1250
+ void
1251
+ init_grph2_ulpack(mDCL)
1252
+ VALUE mDCL;
1253
+ {
1254
+ rb_define_module_function(mDCL, "ulxlog", dcl_ulxlog, 3);
1255
+ rb_define_module_function(mDCL, "ulylog", dcl_ulylog, 3);
1256
+ rb_define_module_function(mDCL, "ulxlbl", dcl_ulxlbl, 1);
1257
+ rb_define_module_function(mDCL, "ulsxbl", dcl_ulsxbl, 2);
1258
+ rb_define_module_function(mDCL, "ulqxbl", dcl_ulqxbl, 0);
1259
+ rb_define_module_function(mDCL, "ulylbl", dcl_ulylbl, 1);
1260
+ rb_define_module_function(mDCL, "ulsybl", dcl_ulsybl, 2);
1261
+ rb_define_module_function(mDCL, "ulqybl", dcl_ulqybl, 0);
1262
+ rb_define_module_function(mDCL, "ulpqnp", dcl_ulpqnp, 0);
1263
+ rb_define_module_function(mDCL, "ulpqid", dcl_ulpqid, 1);
1264
+ rb_define_module_function(mDCL, "ulpqcp", dcl_ulpqcp, 1);
1265
+ rb_define_module_function(mDCL, "ulpqcl", dcl_ulpqcl, 1);
1266
+ rb_define_module_function(mDCL, "ulpqit", dcl_ulpqit, 1);
1267
+ rb_define_module_function(mDCL, "ulpqvl", dcl_ulpqvl, 1);
1268
+ rb_define_module_function(mDCL, "ulpsvl", dcl_ulpsvl, 2);
1269
+ rb_define_module_function(mDCL, "ulpqin", dcl_ulpqin, 1);
1270
+ rb_define_module_function(mDCL, "uliget", dcl_uliget, 1);
1271
+ rb_define_module_function(mDCL, "uliset", dcl_uliset, 2);
1272
+ rb_define_module_function(mDCL, "ulistx", dcl_ulistx, 2);
1273
+ rb_define_module_function(mDCL, "uliqnp", dcl_uliqnp, 0);
1274
+ rb_define_module_function(mDCL, "uliqid", dcl_uliqid, 1);
1275
+ rb_define_module_function(mDCL, "uliqcp", dcl_uliqcp, 1);
1276
+ rb_define_module_function(mDCL, "uliqcl", dcl_uliqcl, 1);
1277
+ rb_define_module_function(mDCL, "uliqvl", dcl_uliqvl, 1);
1278
+ rb_define_module_function(mDCL, "ulisvl", dcl_ulisvl, 2);
1279
+ rb_define_module_function(mDCL, "uliqin", dcl_uliqin, 1);
1280
+ rb_define_module_function(mDCL, "ullget", dcl_ullget, 1);
1281
+ rb_define_module_function(mDCL, "ullset", dcl_ullset, 2);
1282
+ rb_define_module_function(mDCL, "ullstx", dcl_ullstx, 2);
1283
+ rb_define_module_function(mDCL, "ullqnp", dcl_ullqnp, 0);
1284
+ rb_define_module_function(mDCL, "ullqid", dcl_ullqid, 1);
1285
+ rb_define_module_function(mDCL, "ullqcp", dcl_ullqcp, 1);
1286
+ rb_define_module_function(mDCL, "ullqcl", dcl_ullqcl, 1);
1287
+ rb_define_module_function(mDCL, "ullqvl", dcl_ullqvl, 1);
1288
+ rb_define_module_function(mDCL, "ullsvl", dcl_ullsvl, 2);
1289
+ rb_define_module_function(mDCL, "ullqin", dcl_ullqin, 1);
1290
+ rb_define_module_function(mDCL, "ulrget", dcl_ulrget, 1);
1291
+ rb_define_module_function(mDCL, "ulrset", dcl_ulrset, 2);
1292
+ rb_define_module_function(mDCL, "ulrstx", dcl_ulrstx, 2);
1293
+ rb_define_module_function(mDCL, "ulrqnp", dcl_ulrqnp, 0);
1294
+ rb_define_module_function(mDCL, "ulrqid", dcl_ulrqid, 1);
1295
+ rb_define_module_function(mDCL, "ulrqcp", dcl_ulrqcp, 1);
1296
+ rb_define_module_function(mDCL, "ulrqcl", dcl_ulrqcl, 1);
1297
+ rb_define_module_function(mDCL, "ulrqvl", dcl_ulrqvl, 1);
1298
+ rb_define_module_function(mDCL, "ulrsvl", dcl_ulrsvl, 2);
1299
+ rb_define_module_function(mDCL, "ulrqin", dcl_ulrqin, 1);
1300
+ rb_define_module_function(mDCL, "ulxsfm", dcl_ulxsfm, 1);
1301
+ rb_define_module_function(mDCL, "ulxqfm", dcl_ulxqfm, 0);
1302
+ rb_define_module_function(mDCL, "ulysfm", dcl_ulysfm, 1);
1303
+ rb_define_module_function(mDCL, "ulyqfm", dcl_ulyqfm, 0);
1304
+ }