gecoder-with-gecode 0.7.1 → 0.8.0

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 (1063) hide show
  1. data/CHANGES +7 -0
  2. data/README +10 -1
  3. data/ext/extconf.rb +24 -7
  4. data/ext/gecode-2.1.1/LICENSE +25 -0
  5. data/ext/gecode-2.1.1/Makefile.contribs +86 -0
  6. data/ext/gecode-2.1.1/Makefile.dep +7622 -0
  7. data/ext/gecode-2.1.1/Makefile.in +1568 -0
  8. data/ext/gecode-2.1.1/changelog.in +2459 -0
  9. data/ext/gecode-2.1.1/configure +11631 -0
  10. data/ext/gecode-2.1.1/configure.ac +249 -0
  11. data/ext/gecode-2.1.1/configure.ac.in +245 -0
  12. data/ext/{gecode-1.3.1 → gecode-2.1.1}/contribs/README +0 -0
  13. data/ext/gecode-2.1.1/contribs/qecode/Doxyfile +263 -0
  14. data/ext/gecode-2.1.1/contribs/qecode/FirstFailValueHeuristic.cc +82 -0
  15. data/ext/gecode-2.1.1/contribs/qecode/FirstFailValueHeuristic.hh +37 -0
  16. data/ext/gecode-2.1.1/contribs/qecode/Makefile.in.in +162 -0
  17. data/ext/gecode-2.1.1/contribs/qecode/NaiveValueHeuristics.cc +172 -0
  18. data/ext/gecode-2.1.1/contribs/qecode/NaiveValueHeuristics.hh +63 -0
  19. data/ext/gecode-2.1.1/contribs/qecode/SDFVariableHeuristic.cc +37 -0
  20. data/ext/gecode-2.1.1/contribs/qecode/SDFVariableHeuristic.hh +35 -0
  21. data/ext/gecode-2.1.1/contribs/qecode/configure +2264 -0
  22. data/ext/gecode-2.1.1/contribs/qecode/configure.ac +23 -0
  23. data/ext/gecode-2.1.1/contribs/qecode/examples/COMPILING +13 -0
  24. data/ext/gecode-2.1.1/contribs/qecode/examples/MatrixGame.cpp +144 -0
  25. data/ext/gecode-2.1.1/contribs/qecode/examples/NimFibo.cpp +73 -0
  26. data/ext/gecode-2.1.1/contribs/qecode/examples/stress_test.cpp +179 -0
  27. data/ext/gecode-2.1.1/contribs/qecode/extensivecomparator.cc +34 -0
  28. data/ext/gecode-2.1.1/contribs/qecode/extensivecomparator.hh +46 -0
  29. data/ext/gecode-2.1.1/contribs/qecode/heap.cc +151 -0
  30. data/ext/gecode-2.1.1/contribs/qecode/implicative.cc +595 -0
  31. data/ext/gecode-2.1.1/contribs/qecode/implicative.hh +184 -0
  32. data/ext/gecode-2.1.1/contribs/qecode/myDom.cc +39 -0
  33. data/ext/gecode-2.1.1/contribs/qecode/myspace.cc +69 -0
  34. data/ext/gecode-2.1.1/contribs/qecode/myspace.hh +69 -0
  35. data/ext/gecode-2.1.1/contribs/qecode/qecode.hh +56 -0
  36. data/ext/gecode-2.1.1/contribs/qecode/qecore.cc +145 -0
  37. data/ext/gecode-2.1.1/contribs/qecode/qecore.hh +247 -0
  38. data/ext/gecode-2.1.1/contribs/qecode/qsolver.cc +168 -0
  39. data/ext/gecode-2.1.1/contribs/qecode/qsolver.hh +73 -0
  40. data/ext/gecode-2.1.1/contribs/qecode/shortdesc.ac +1 -0
  41. data/ext/gecode-2.1.1/contribs/qecode/valueHeuristic.hh +91 -0
  42. data/ext/gecode-2.1.1/contribs/qecode/vartype.hh +31 -0
  43. data/ext/gecode-2.1.1/contribs/qecode/warner.cc +101 -0
  44. data/ext/gecode-2.1.1/contribs/qecode/warner.hh +83 -0
  45. data/ext/gecode-2.1.1/doxygen/doxygen.conf.in +1270 -0
  46. data/ext/gecode-2.1.1/doxygen/doxygen.hh.in +1111 -0
  47. data/ext/gecode-2.1.1/doxygen/reflection.hh +417 -0
  48. data/ext/gecode-2.1.1/gecode.m4 +956 -0
  49. data/ext/gecode-2.1.1/gecode/cpltset.hh +797 -0
  50. data/ext/gecode-2.1.1/gecode/cpltset/array.cc +121 -0
  51. data/ext/gecode-2.1.1/gecode/cpltset/array.icc +81 -0
  52. data/ext/gecode-2.1.1/gecode/cpltset/bddmanager.cc +59 -0
  53. data/ext/gecode-2.1.1/gecode/cpltset/bddmanager.icc +448 -0
  54. data/ext/gecode-2.1.1/gecode/cpltset/branch.cc +68 -0
  55. data/ext/gecode-2.1.1/gecode/cpltset/branch.hh +208 -0
  56. data/ext/gecode-2.1.1/gecode/cpltset/branch/select-val.icc +167 -0
  57. data/ext/gecode-2.1.1/gecode/cpltset/branch/select-view.icc +143 -0
  58. data/ext/gecode-2.1.1/gecode/cpltset/constraints/atmost.cc +472 -0
  59. data/ext/gecode-2.1.1/gecode/cpltset/constraints/cardinality.cc +69 -0
  60. data/ext/gecode-2.1.1/gecode/cpltset/constraints/distinct.cc +83 -0
  61. data/ext/gecode-2.1.1/gecode/cpltset/constraints/dom.cc +147 -0
  62. data/ext/gecode-2.1.1/gecode/cpltset/constraints/partition.cc +383 -0
  63. data/ext/gecode-2.1.1/gecode/cpltset/constraints/rangeroots.cc +466 -0
  64. data/ext/gecode-2.1.1/gecode/cpltset/constraints/rel.cc +530 -0
  65. data/ext/gecode-2.1.1/gecode/cpltset/constraints/select.cc +126 -0
  66. data/ext/gecode-2.1.1/gecode/cpltset/constraints/singleton.cc +55 -0
  67. data/ext/gecode-2.1.1/gecode/cpltset/exception.icc +172 -0
  68. data/ext/gecode-2.1.1/gecode/cpltset/propagators.hh +335 -0
  69. data/ext/gecode-2.1.1/gecode/cpltset/propagators/binary.icc +260 -0
  70. data/ext/gecode-2.1.1/gecode/cpltset/propagators/nary.icc +210 -0
  71. data/ext/gecode-2.1.1/gecode/cpltset/propagators/naryone.icc +165 -0
  72. data/ext/gecode-2.1.1/gecode/cpltset/propagators/narytwo.icc +191 -0
  73. data/ext/gecode-2.1.1/gecode/cpltset/propagators/singleton.icc +130 -0
  74. data/ext/gecode-2.1.1/gecode/cpltset/propagators/unary.icc +132 -0
  75. data/ext/gecode-2.1.1/gecode/cpltset/support.cc +673 -0
  76. data/ext/gecode-2.1.1/gecode/cpltset/support.icc +696 -0
  77. data/ext/gecode-2.1.1/gecode/cpltset/var-imp.icc +487 -0
  78. data/ext/gecode-2.1.1/gecode/cpltset/var-imp/cpltset.cc +926 -0
  79. data/ext/gecode-2.1.1/gecode/cpltset/var-imp/cpltset.icc +687 -0
  80. data/ext/gecode-2.1.1/gecode/cpltset/var-imp/cpltset.vis +86 -0
  81. data/ext/gecode-2.1.1/gecode/cpltset/var/cpltset.cc +101 -0
  82. data/ext/gecode-2.1.1/gecode/cpltset/var/cpltset.icc +219 -0
  83. data/ext/gecode-2.1.1/gecode/cpltset/view.icc +231 -0
  84. data/ext/gecode-2.1.1/gecode/cpltset/view/cpltset.icc +420 -0
  85. data/ext/gecode-2.1.1/gecode/cpltset/view/print.cc +166 -0
  86. data/ext/gecode-2.1.1/gecode/gist.hh +162 -0
  87. data/ext/gecode-2.1.1/gecode/gist/addchild.cc +191 -0
  88. data/ext/gecode-2.1.1/gecode/gist/addchild.hh +76 -0
  89. data/ext/gecode-2.1.1/gecode/gist/addvisualisationdialog.cc +139 -0
  90. data/ext/gecode-2.1.1/gecode/gist/addvisualisationdialog.hh +78 -0
  91. data/ext/gecode-2.1.1/gecode/gist/analysiscursor.cc +115 -0
  92. data/ext/gecode-2.1.1/gecode/gist/analysiscursor.hh +77 -0
  93. data/ext/gecode-2.1.1/gecode/gist/better.hh +59 -0
  94. data/ext/gecode-2.1.1/gecode/gist/config.cc +61 -0
  95. data/ext/gecode-2.1.1/gecode/gist/config.hh +62 -0
  96. data/ext/gecode-2.1.1/gecode/gist/drawingcursor.cc +245 -0
  97. data/ext/gecode-2.1.1/gecode/gist/drawingcursor.hh +101 -0
  98. data/ext/gecode-2.1.1/gecode/gist/gecodelogo.icc +522 -0
  99. data/ext/gecode-2.1.1/gecode/gist/gist.cc +129 -0
  100. data/ext/gecode-2.1.1/gecode/gist/gist.icc +76 -0
  101. data/ext/gecode-2.1.1/gecode/gist/mainwindow.cc +254 -0
  102. data/ext/gecode-2.1.1/gecode/gist/mainwindow.hh +86 -0
  103. data/ext/gecode-2.1.1/gecode/gist/node.cc +100 -0
  104. data/ext/gecode-2.1.1/gecode/gist/node.hh +89 -0
  105. data/ext/gecode-2.1.1/gecode/gist/nodecursor.cc +124 -0
  106. data/ext/gecode-2.1.1/gecode/gist/nodecursor.hh +122 -0
  107. data/ext/gecode-2.1.1/gecode/gist/nodecursor.icc +79 -0
  108. data/ext/gecode-2.1.1/gecode/gist/nodevisitor.hh +91 -0
  109. data/ext/gecode-2.1.1/gecode/gist/nodevisitor.icc +112 -0
  110. data/ext/gecode-2.1.1/gecode/gist/postscript.cc +543 -0
  111. data/ext/gecode-2.1.1/gecode/gist/postscript.hh +56 -0
  112. data/ext/gecode-2.1.1/gecode/gist/preferences.cc +110 -0
  113. data/ext/gecode-2.1.1/gecode/gist/preferences.hh +76 -0
  114. data/ext/gecode-2.1.1/gecode/gist/reflectionhelpers.cc +55 -0
  115. data/ext/gecode-2.1.1/gecode/gist/reflectionhelpers.hh +58 -0
  116. data/ext/gecode-2.1.1/gecode/gist/shapelist.cc +331 -0
  117. data/ext/gecode-2.1.1/gecode/gist/shapelist.hh +140 -0
  118. data/ext/gecode-2.1.1/gecode/gist/spacenode.cc +531 -0
  119. data/ext/gecode-2.1.1/gecode/gist/spacenode.hh +224 -0
  120. data/ext/gecode-2.1.1/gecode/gist/test.cc +78 -0
  121. data/ext/gecode-2.1.1/gecode/gist/textoutput.cc +114 -0
  122. data/ext/gecode-2.1.1/gecode/gist/textoutput.hh +67 -0
  123. data/ext/gecode-2.1.1/gecode/gist/treecanvas.cc +1140 -0
  124. data/ext/gecode-2.1.1/gecode/gist/treecanvas.hh +324 -0
  125. data/ext/gecode-2.1.1/gecode/gist/ui_addchild.hh +163 -0
  126. data/ext/gecode-2.1.1/gecode/gist/ui_addvisualisationdialog.hh +163 -0
  127. data/ext/gecode-2.1.1/gecode/gist/visualisation/intvaritem.cc +175 -0
  128. data/ext/gecode-2.1.1/gecode/gist/visualisation/intvaritem.hh +71 -0
  129. data/ext/gecode-2.1.1/gecode/gist/visualisation/setvaritem.cc +219 -0
  130. data/ext/gecode-2.1.1/gecode/gist/visualisation/setvaritem.hh +73 -0
  131. data/ext/gecode-2.1.1/gecode/gist/visualisation/vararrayitem.hh +123 -0
  132. data/ext/gecode-2.1.1/gecode/gist/visualisation/vararrayview.cc +146 -0
  133. data/ext/gecode-2.1.1/gecode/gist/visualisation/vararrayview.hh +96 -0
  134. data/ext/gecode-2.1.1/gecode/gist/visualisation/vararrayviewt.hh +105 -0
  135. data/ext/gecode-2.1.1/gecode/gist/visualisation/varitem.cc +68 -0
  136. data/ext/gecode-2.1.1/gecode/gist/visualisation/varitem.hh +67 -0
  137. data/ext/gecode-2.1.1/gecode/gist/visualnode.cc +303 -0
  138. data/ext/gecode-2.1.1/gecode/gist/visualnode.hh +166 -0
  139. data/ext/gecode-2.1.1/gecode/int.hh +2035 -0
  140. data/ext/gecode-2.1.1/gecode/int/arithmetic.cc +136 -0
  141. data/ext/gecode-2.1.1/gecode/int/arithmetic.hh +440 -0
  142. data/ext/gecode-2.1.1/gecode/int/arithmetic/abs.icc +279 -0
  143. data/ext/gecode-2.1.1/gecode/int/arithmetic/max.icc +253 -0
  144. data/ext/gecode-2.1.1/gecode/int/arithmetic/mult.icc +522 -0
  145. data/ext/gecode-2.1.1/gecode/int/arithmetic/sqr.icc +218 -0
  146. data/ext/gecode-2.1.1/gecode/int/arithmetic/sqrt.icc +138 -0
  147. data/ext/gecode-2.1.1/gecode/int/array.cc +74 -0
  148. data/ext/gecode-2.1.1/gecode/int/array.icc +115 -0
  149. data/ext/gecode-2.1.1/gecode/int/bool.cc +642 -0
  150. data/ext/gecode-2.1.1/gecode/int/bool.hh +487 -0
  151. data/ext/gecode-2.1.1/gecode/int/bool/base.icc +156 -0
  152. data/ext/gecode-2.1.1/gecode/int/bool/eq.icc +239 -0
  153. data/ext/gecode-2.1.1/gecode/int/bool/eqv.icc +179 -0
  154. data/ext/gecode-2.1.1/gecode/int/bool/lq.icc +147 -0
  155. data/ext/gecode-2.1.1/gecode/int/bool/or.icc +1000 -0
  156. data/ext/gecode-2.1.1/gecode/int/branch.cc +301 -0
  157. data/ext/gecode-2.1.1/gecode/int/branch.hh +576 -0
  158. data/ext/gecode-2.1.1/gecode/int/branch/select-val.icc +338 -0
  159. data/ext/gecode-2.1.1/gecode/int/branch/select-view.icc +421 -0
  160. data/ext/gecode-2.1.1/gecode/int/channel.cc +114 -0
  161. data/ext/gecode-2.1.1/gecode/int/channel.hh +259 -0
  162. data/ext/gecode-2.1.1/gecode/int/channel/base.icc +86 -0
  163. data/ext/gecode-2.1.1/gecode/int/channel/dom.icc +347 -0
  164. data/ext/gecode-2.1.1/gecode/int/channel/link-multi.cc +231 -0
  165. data/ext/gecode-2.1.1/gecode/int/channel/link-multi.icc +70 -0
  166. data/ext/gecode-2.1.1/gecode/int/channel/link-single.cc +97 -0
  167. data/ext/gecode-2.1.1/gecode/int/channel/link-single.icc +71 -0
  168. data/ext/gecode-2.1.1/gecode/int/channel/val.icc +276 -0
  169. data/ext/gecode-2.1.1/gecode/int/circuit.cc +63 -0
  170. data/ext/gecode-2.1.1/gecode/int/circuit.hh +175 -0
  171. data/ext/gecode-2.1.1/gecode/int/circuit/base.icc +271 -0
  172. data/ext/gecode-2.1.1/gecode/int/circuit/dom.icc +146 -0
  173. data/ext/gecode-2.1.1/gecode/int/circuit/val.icc +122 -0
  174. data/ext/gecode-2.1.1/gecode/int/count.cc +310 -0
  175. data/ext/gecode-2.1.1/gecode/int/count.hh +487 -0
  176. data/ext/gecode-2.1.1/gecode/int/count/int.icc +619 -0
  177. data/ext/gecode-2.1.1/gecode/int/count/rel.icc +144 -0
  178. data/ext/gecode-2.1.1/gecode/int/count/view.icc +449 -0
  179. data/ext/gecode-2.1.1/gecode/int/cumulatives.cc +226 -0
  180. data/ext/gecode-2.1.1/gecode/int/cumulatives.hh +141 -0
  181. data/ext/gecode-2.1.1/gecode/int/cumulatives/val.icc +429 -0
  182. data/ext/gecode-2.1.1/gecode/int/distinct.cc +108 -0
  183. data/ext/gecode-2.1.1/gecode/int/distinct.hh +341 -0
  184. data/ext/gecode-2.1.1/gecode/int/distinct/bilink.icc +89 -0
  185. data/ext/gecode-2.1.1/gecode/int/distinct/bnd.icc +378 -0
  186. data/ext/gecode-2.1.1/gecode/int/distinct/combptr.icc +78 -0
  187. data/ext/gecode-2.1.1/gecode/int/distinct/dom.icc +750 -0
  188. data/ext/gecode-2.1.1/gecode/int/distinct/edge.icc +118 -0
  189. data/ext/gecode-2.1.1/gecode/int/distinct/node.icc +147 -0
  190. data/ext/gecode-2.1.1/gecode/int/distinct/ter-dom.icc +136 -0
  191. data/ext/gecode-2.1.1/gecode/int/distinct/val.icc +209 -0
  192. data/ext/gecode-2.1.1/gecode/int/dom.cc +116 -0
  193. data/ext/gecode-2.1.1/gecode/int/dom.hh +134 -0
  194. data/ext/gecode-2.1.1/gecode/int/dom/range.icc +129 -0
  195. data/ext/gecode-2.1.1/gecode/int/dom/spec.icc +151 -0
  196. data/ext/gecode-2.1.1/gecode/int/element.cc +156 -0
  197. data/ext/gecode-2.1.1/gecode/int/element.hh +239 -0
  198. data/ext/gecode-2.1.1/gecode/int/element/int.icc +441 -0
  199. data/ext/gecode-2.1.1/gecode/int/element/view.icc +584 -0
  200. data/ext/gecode-2.1.1/gecode/int/exception.icc +163 -0
  201. data/ext/gecode-2.1.1/gecode/int/extensional.cc +138 -0
  202. data/ext/gecode-2.1.1/gecode/int/extensional.hh +415 -0
  203. data/ext/gecode-2.1.1/gecode/int/extensional/base.icc +160 -0
  204. data/ext/gecode-2.1.1/gecode/int/extensional/basic.icc +166 -0
  205. data/ext/gecode-2.1.1/gecode/int/extensional/bitset.icc +113 -0
  206. data/ext/gecode-2.1.1/gecode/int/extensional/dfa.cc +565 -0
  207. data/ext/gecode-2.1.1/gecode/int/extensional/dfa.icc +241 -0
  208. data/ext/gecode-2.1.1/gecode/int/extensional/incremental.icc +393 -0
  209. data/ext/gecode-2.1.1/gecode/int/extensional/layered-graph.icc +604 -0
  210. data/ext/gecode-2.1.1/gecode/int/extensional/tuple-set.cc +311 -0
  211. data/ext/gecode-2.1.1/gecode/int/extensional/tuple-set.icc +207 -0
  212. data/ext/gecode-2.1.1/gecode/int/gcc.cc +374 -0
  213. data/ext/gecode-2.1.1/gecode/int/gcc.hh +329 -0
  214. data/ext/gecode-2.1.1/gecode/int/gcc/bnd.icc +660 -0
  215. data/ext/gecode-2.1.1/gecode/int/gcc/dom.icc +531 -0
  216. data/ext/gecode-2.1.1/gecode/int/gcc/gccbndsup.icc +780 -0
  217. data/ext/gecode-2.1.1/gecode/int/gcc/graphsup.icc +2422 -0
  218. data/ext/gecode-2.1.1/gecode/int/gcc/lbc.icc +391 -0
  219. data/ext/gecode-2.1.1/gecode/int/gcc/occur.icc +829 -0
  220. data/ext/gecode-2.1.1/gecode/int/gcc/ubc.icc +255 -0
  221. data/ext/gecode-2.1.1/gecode/int/gcc/val.icc +400 -0
  222. data/ext/gecode-2.1.1/gecode/int/int-set.cc +153 -0
  223. data/ext/gecode-2.1.1/gecode/int/int-set.icc +191 -0
  224. data/ext/gecode-2.1.1/gecode/int/limits.icc +54 -0
  225. data/ext/gecode-2.1.1/gecode/int/linear-bool.cc +220 -0
  226. data/ext/gecode-2.1.1/gecode/int/linear-int.cc +240 -0
  227. data/ext/gecode-2.1.1/gecode/int/linear.hh +1849 -0
  228. data/ext/gecode-2.1.1/gecode/int/linear/bool-int.icc +791 -0
  229. data/ext/gecode-2.1.1/gecode/int/linear/bool-post.cc +433 -0
  230. data/ext/gecode-2.1.1/gecode/int/linear/bool-scale.icc +854 -0
  231. data/ext/gecode-2.1.1/gecode/int/linear/bool-view.icc +399 -0
  232. data/ext/gecode-2.1.1/gecode/int/linear/int-bin.icc +605 -0
  233. data/ext/gecode-2.1.1/gecode/int/linear/int-dom.icc +539 -0
  234. data/ext/gecode-2.1.1/gecode/int/linear/int-nary.icc +1004 -0
  235. data/ext/gecode-2.1.1/gecode/int/linear/int-noview.icc +385 -0
  236. data/ext/gecode-2.1.1/gecode/int/linear/int-post.cc +493 -0
  237. data/ext/gecode-2.1.1/gecode/int/linear/int-ter.icc +357 -0
  238. data/ext/gecode-2.1.1/gecode/int/linear/post.icc +146 -0
  239. data/ext/gecode-2.1.1/gecode/int/propagator.icc +240 -0
  240. data/ext/gecode-2.1.1/gecode/int/rel.cc +431 -0
  241. data/ext/gecode-2.1.1/gecode/int/rel.hh +657 -0
  242. data/ext/gecode-2.1.1/gecode/int/rel/eq.icc +848 -0
  243. data/ext/gecode-2.1.1/gecode/int/rel/lex.icc +248 -0
  244. data/ext/gecode-2.1.1/gecode/int/rel/lq-le.icc +352 -0
  245. data/ext/gecode-2.1.1/gecode/int/rel/nq.icc +269 -0
  246. data/ext/gecode-2.1.1/gecode/int/sorted.cc +91 -0
  247. data/ext/gecode-2.1.1/gecode/int/sorted.hh +117 -0
  248. data/ext/gecode-2.1.1/gecode/int/sorted/matching.icc +182 -0
  249. data/ext/gecode-2.1.1/gecode/int/sorted/narrowing.icc +257 -0
  250. data/ext/gecode-2.1.1/gecode/int/sorted/order.icc +208 -0
  251. data/ext/gecode-2.1.1/gecode/int/sorted/propagate.icc +669 -0
  252. data/ext/gecode-2.1.1/gecode/int/sorted/sortsup.icc +596 -0
  253. data/ext/gecode-2.1.1/gecode/int/unshare.cc +148 -0
  254. data/ext/gecode-2.1.1/gecode/int/var-imp.icc +745 -0
  255. data/ext/gecode-2.1.1/gecode/int/var-imp/bool.cc +104 -0
  256. data/ext/gecode-2.1.1/gecode/int/var-imp/bool.icc +423 -0
  257. data/ext/gecode-2.1.1/gecode/int/var-imp/bool.vis +69 -0
  258. data/ext/gecode-2.1.1/gecode/int/var-imp/delta.icc +64 -0
  259. data/ext/gecode-2.1.1/gecode/int/var-imp/int.cc +407 -0
  260. data/ext/gecode-2.1.1/gecode/int/var-imp/int.icc +1004 -0
  261. data/ext/gecode-2.1.1/gecode/int/var-imp/int.vis +195 -0
  262. data/ext/gecode-2.1.1/gecode/int/var/bool.cc +72 -0
  263. data/ext/gecode-2.1.1/gecode/int/var/bool.icc +126 -0
  264. data/ext/gecode-2.1.1/gecode/int/var/int.cc +79 -0
  265. data/ext/gecode-2.1.1/gecode/int/var/int.icc +151 -0
  266. data/ext/gecode-2.1.1/gecode/int/view.icc +1894 -0
  267. data/ext/gecode-2.1.1/gecode/int/view/bool.icc +598 -0
  268. data/ext/gecode-2.1.1/gecode/int/view/constint.icc +392 -0
  269. data/ext/gecode-2.1.1/gecode/int/view/int.icc +301 -0
  270. data/ext/gecode-2.1.1/gecode/int/view/iter.icc +65 -0
  271. data/ext/gecode-2.1.1/gecode/int/view/minus.icc +372 -0
  272. data/ext/gecode-2.1.1/gecode/int/view/offset.icc +362 -0
  273. data/ext/gecode-2.1.1/gecode/int/view/print.cc +133 -0
  274. data/ext/gecode-2.1.1/gecode/int/view/rtest.icc +231 -0
  275. data/ext/gecode-2.1.1/gecode/int/view/scale.icc +456 -0
  276. data/ext/gecode-2.1.1/gecode/int/view/zero.icc +384 -0
  277. data/ext/gecode-2.1.1/gecode/iter.hh +90 -0
  278. data/ext/gecode-2.1.1/gecode/iter/ranges-add.icc +144 -0
  279. data/ext/gecode-2.1.1/gecode/iter/ranges-append.icc +222 -0
  280. data/ext/gecode-2.1.1/gecode/iter/ranges-array.icc +138 -0
  281. data/ext/gecode-2.1.1/gecode/iter/ranges-cache.icc +337 -0
  282. data/ext/gecode-2.1.1/gecode/iter/ranges-compl.icc +220 -0
  283. data/ext/gecode-2.1.1/gecode/iter/ranges-diff.icc +142 -0
  284. data/ext/gecode-2.1.1/gecode/iter/ranges-empty.icc +111 -0
  285. data/ext/gecode-2.1.1/gecode/iter/ranges-inter.icc +216 -0
  286. data/ext/gecode-2.1.1/gecode/iter/ranges-minmax.icc +118 -0
  287. data/ext/gecode-2.1.1/gecode/iter/ranges-minus.icc +150 -0
  288. data/ext/gecode-2.1.1/gecode/iter/ranges-offset.icc +127 -0
  289. data/ext/gecode-2.1.1/gecode/iter/ranges-operations.icc +157 -0
  290. data/ext/gecode-2.1.1/gecode/iter/ranges-scale.icc +238 -0
  291. data/ext/gecode-2.1.1/gecode/iter/ranges-singleton-append.icc +111 -0
  292. data/ext/gecode-2.1.1/gecode/iter/ranges-singleton.icc +86 -0
  293. data/ext/gecode-2.1.1/gecode/iter/ranges-size.icc +146 -0
  294. data/ext/gecode-2.1.1/gecode/iter/ranges-union.icc +224 -0
  295. data/ext/gecode-2.1.1/gecode/iter/ranges-values.icc +140 -0
  296. data/ext/gecode-2.1.1/gecode/iter/values-array.icc +119 -0
  297. data/ext/gecode-2.1.1/gecode/iter/values-minus.icc +130 -0
  298. data/ext/gecode-2.1.1/gecode/iter/values-offset.icc +113 -0
  299. data/ext/gecode-2.1.1/gecode/iter/values-ranges.icc +106 -0
  300. data/ext/gecode-2.1.1/gecode/iter/values-singleton.icc +109 -0
  301. data/ext/gecode-2.1.1/gecode/iter/values-unique.icc +118 -0
  302. data/ext/gecode-2.1.1/gecode/iter/virtual-ranges-compl.icc +261 -0
  303. data/ext/gecode-2.1.1/gecode/iter/virtual-ranges-inter.icc +241 -0
  304. data/ext/gecode-2.1.1/gecode/iter/virtual-ranges-union.icc +249 -0
  305. data/ext/gecode-2.1.1/gecode/iter/virtual-ranges.icc +140 -0
  306. data/ext/gecode-2.1.1/gecode/kernel.hh +182 -0
  307. data/ext/gecode-2.1.1/gecode/kernel/advisor.icc +104 -0
  308. data/ext/gecode-2.1.1/gecode/kernel/array.icc +1232 -0
  309. data/ext/gecode-2.1.1/gecode/kernel/branching.icc +447 -0
  310. data/ext/gecode-2.1.1/gecode/kernel/core.cc +473 -0
  311. data/ext/gecode-2.1.1/gecode/kernel/core.icc +2295 -0
  312. data/ext/gecode-2.1.1/gecode/kernel/exception.icc +101 -0
  313. data/ext/gecode-2.1.1/gecode/kernel/macros.icc +117 -0
  314. data/ext/gecode-2.1.1/gecode/kernel/memory-manager.cc +57 -0
  315. data/ext/gecode-2.1.1/gecode/kernel/memory-manager.icc +458 -0
  316. data/ext/gecode-2.1.1/gecode/kernel/modevent.icc +69 -0
  317. data/ext/gecode-2.1.1/gecode/kernel/propagator.icc +845 -0
  318. data/ext/gecode-2.1.1/gecode/kernel/reflection.cc +921 -0
  319. data/ext/gecode-2.1.1/gecode/kernel/reflection.icc +1012 -0
  320. data/ext/gecode-2.1.1/gecode/kernel/shared-array.icc +286 -0
  321. data/ext/gecode-2.1.1/gecode/kernel/var-imp.icc +433 -0
  322. data/ext/gecode-2.1.1/gecode/kernel/var-map.cc +269 -0
  323. data/ext/gecode-2.1.1/gecode/kernel/var-map.icc +227 -0
  324. data/ext/gecode-2.1.1/gecode/kernel/var-traits.icc +72 -0
  325. data/ext/gecode-2.1.1/gecode/kernel/var-type.cc +68 -0
  326. data/ext/gecode-2.1.1/gecode/kernel/var-type.icc +915 -0
  327. data/ext/gecode-2.1.1/gecode/kernel/var.icc +120 -0
  328. data/ext/gecode-2.1.1/gecode/kernel/view.icc +611 -0
  329. data/ext/gecode-2.1.1/gecode/minimodel.hh +1165 -0
  330. data/ext/gecode-2.1.1/gecode/minimodel/arithmetic.cc +179 -0
  331. data/ext/gecode-2.1.1/gecode/minimodel/bool-expr.cc +327 -0
  332. data/ext/gecode-2.1.1/gecode/minimodel/bool-expr.icc +131 -0
  333. data/ext/gecode-2.1.1/gecode/minimodel/bool-rel.icc +83 -0
  334. data/ext/gecode-2.1.1/gecode/minimodel/exception.icc +84 -0
  335. data/ext/gecode-2.1.1/gecode/minimodel/lin-expr.icc +374 -0
  336. data/ext/gecode-2.1.1/gecode/minimodel/lin-rel.icc +324 -0
  337. data/ext/gecode-2.1.1/gecode/minimodel/matrix.icc +144 -0
  338. data/ext/gecode-2.1.1/gecode/minimodel/reg.cc +823 -0
  339. data/ext/gecode-2.1.1/gecode/search.hh +752 -0
  340. data/ext/gecode-2.1.1/gecode/search/bab.cc +169 -0
  341. data/ext/gecode-2.1.1/gecode/search/bab.icc +117 -0
  342. data/ext/gecode-2.1.1/gecode/search/dfs.cc +79 -0
  343. data/ext/gecode-2.1.1/gecode/search/dfs.icc +169 -0
  344. data/ext/gecode-2.1.1/gecode/search/engine-ctrl.icc +131 -0
  345. data/ext/gecode-2.1.1/gecode/search/lds.cc +265 -0
  346. data/ext/gecode-2.1.1/gecode/search/lds.icc +73 -0
  347. data/ext/gecode-2.1.1/gecode/search/options.cc +46 -0
  348. data/ext/gecode-2.1.1/gecode/search/options.icc +46 -0
  349. data/ext/gecode-2.1.1/gecode/search/reco-stack.icc +237 -0
  350. data/ext/gecode-2.1.1/gecode/search/restart.icc +99 -0
  351. data/ext/gecode-2.1.1/gecode/search/statistics.icc +46 -0
  352. data/ext/gecode-2.1.1/gecode/search/stop.cc +74 -0
  353. data/ext/gecode-2.1.1/gecode/search/stop.icc +116 -0
  354. data/ext/gecode-2.1.1/gecode/serialization.hh +149 -0
  355. data/ext/gecode-2.1.1/gecode/serialization/boost.cc +78 -0
  356. data/ext/gecode-2.1.1/gecode/serialization/boost.icc +381 -0
  357. data/ext/gecode-2.1.1/gecode/serialization/flatzinc.cc +372 -0
  358. data/ext/gecode-2.1.1/gecode/serialization/javascript.cc +340 -0
  359. data/ext/gecode-2.1.1/gecode/serialization/javascript.hh +69 -0
  360. data/ext/gecode-2.1.1/gecode/serialization/register.cc +8142 -0
  361. data/ext/gecode-2.1.1/gecode/set.hh +970 -0
  362. data/ext/gecode-2.1.1/gecode/set/array.cc +114 -0
  363. data/ext/gecode-2.1.1/gecode/set/array.icc +77 -0
  364. data/ext/gecode-2.1.1/gecode/set/branch.cc +78 -0
  365. data/ext/gecode-2.1.1/gecode/set/branch.hh +213 -0
  366. data/ext/gecode-2.1.1/gecode/set/branch/select-val.icc +132 -0
  367. data/ext/gecode-2.1.1/gecode/set/branch/select-view.icc +148 -0
  368. data/ext/gecode-2.1.1/gecode/set/cardinality.cc +65 -0
  369. data/ext/gecode-2.1.1/gecode/set/convex.cc +59 -0
  370. data/ext/gecode-2.1.1/gecode/set/convex.hh +126 -0
  371. data/ext/gecode-2.1.1/gecode/set/convex/conv.cc +118 -0
  372. data/ext/gecode-2.1.1/gecode/set/convex/conv.icc +67 -0
  373. data/ext/gecode-2.1.1/gecode/set/convex/hull.cc +140 -0
  374. data/ext/gecode-2.1.1/gecode/set/convex/hull.icc +68 -0
  375. data/ext/gecode-2.1.1/gecode/set/distinct.cc +56 -0
  376. data/ext/gecode-2.1.1/gecode/set/distinct.hh +90 -0
  377. data/ext/gecode-2.1.1/gecode/set/distinct/atmostOne.cc +192 -0
  378. data/ext/gecode-2.1.1/gecode/set/distinct/atmostOne.icc +66 -0
  379. data/ext/gecode-2.1.1/gecode/set/dom.cc +232 -0
  380. data/ext/gecode-2.1.1/gecode/set/exception.icc +135 -0
  381. data/ext/gecode-2.1.1/gecode/set/int.cc +177 -0
  382. data/ext/gecode-2.1.1/gecode/set/int.hh +391 -0
  383. data/ext/gecode-2.1.1/gecode/set/int/card.icc +116 -0
  384. data/ext/gecode-2.1.1/gecode/set/int/channel-bool.icc +303 -0
  385. data/ext/gecode-2.1.1/gecode/set/int/channel-int.icc +174 -0
  386. data/ext/gecode-2.1.1/gecode/set/int/match.icc +224 -0
  387. data/ext/gecode-2.1.1/gecode/set/int/minmax.icc +228 -0
  388. data/ext/gecode-2.1.1/gecode/set/int/weights.icc +370 -0
  389. data/ext/gecode-2.1.1/gecode/set/limits.icc +62 -0
  390. data/ext/gecode-2.1.1/gecode/set/projectors-compiler.hh +164 -0
  391. data/ext/gecode-2.1.1/gecode/set/projectors.cc +143 -0
  392. data/ext/gecode-2.1.1/gecode/set/projectors.hh +438 -0
  393. data/ext/gecode-2.1.1/gecode/set/projectors/compiler.cc +859 -0
  394. data/ext/gecode-2.1.1/gecode/set/projectors/formula.cc +312 -0
  395. data/ext/gecode-2.1.1/gecode/set/projectors/formula.icc +66 -0
  396. data/ext/gecode-2.1.1/gecode/set/projectors/projector-set.cc +91 -0
  397. data/ext/gecode-2.1.1/gecode/set/projectors/projector-set.icc +85 -0
  398. data/ext/gecode-2.1.1/gecode/set/projectors/projector.cc +147 -0
  399. data/ext/gecode-2.1.1/gecode/set/projectors/projector.icc +98 -0
  400. data/ext/gecode-2.1.1/gecode/set/projectors/propagator.hh +168 -0
  401. data/ext/gecode-2.1.1/gecode/set/projectors/propagator/card.icc +128 -0
  402. data/ext/gecode-2.1.1/gecode/set/projectors/propagator/nary.icc +144 -0
  403. data/ext/gecode-2.1.1/gecode/set/projectors/propagator/re-nary.cc +100 -0
  404. data/ext/gecode-2.1.1/gecode/set/projectors/propagator/re-nary.icc +71 -0
  405. data/ext/gecode-2.1.1/gecode/set/projectors/set-expr.cc +339 -0
  406. data/ext/gecode-2.1.1/gecode/set/projectors/set-expr.icc +237 -0
  407. data/ext/gecode-2.1.1/gecode/set/propagator.icc +125 -0
  408. data/ext/gecode-2.1.1/gecode/set/rel-op-const.cc +332 -0
  409. data/ext/gecode-2.1.1/gecode/set/rel-op.cc +197 -0
  410. data/ext/gecode-2.1.1/gecode/set/rel-op.hh +353 -0
  411. data/ext/gecode-2.1.1/gecode/set/rel-op/common.icc +557 -0
  412. data/ext/gecode-2.1.1/gecode/set/rel-op/inter.icc +409 -0
  413. data/ext/gecode-2.1.1/gecode/set/rel-op/partition.icc +202 -0
  414. data/ext/gecode-2.1.1/gecode/set/rel-op/post.icc +223 -0
  415. data/ext/gecode-2.1.1/gecode/set/rel-op/subofunion.icc +192 -0
  416. data/ext/gecode-2.1.1/gecode/set/rel-op/superofinter.icc +193 -0
  417. data/ext/gecode-2.1.1/gecode/set/rel-op/union.icc +383 -0
  418. data/ext/gecode-2.1.1/gecode/set/rel.cc +258 -0
  419. data/ext/gecode-2.1.1/gecode/set/rel.hh +321 -0
  420. data/ext/gecode-2.1.1/gecode/set/rel/common.icc +125 -0
  421. data/ext/gecode-2.1.1/gecode/set/rel/eq.icc +139 -0
  422. data/ext/gecode-2.1.1/gecode/set/rel/nosubset.icc +128 -0
  423. data/ext/gecode-2.1.1/gecode/set/rel/nq.icc +208 -0
  424. data/ext/gecode-2.1.1/gecode/set/rel/re-eq.icc +179 -0
  425. data/ext/gecode-2.1.1/gecode/set/rel/re-subset.icc +172 -0
  426. data/ext/gecode-2.1.1/gecode/set/rel/subset.icc +119 -0
  427. data/ext/gecode-2.1.1/gecode/set/select.cc +135 -0
  428. data/ext/gecode-2.1.1/gecode/set/select.hh +233 -0
  429. data/ext/gecode-2.1.1/gecode/set/select/disjoint.cc +308 -0
  430. data/ext/gecode-2.1.1/gecode/set/select/disjoint.icc +75 -0
  431. data/ext/gecode-2.1.1/gecode/set/select/idxarray.hh +113 -0
  432. data/ext/gecode-2.1.1/gecode/set/select/idxarray.icc +155 -0
  433. data/ext/gecode-2.1.1/gecode/set/select/inter.icc +349 -0
  434. data/ext/gecode-2.1.1/gecode/set/select/union.icc +371 -0
  435. data/ext/gecode-2.1.1/gecode/set/select/unionConst.icc +334 -0
  436. data/ext/gecode-2.1.1/gecode/set/sequence.cc +69 -0
  437. data/ext/gecode-2.1.1/gecode/set/sequence.hh +134 -0
  438. data/ext/gecode-2.1.1/gecode/set/sequence/common.icc +99 -0
  439. data/ext/gecode-2.1.1/gecode/set/sequence/seq-u.cc +176 -0
  440. data/ext/gecode-2.1.1/gecode/set/sequence/seq-u.icc +79 -0
  441. data/ext/gecode-2.1.1/gecode/set/sequence/seq.cc +94 -0
  442. data/ext/gecode-2.1.1/gecode/set/sequence/seq.icc +69 -0
  443. data/ext/gecode-2.1.1/gecode/set/var-imp.icc +737 -0
  444. data/ext/gecode-2.1.1/gecode/set/var-imp/delta.icc +78 -0
  445. data/ext/gecode-2.1.1/gecode/set/var-imp/integerset.cc +349 -0
  446. data/ext/gecode-2.1.1/gecode/set/var-imp/integerset.icc +484 -0
  447. data/ext/gecode-2.1.1/gecode/set/var-imp/iter.icc +63 -0
  448. data/ext/gecode-2.1.1/gecode/set/var-imp/set.cc +214 -0
  449. data/ext/gecode-2.1.1/gecode/set/var-imp/set.icc +532 -0
  450. data/ext/gecode-2.1.1/gecode/set/var-imp/set.vis +190 -0
  451. data/ext/gecode-2.1.1/gecode/set/var/set.cc +105 -0
  452. data/ext/gecode-2.1.1/gecode/set/var/set.icc +303 -0
  453. data/ext/gecode-2.1.1/gecode/set/view.icc +1503 -0
  454. data/ext/gecode-2.1.1/gecode/set/view/complement.icc +629 -0
  455. data/ext/gecode-2.1.1/gecode/set/view/const.icc +907 -0
  456. data/ext/gecode-2.1.1/gecode/set/view/offset.icc +497 -0
  457. data/ext/gecode-2.1.1/gecode/set/view/print.cc +141 -0
  458. data/ext/gecode-2.1.1/gecode/set/view/set.icc +275 -0
  459. data/ext/gecode-2.1.1/gecode/set/view/singleton.icc +438 -0
  460. data/ext/gecode-2.1.1/gecode/support.hh +110 -0
  461. data/ext/gecode-2.1.1/gecode/support/block-allocator.icc +158 -0
  462. data/ext/gecode-2.1.1/gecode/support/buddy/AUTHORS +11 -0
  463. data/ext/gecode-2.1.1/gecode/support/buddy/ChangeLog +218 -0
  464. data/ext/gecode-2.1.1/gecode/support/buddy/NEWS +200 -0
  465. data/ext/gecode-2.1.1/gecode/support/buddy/README +128 -0
  466. data/ext/gecode-2.1.1/gecode/support/buddy/bdd.h +939 -0
  467. data/ext/gecode-2.1.1/gecode/support/buddy/bddio.c +596 -0
  468. data/ext/gecode-2.1.1/gecode/support/buddy/bddop.c +2848 -0
  469. data/ext/gecode-2.1.1/gecode/support/buddy/bddtree.h +62 -0
  470. data/ext/gecode-2.1.1/gecode/support/buddy/bvec.c +1354 -0
  471. data/ext/gecode-2.1.1/gecode/support/buddy/bvec.h +298 -0
  472. data/ext/gecode-2.1.1/gecode/support/buddy/cache.c +104 -0
  473. data/ext/gecode-2.1.1/gecode/support/buddy/cache.h +72 -0
  474. data/ext/gecode-2.1.1/gecode/support/buddy/config.h +20 -0
  475. data/ext/gecode-2.1.1/gecode/support/buddy/cppext.cc +626 -0
  476. data/ext/gecode-2.1.1/gecode/support/buddy/fdd.c +1079 -0
  477. data/ext/gecode-2.1.1/gecode/support/buddy/fdd.h +175 -0
  478. data/ext/gecode-2.1.1/gecode/support/buddy/imatrix.c +151 -0
  479. data/ext/gecode-2.1.1/gecode/support/buddy/imatrix.h +61 -0
  480. data/ext/gecode-2.1.1/gecode/support/buddy/kernel.c +1555 -0
  481. data/ext/gecode-2.1.1/gecode/support/buddy/kernel.h +244 -0
  482. data/ext/gecode-2.1.1/gecode/support/buddy/pairs.c +336 -0
  483. data/ext/gecode-2.1.1/gecode/support/buddy/prime.c +322 -0
  484. data/ext/gecode-2.1.1/gecode/support/buddy/prime.h +50 -0
  485. data/ext/gecode-2.1.1/gecode/support/buddy/reorder.c +2345 -0
  486. data/ext/gecode-2.1.1/gecode/support/buddy/tree.c +224 -0
  487. data/ext/gecode-2.1.1/gecode/support/cast.icc +52 -0
  488. data/ext/gecode-2.1.1/gecode/support/config.icc.in +80 -0
  489. data/ext/gecode-2.1.1/gecode/support/dynamic-array.icc +138 -0
  490. data/ext/gecode-2.1.1/gecode/support/dynamic-stack.icc +167 -0
  491. data/ext/gecode-2.1.1/gecode/support/exception.cc +65 -0
  492. data/ext/gecode-2.1.1/gecode/support/exception.icc +82 -0
  493. data/ext/gecode-2.1.1/gecode/support/macros.icc +103 -0
  494. data/ext/gecode-2.1.1/gecode/support/map.icc +207 -0
  495. data/ext/gecode-2.1.1/gecode/support/marked-pointer.icc +66 -0
  496. data/ext/gecode-2.1.1/gecode/support/memory.icc +220 -0
  497. data/ext/gecode-2.1.1/gecode/support/random.icc +121 -0
  498. data/ext/gecode-2.1.1/gecode/support/sentinel-stack.icc +122 -0
  499. data/ext/gecode-2.1.1/gecode/support/sort.icc +210 -0
  500. data/ext/gecode-2.1.1/gecode/support/static-pqueue.icc +242 -0
  501. data/ext/gecode-2.1.1/gecode/support/static-stack.icc +125 -0
  502. data/ext/gecode-2.1.1/gecode/support/symbol.cc +226 -0
  503. data/ext/gecode-2.1.1/gecode/support/symbol.icc +130 -0
  504. data/ext/{gecode-1.3.1 → gecode-2.1.1}/install-sh +0 -0
  505. data/ext/gecode-2.1.1/misc/AppleHelpbookInfo.plist +26 -0
  506. data/ext/gecode-2.1.1/misc/allexamples.perl +60 -0
  507. data/ext/gecode-2.1.1/misc/debian/Makefile.am +44 -0
  508. data/ext/{gecode-1.3.1 → gecode-2.1.1}/misc/debian/changelog +0 -0
  509. data/ext/{gecode-1.3.1 → gecode-2.1.1}/misc/debian/control +0 -0
  510. data/ext/gecode-2.1.1/misc/debian/copyright +30 -0
  511. data/ext/{gecode-1.3.1 → gecode-2.1.1}/misc/debian/gecode.info +0 -0
  512. data/ext/{gecode-1.3.1 → gecode-2.1.1}/misc/debian/gecode.install +0 -0
  513. data/ext/{gecode-1.3.1 → gecode-2.1.1}/misc/debian/gecode.spec +0 -0
  514. data/ext/{gecode-1.3.1 → gecode-2.1.1}/misc/debian/rules +0 -0
  515. data/ext/{gecode-1.3.1 → gecode-2.1.1}/misc/doxygen/back.png +0 -0
  516. data/ext/{gecode-1.3.1 → gecode-2.1.1}/misc/doxygen/footer.html +0 -0
  517. data/ext/{gecode-1.3.1 → gecode-2.1.1}/misc/doxygen/gecode-logo-100.png +0 -0
  518. data/ext/{gecode-1.3.1 → gecode-2.1.1}/misc/doxygen/header.html +0 -0
  519. data/ext/gecode-2.1.1/misc/doxygen/stylesheet.css +464 -0
  520. data/ext/gecode-2.1.1/misc/fixproperties.sh +77 -0
  521. data/ext/gecode-2.1.1/misc/gecode-gist.pc.in +45 -0
  522. data/ext/gecode-2.1.1/misc/gecode-minimodel.pc.in +45 -0
  523. data/ext/gecode-2.1.1/misc/gecode-search.pc.in +45 -0
  524. data/ext/gecode-2.1.1/misc/gecode-serialization.pc.in +45 -0
  525. data/ext/gecode-2.1.1/misc/gecode.pc.in +45 -0
  526. data/ext/gecode-2.1.1/misc/genchangelog.perl +208 -0
  527. data/ext/gecode-2.1.1/misc/genlcovmakefile.perl +148 -0
  528. data/ext/gecode-2.1.1/misc/genlicense.perl +121 -0
  529. data/ext/gecode-2.1.1/misc/genregistry.perl +468 -0
  530. data/ext/gecode-2.1.1/misc/genstatistics.perl +178 -0
  531. data/ext/gecode-2.1.1/misc/gentxtchangelog.perl +192 -0
  532. data/ext/gecode-2.1.1/misc/genvariables.perl +905 -0
  533. data/ext/gecode-2.1.1/misc/getrevision.perl +47 -0
  534. data/ext/gecode-2.1.1/misc/makedepend.perl +85 -0
  535. data/ext/gecode-2.1.1/misc/svn-ignore.txt +15 -0
  536. data/ext/gecode-2.1.1/variables.vsl +50 -0
  537. data/ext/missing.cpp +1 -1
  538. data/ext/missing.h +1 -1
  539. data/ext/vararray.h +4 -4
  540. data/lib/gecoder/bindings.rb +21 -1
  541. data/lib/gecoder/bindings/bindings.rb +408 -731
  542. data/lib/gecoder/interface/binding_changes.rb +1 -1
  543. data/lib/gecoder/interface/branch.rb +25 -25
  544. data/lib/gecoder/interface/constraints.rb +47 -4
  545. data/lib/gecoder/interface/constraints/bool/boolean.rb +18 -16
  546. data/lib/gecoder/interface/constraints/bool_enum/boolean.rb +13 -11
  547. data/lib/gecoder/interface/constraints/int/arithmetic.rb +5 -4
  548. data/lib/gecoder/interface/constraints/int/domain.rb +8 -9
  549. data/lib/gecoder/interface/constraints/int/linear.rb +10 -8
  550. data/lib/gecoder/interface/constraints/int_enum/arithmetic.rb +4 -4
  551. data/lib/gecoder/interface/constraints/int_enum/channel.rb +2 -2
  552. data/lib/gecoder/interface/constraints/int_enum/count.rb +4 -5
  553. data/lib/gecoder/interface/constraints/int_enum/distinct.rb +7 -2
  554. data/lib/gecoder/interface/constraints/int_enum/element.rb +2 -2
  555. data/lib/gecoder/interface/constraints/int_enum/equality.rb +6 -3
  556. data/lib/gecoder/interface/constraints/int_enum/sort.rb +17 -5
  557. data/lib/gecoder/interface/constraints/set_enum/distinct.rb +0 -36
  558. data/lib/gecoder/interface/constraints/set_var_constraints.rb +5 -0
  559. data/lib/gecoder/interface/model.rb +3 -3
  560. data/lib/gecoder/interface/search.rb +5 -4
  561. data/lib/gecoder/version.rb +1 -1
  562. data/specs/branch.rb +27 -27
  563. data/specs/constraints/arithmetic.rb +48 -30
  564. data/specs/constraints/bool_enum.rb +39 -19
  565. data/specs/constraints/boolean.rb +10 -10
  566. data/specs/constraints/cardinality.rb +12 -9
  567. data/specs/constraints/channel.rb +6 -6
  568. data/specs/constraints/connection.rb +22 -26
  569. data/specs/constraints/constraint_helper.rb +125 -41
  570. data/specs/constraints/count.rb +22 -15
  571. data/specs/constraints/distinct.rb +10 -64
  572. data/specs/constraints/element.rb +14 -12
  573. data/specs/constraints/equality.rb +4 -4
  574. data/specs/constraints/int_domain.rb +8 -7
  575. data/specs/constraints/int_relation.rb +12 -8
  576. data/specs/constraints/linear.rb +4 -4
  577. data/specs/constraints/reification_sugar.rb +22 -4
  578. data/specs/constraints/selection.rb +2 -2
  579. data/specs/constraints/set_domain.rb +7 -3
  580. data/specs/constraints/set_operation.rb +2 -2
  581. data/specs/constraints/set_relation.rb +2 -6
  582. data/specs/constraints/sort.rb +20 -16
  583. data/specs/distribution.rb +14 -0
  584. data/specs/model.rb +4 -4
  585. data/tasks/dependencies.txt +21 -0
  586. data/tasks/distribution.rake +49 -14
  587. data/vendor/rust/include/rust_checks.hh +2 -1
  588. data/vendor/rust/include/rust_conversions.hh +2 -2
  589. data/vendor/rust/rust/attribute.rb +2 -2
  590. data/vendor/rust/rust/class.rb +2 -2
  591. data/vendor/rust/rust/cxxclass.rb +0 -2
  592. data/vendor/rust/rust/function.rb +2 -2
  593. data/vendor/rust/rust/templates/AttributeDefinition.rusttpl +1 -1
  594. data/vendor/rust/rust/templates/StandaloneClassDeclarations.rusttpl +1 -1
  595. data/vendor/rust/rust/templates/VariableFunctionCall.rusttpl +1 -1
  596. data/vendor/rust/rust/type.rb +1 -1
  597. metadata +599 -542
  598. data/ext/gecode-1.3.1/LICENSE +0 -34
  599. data/ext/gecode-1.3.1/Makefile.contribs +0 -71
  600. data/ext/gecode-1.3.1/Makefile.dep +0 -3928
  601. data/ext/gecode-1.3.1/Makefile.in +0 -966
  602. data/ext/gecode-1.3.1/changelog.in +0 -1065
  603. data/ext/gecode-1.3.1/configure +0 -8590
  604. data/ext/gecode-1.3.1/configure.ac +0 -179
  605. data/ext/gecode-1.3.1/configure.ac.in +0 -175
  606. data/ext/gecode-1.3.1/contribs/graph/INSTALL +0 -53
  607. data/ext/gecode-1.3.1/contribs/graph/LICENSE +0 -11
  608. data/ext/gecode-1.3.1/contribs/graph/Makefile +0 -167
  609. data/ext/gecode-1.3.1/contribs/graph/Makefile.in.in +0 -169
  610. data/ext/gecode-1.3.1/contribs/graph/TODO +0 -28
  611. data/ext/gecode-1.3.1/contribs/graph/binarysimple.hh +0 -82
  612. data/ext/gecode-1.3.1/contribs/graph/binarysimple.icc +0 -186
  613. data/ext/gecode-1.3.1/contribs/graph/branch/branch.icc +0 -257
  614. data/ext/gecode-1.3.1/contribs/graph/configure +0 -2160
  615. data/ext/gecode-1.3.1/contribs/graph/configure.ac +0 -33
  616. data/ext/gecode-1.3.1/contribs/graph/doxygen.conf +0 -1226
  617. data/ext/gecode-1.3.1/contribs/graph/doxygen.hh +0 -132
  618. data/ext/gecode-1.3.1/contribs/graph/examples/cpgraph-basic.cc +0 -94
  619. data/ext/gecode-1.3.1/contribs/graph/examples/cpgraph-complement.cc +0 -104
  620. data/ext/gecode-1.3.1/contribs/graph/examples/cpgraph-instUB.cc +0 -105
  621. data/ext/gecode-1.3.1/contribs/graph/examples/cpgraph-path.cc +0 -92
  622. data/ext/gecode-1.3.1/contribs/graph/examples/cpgraph-path2.cc +0 -273
  623. data/ext/gecode-1.3.1/contribs/graph/examples/cpgraph-pathcost.cc +0 -311
  624. data/ext/gecode-1.3.1/contribs/graph/examples/g1.txt +0 -1
  625. data/ext/gecode-1.3.1/contribs/graph/examples/g2.txt +0 -1
  626. data/ext/gecode-1.3.1/contribs/graph/graph.hh +0 -51
  627. data/ext/gecode-1.3.1/contribs/graph/graphutils.h +0 -46
  628. data/ext/gecode-1.3.1/contribs/graph/graphutils.icc +0 -140
  629. data/ext/gecode-1.3.1/contribs/graph/misc/doxygen/footer.html +0 -1
  630. data/ext/gecode-1.3.1/contribs/graph/path.hh +0 -116
  631. data/ext/gecode-1.3.1/contribs/graph/path.icc +0 -64
  632. data/ext/gecode-1.3.1/contribs/graph/path/path.icc +0 -139
  633. data/ext/gecode-1.3.1/contribs/graph/path/pathdegree.icc +0 -133
  634. data/ext/gecode-1.3.1/contribs/graph/path/pathgraphs.icc +0 -341
  635. data/ext/gecode-1.3.1/contribs/graph/shortdesc.ac +0 -1
  636. data/ext/gecode-1.3.1/contribs/graph/stlutility.icc +0 -105
  637. data/ext/gecode-1.3.1/contribs/graph/var.icc +0 -106
  638. data/ext/gecode-1.3.1/contribs/graph/view.icc +0 -373
  639. data/ext/gecode-1.3.1/contribs/graph/view/arcnode.cc +0 -162
  640. data/ext/gecode-1.3.1/contribs/graph/view/arcnode.hh +0 -78
  641. data/ext/gecode-1.3.1/contribs/graph/view/boundsgraphs.icc +0 -349
  642. data/ext/gecode-1.3.1/contribs/graph/view/constant.icc +0 -148
  643. data/ext/gecode-1.3.1/contribs/graph/view/iter.icc +0 -337
  644. data/ext/gecode-1.3.1/contribs/graph/view/nodearcsets.icc +0 -493
  645. data/ext/gecode-1.3.1/contribs/graph/view/nodeset.icc +0 -60
  646. data/ext/gecode-1.3.1/contribs/graph/view/outadjsets.icc +0 -600
  647. data/ext/gecode-1.3.1/contribs/graph/view/prop.icc +0 -135
  648. data/ext/gecode-1.3.1/contribs/map/COMPILING +0 -68
  649. data/ext/gecode-1.3.1/contribs/map/LICENSE +0 -11
  650. data/ext/gecode-1.3.1/contribs/map/Makefile.in.in +0 -173
  651. data/ext/gecode-1.3.1/contribs/map/configure +0 -2285
  652. data/ext/gecode-1.3.1/contribs/map/configure.ac +0 -32
  653. data/ext/gecode-1.3.1/contribs/map/constraints.hh +0 -46
  654. data/ext/gecode-1.3.1/contribs/map/constraints.icc +0 -84
  655. data/ext/gecode-1.3.1/contribs/map/doxygen.conf +0 -1229
  656. data/ext/gecode-1.3.1/contribs/map/doxygen.hh +0 -33
  657. data/ext/gecode-1.3.1/contribs/map/examples/approximateMatching.cc +0 -199
  658. data/ext/gecode-1.3.1/contribs/map/examples/g1.txt +0 -1
  659. data/ext/gecode-1.3.1/contribs/map/examples/g2.txt +0 -1
  660. data/ext/gecode-1.3.1/contribs/map/examples/graph-examples.tgz +0 -0
  661. data/ext/gecode-1.3.1/contribs/map/examples/isomorphism.cc +0 -148
  662. data/ext/gecode-1.3.1/contribs/map/examples/map +0 -0
  663. data/ext/gecode-1.3.1/contribs/map/examples/map.cc +0 -80
  664. data/ext/gecode-1.3.1/contribs/map/examples/subgraphmonomorphism.cc +0 -155
  665. data/ext/gecode-1.3.1/contribs/map/map.hh +0 -65
  666. data/ext/gecode-1.3.1/contribs/map/matching/mono.hh +0 -235
  667. data/ext/gecode-1.3.1/contribs/map/matching/mono.icc +0 -771
  668. data/ext/gecode-1.3.1/contribs/map/shortdesc.ac +0 -2
  669. data/ext/gecode-1.3.1/contribs/map/var.icc +0 -346
  670. data/ext/gecode-1.3.1/contribs/map/var/imp.cc +0 -42
  671. data/ext/gecode-1.3.1/contribs/map/var/imp.icc +0 -436
  672. data/ext/gecode-1.3.1/doxygen.conf.in +0 -1225
  673. data/ext/gecode-1.3.1/doxygen.hh.in +0 -877
  674. data/ext/gecode-1.3.1/examples/all-interval-sort.cc +0 -201
  675. data/ext/gecode-1.3.1/examples/all-interval.cc +0 -114
  676. data/ext/gecode-1.3.1/examples/alpha.cc +0 -112
  677. data/ext/gecode-1.3.1/examples/baseline.cc +0 -71
  678. data/ext/gecode-1.3.1/examples/bibd.cc +0 -173
  679. data/ext/gecode-1.3.1/examples/black-hole.cc +0 -281
  680. data/ext/gecode-1.3.1/examples/cars.cc +0 -165
  681. data/ext/gecode-1.3.1/examples/crew.cc +0 -220
  682. data/ext/gecode-1.3.1/examples/crowded-chess.cc +0 -312
  683. data/ext/gecode-1.3.1/examples/donald.cc +0 -93
  684. data/ext/gecode-1.3.1/examples/eq20.cc +0 -111
  685. data/ext/gecode-1.3.1/examples/golf.cc +0 -242
  686. data/ext/gecode-1.3.1/examples/golomb.cc +0 -141
  687. data/ext/gecode-1.3.1/examples/graph-color.cc +0 -371
  688. data/ext/gecode-1.3.1/examples/grocery.cc +0 -107
  689. data/ext/gecode-1.3.1/examples/hamming.cc +0 -107
  690. data/ext/gecode-1.3.1/examples/ind-set.cc +0 -130
  691. data/ext/gecode-1.3.1/examples/knights.cc +0 -146
  692. data/ext/gecode-1.3.1/examples/langfordnum.cc +0 -244
  693. data/ext/gecode-1.3.1/examples/magic-sequence-gcc.cc +0 -93
  694. data/ext/gecode-1.3.1/examples/magic-sequence.cc +0 -108
  695. data/ext/gecode-1.3.1/examples/magic-square.cc +0 -120
  696. data/ext/gecode-1.3.1/examples/money.cc +0 -92
  697. data/ext/gecode-1.3.1/examples/ortho-latin.cc +0 -156
  698. data/ext/gecode-1.3.1/examples/packing.cc +0 -211
  699. data/ext/gecode-1.3.1/examples/partition.cc +0 -126
  700. data/ext/gecode-1.3.1/examples/photo.cc +0 -155
  701. data/ext/gecode-1.3.1/examples/picture-puzzle.cc +0 -481
  702. data/ext/gecode-1.3.1/examples/queen-armies.cc +0 -240
  703. data/ext/gecode-1.3.1/examples/queens.cc +0 -99
  704. data/ext/gecode-1.3.1/examples/sports-league.cc +0 -454
  705. data/ext/gecode-1.3.1/examples/steiner.cc +0 -148
  706. data/ext/gecode-1.3.1/examples/stress-domain.cc +0 -86
  707. data/ext/gecode-1.3.1/examples/stress-element.cc +0 -95
  708. data/ext/gecode-1.3.1/examples/stress-exec.cc +0 -74
  709. data/ext/gecode-1.3.1/examples/stress-min.cc +0 -84
  710. data/ext/gecode-1.3.1/examples/stress-search.cc +0 -72
  711. data/ext/gecode-1.3.1/examples/sudoku-mixed.cc +0 -282
  712. data/ext/gecode-1.3.1/examples/sudoku-set.cc +0 -162
  713. data/ext/gecode-1.3.1/examples/sudoku.cc +0 -188
  714. data/ext/gecode-1.3.1/examples/sudoku.icc +0 -703
  715. data/ext/gecode-1.3.1/examples/support.cc +0 -160
  716. data/ext/gecode-1.3.1/examples/support.hh +0 -98
  717. data/ext/gecode-1.3.1/examples/support.icc +0 -187
  718. data/ext/gecode-1.3.1/examples/timer.cc +0 -47
  719. data/ext/gecode-1.3.1/examples/timer.hh +0 -72
  720. data/ext/gecode-1.3.1/examples/warehouses.cc +0 -176
  721. data/ext/gecode-1.3.1/extconf.rb +0 -8
  722. data/ext/gecode-1.3.1/gecode.m4 +0 -736
  723. data/ext/gecode-1.3.1/gecode/config.icc.in +0 -50
  724. data/ext/gecode-1.3.1/gecode/int.hh +0 -1426
  725. data/ext/gecode-1.3.1/gecode/int/arithmetic.cc +0 -87
  726. data/ext/gecode-1.3.1/gecode/int/arithmetic.hh +0 -292
  727. data/ext/gecode-1.3.1/gecode/int/arithmetic/abs.icc +0 -213
  728. data/ext/gecode-1.3.1/gecode/int/arithmetic/max.icc +0 -196
  729. data/ext/gecode-1.3.1/gecode/int/arithmetic/mult.icc +0 -478
  730. data/ext/gecode-1.3.1/gecode/int/array.cc +0 -61
  731. data/ext/gecode-1.3.1/gecode/int/array.icc +0 -264
  732. data/ext/gecode-1.3.1/gecode/int/bool.cc +0 -187
  733. data/ext/gecode-1.3.1/gecode/int/bool.hh +0 -255
  734. data/ext/gecode-1.3.1/gecode/int/bool/base.icc +0 -123
  735. data/ext/gecode-1.3.1/gecode/int/bool/eq.icc +0 -89
  736. data/ext/gecode-1.3.1/gecode/int/bool/eqv.icc +0 -132
  737. data/ext/gecode-1.3.1/gecode/int/bool/or.icc +0 -380
  738. data/ext/gecode-1.3.1/gecode/int/branch.cc +0 -81
  739. data/ext/gecode-1.3.1/gecode/int/branch.hh +0 -444
  740. data/ext/gecode-1.3.1/gecode/int/branch/assign.cc +0 -83
  741. data/ext/gecode-1.3.1/gecode/int/branch/assign.icc +0 -76
  742. data/ext/gecode-1.3.1/gecode/int/branch/select-val.icc +0 -104
  743. data/ext/gecode-1.3.1/gecode/int/branch/select-view.icc +0 -219
  744. data/ext/gecode-1.3.1/gecode/int/channel.cc +0 -62
  745. data/ext/gecode-1.3.1/gecode/int/channel.hh +0 -144
  746. data/ext/gecode-1.3.1/gecode/int/channel/base.icc +0 -60
  747. data/ext/gecode-1.3.1/gecode/int/channel/dom.icc +0 -313
  748. data/ext/gecode-1.3.1/gecode/int/channel/stack.icc +0 -59
  749. data/ext/gecode-1.3.1/gecode/int/channel/val.icc +0 -239
  750. data/ext/gecode-1.3.1/gecode/int/count.cc +0 -174
  751. data/ext/gecode-1.3.1/gecode/int/count.hh +0 -401
  752. data/ext/gecode-1.3.1/gecode/int/count/int.icc +0 -495
  753. data/ext/gecode-1.3.1/gecode/int/count/rel.icc +0 -100
  754. data/ext/gecode-1.3.1/gecode/int/count/view.icc +0 -332
  755. data/ext/gecode-1.3.1/gecode/int/cumulatives.cc +0 -210
  756. data/ext/gecode-1.3.1/gecode/int/cumulatives.hh +0 -118
  757. data/ext/gecode-1.3.1/gecode/int/cumulatives/val.icc +0 -377
  758. data/ext/gecode-1.3.1/gecode/int/distinct.cc +0 -77
  759. data/ext/gecode-1.3.1/gecode/int/distinct.hh +0 -272
  760. data/ext/gecode-1.3.1/gecode/int/distinct/bilink.icc +0 -73
  761. data/ext/gecode-1.3.1/gecode/int/distinct/bnd.icc +0 -335
  762. data/ext/gecode-1.3.1/gecode/int/distinct/combptr.icc +0 -62
  763. data/ext/gecode-1.3.1/gecode/int/distinct/dom.icc +0 -740
  764. data/ext/gecode-1.3.1/gecode/int/distinct/edge.icc +0 -96
  765. data/ext/gecode-1.3.1/gecode/int/distinct/node.icc +0 -107
  766. data/ext/gecode-1.3.1/gecode/int/distinct/ter-dom.icc +0 -97
  767. data/ext/gecode-1.3.1/gecode/int/distinct/val.icc +0 -171
  768. data/ext/gecode-1.3.1/gecode/int/dom.cc +0 -81
  769. data/ext/gecode-1.3.1/gecode/int/dom.hh +0 -101
  770. data/ext/gecode-1.3.1/gecode/int/dom/range.icc +0 -85
  771. data/ext/gecode-1.3.1/gecode/int/dom/spec.icc +0 -85
  772. data/ext/gecode-1.3.1/gecode/int/element.cc +0 -58
  773. data/ext/gecode-1.3.1/gecode/int/element.hh +0 -203
  774. data/ext/gecode-1.3.1/gecode/int/element/int.icc +0 -396
  775. data/ext/gecode-1.3.1/gecode/int/element/view.icc +0 -443
  776. data/ext/gecode-1.3.1/gecode/int/exception.icc +0 -137
  777. data/ext/gecode-1.3.1/gecode/int/gcc.cc +0 -708
  778. data/ext/gecode-1.3.1/gecode/int/gcc.hh +0 -338
  779. data/ext/gecode-1.3.1/gecode/int/gcc/bnd.icc +0 -629
  780. data/ext/gecode-1.3.1/gecode/int/gcc/dom.icc +0 -504
  781. data/ext/gecode-1.3.1/gecode/int/gcc/gccbndsup.icc +0 -760
  782. data/ext/gecode-1.3.1/gecode/int/gcc/graphsup.icc +0 -2375
  783. data/ext/gecode-1.3.1/gecode/int/gcc/lbc.icc +0 -375
  784. data/ext/gecode-1.3.1/gecode/int/gcc/occur.icc +0 -687
  785. data/ext/gecode-1.3.1/gecode/int/gcc/ubc.icc +0 -236
  786. data/ext/gecode-1.3.1/gecode/int/gcc/val.icc +0 -373
  787. data/ext/gecode-1.3.1/gecode/int/int-set.cc +0 -115
  788. data/ext/gecode-1.3.1/gecode/int/int-set.icc +0 -151
  789. data/ext/gecode-1.3.1/gecode/int/linear.cc +0 -247
  790. data/ext/gecode-1.3.1/gecode/int/linear.hh +0 -1056
  791. data/ext/gecode-1.3.1/gecode/int/linear/binary.icc +0 -439
  792. data/ext/gecode-1.3.1/gecode/int/linear/bool-int.icc +0 -422
  793. data/ext/gecode-1.3.1/gecode/int/linear/bool-view.icc +0 -311
  794. data/ext/gecode-1.3.1/gecode/int/linear/dom.icc +0 -503
  795. data/ext/gecode-1.3.1/gecode/int/linear/nary.icc +0 -857
  796. data/ext/gecode-1.3.1/gecode/int/linear/noview.icc +0 -264
  797. data/ext/gecode-1.3.1/gecode/int/linear/post.cc +0 -542
  798. data/ext/gecode-1.3.1/gecode/int/linear/ternary.icc +0 -255
  799. data/ext/gecode-1.3.1/gecode/int/propagator.icc +0 -194
  800. data/ext/gecode-1.3.1/gecode/int/regular.cc +0 -40
  801. data/ext/gecode-1.3.1/gecode/int/regular.hh +0 -83
  802. data/ext/gecode-1.3.1/gecode/int/regular/dfa.cc +0 -466
  803. data/ext/gecode-1.3.1/gecode/int/regular/dfa.icc +0 -172
  804. data/ext/gecode-1.3.1/gecode/int/regular/dom.icc +0 -480
  805. data/ext/gecode-1.3.1/gecode/int/regular/reg.cc +0 -738
  806. data/ext/gecode-1.3.1/gecode/int/rel.cc +0 -293
  807. data/ext/gecode-1.3.1/gecode/int/rel.hh +0 -526
  808. data/ext/gecode-1.3.1/gecode/int/rel/eq.icc +0 -640
  809. data/ext/gecode-1.3.1/gecode/int/rel/lex.icc +0 -212
  810. data/ext/gecode-1.3.1/gecode/int/rel/lq-le.icc +0 -246
  811. data/ext/gecode-1.3.1/gecode/int/rel/nq.icc +0 -188
  812. data/ext/gecode-1.3.1/gecode/int/sortedness.cc +0 -124
  813. data/ext/gecode-1.3.1/gecode/int/sortedness.hh +0 -108
  814. data/ext/gecode-1.3.1/gecode/int/sortedness/matching.icc +0 -177
  815. data/ext/gecode-1.3.1/gecode/int/sortedness/narrowing.icc +0 -243
  816. data/ext/gecode-1.3.1/gecode/int/sortedness/order.icc +0 -232
  817. data/ext/gecode-1.3.1/gecode/int/sortedness/sortedness.icc +0 -727
  818. data/ext/gecode-1.3.1/gecode/int/sortedness/sortsup.icc +0 -666
  819. data/ext/gecode-1.3.1/gecode/int/var-imp.vis +0 -198
  820. data/ext/gecode-1.3.1/gecode/int/var.icc +0 -590
  821. data/ext/gecode-1.3.1/gecode/int/var/bool.icc +0 -52
  822. data/ext/gecode-1.3.1/gecode/int/var/imp-body.icc +0 -65
  823. data/ext/gecode-1.3.1/gecode/int/var/imp-hdr.icc +0 -191
  824. data/ext/gecode-1.3.1/gecode/int/var/imp.cc +0 -361
  825. data/ext/gecode-1.3.1/gecode/int/var/imp.icc +0 -579
  826. data/ext/gecode-1.3.1/gecode/int/var/int.cc +0 -63
  827. data/ext/gecode-1.3.1/gecode/int/var/int.icc +0 -135
  828. data/ext/gecode-1.3.1/gecode/int/view.icc +0 -1219
  829. data/ext/gecode-1.3.1/gecode/int/view/bool.icc +0 -270
  830. data/ext/gecode-1.3.1/gecode/int/view/constint.icc +0 -306
  831. data/ext/gecode-1.3.1/gecode/int/view/int.icc +0 -221
  832. data/ext/gecode-1.3.1/gecode/int/view/iter.icc +0 -49
  833. data/ext/gecode-1.3.1/gecode/int/view/minus.icc +0 -285
  834. data/ext/gecode-1.3.1/gecode/int/view/offset.icc +0 -274
  835. data/ext/gecode-1.3.1/gecode/int/view/print.cc +0 -109
  836. data/ext/gecode-1.3.1/gecode/int/view/rtest.icc +0 -215
  837. data/ext/gecode-1.3.1/gecode/int/view/scale.icc +0 -373
  838. data/ext/gecode-1.3.1/gecode/iter.hh +0 -65
  839. data/ext/gecode-1.3.1/gecode/iter/ranges-add.icc +0 -130
  840. data/ext/gecode-1.3.1/gecode/iter/ranges-append.icc +0 -208
  841. data/ext/gecode-1.3.1/gecode/iter/ranges-array.icc +0 -123
  842. data/ext/gecode-1.3.1/gecode/iter/ranges-cache.icc +0 -143
  843. data/ext/gecode-1.3.1/gecode/iter/ranges-compl.icc +0 -206
  844. data/ext/gecode-1.3.1/gecode/iter/ranges-diff.icc +0 -127
  845. data/ext/gecode-1.3.1/gecode/iter/ranges-empty.icc +0 -96
  846. data/ext/gecode-1.3.1/gecode/iter/ranges-inter.icc +0 -202
  847. data/ext/gecode-1.3.1/gecode/iter/ranges-minmax.icc +0 -103
  848. data/ext/gecode-1.3.1/gecode/iter/ranges-minus.icc +0 -138
  849. data/ext/gecode-1.3.1/gecode/iter/ranges-offset.icc +0 -112
  850. data/ext/gecode-1.3.1/gecode/iter/ranges-operations.icc +0 -142
  851. data/ext/gecode-1.3.1/gecode/iter/ranges-scale.icc +0 -224
  852. data/ext/gecode-1.3.1/gecode/iter/ranges-singleton.icc +0 -71
  853. data/ext/gecode-1.3.1/gecode/iter/ranges-size.icc +0 -131
  854. data/ext/gecode-1.3.1/gecode/iter/ranges-union.icc +0 -211
  855. data/ext/gecode-1.3.1/gecode/iter/ranges-values.icc +0 -125
  856. data/ext/gecode-1.3.1/gecode/iter/values-ranges.icc +0 -91
  857. data/ext/gecode-1.3.1/gecode/iter/virtual-ranges-compl.icc +0 -247
  858. data/ext/gecode-1.3.1/gecode/iter/virtual-ranges-inter.icc +0 -227
  859. data/ext/gecode-1.3.1/gecode/iter/virtual-ranges-union.icc +0 -236
  860. data/ext/gecode-1.3.1/gecode/iter/virtual-ranges.icc +0 -126
  861. data/ext/gecode-1.3.1/gecode/kernel.hh +0 -141
  862. data/ext/gecode-1.3.1/gecode/kernel/array.icc +0 -954
  863. data/ext/gecode-1.3.1/gecode/kernel/branching.icc +0 -233
  864. data/ext/gecode-1.3.1/gecode/kernel/core.cc +0 -417
  865. data/ext/gecode-1.3.1/gecode/kernel/core.icc +0 -1681
  866. data/ext/gecode-1.3.1/gecode/kernel/exception.cc +0 -49
  867. data/ext/gecode-1.3.1/gecode/kernel/exception.icc +0 -104
  868. data/ext/gecode-1.3.1/gecode/kernel/macros.icc +0 -98
  869. data/ext/gecode-1.3.1/gecode/kernel/memory-manager.cc +0 -41
  870. data/ext/gecode-1.3.1/gecode/kernel/memory-manager.icc +0 -438
  871. data/ext/gecode-1.3.1/gecode/kernel/memory.icc +0 -205
  872. data/ext/gecode-1.3.1/gecode/kernel/modevent.icc +0 -53
  873. data/ext/gecode-1.3.1/gecode/kernel/propagator.icc +0 -680
  874. data/ext/gecode-1.3.1/gecode/kernel/view.icc +0 -583
  875. data/ext/gecode-1.3.1/gecode/limits.hh +0 -87
  876. data/ext/gecode-1.3.1/gecode/minimodel.hh +0 -942
  877. data/ext/gecode-1.3.1/gecode/minimodel/arithmetic.cc +0 -137
  878. data/ext/gecode-1.3.1/gecode/minimodel/bool-expr.cc +0 -207
  879. data/ext/gecode-1.3.1/gecode/minimodel/bool-expr.icc +0 -191
  880. data/ext/gecode-1.3.1/gecode/minimodel/bool-rel.icc +0 -66
  881. data/ext/gecode-1.3.1/gecode/minimodel/exception.icc +0 -59
  882. data/ext/gecode-1.3.1/gecode/minimodel/lin-expr.cc +0 -103
  883. data/ext/gecode-1.3.1/gecode/minimodel/lin-expr.icc +0 -192
  884. data/ext/gecode-1.3.1/gecode/minimodel/lin-rel.icc +0 -200
  885. data/ext/gecode-1.3.1/gecode/minimodel/matrix.icc +0 -118
  886. data/ext/gecode-1.3.1/gecode/minimodel/scheduling.cc +0 -241
  887. data/ext/gecode-1.3.1/gecode/search.hh +0 -745
  888. data/ext/gecode-1.3.1/gecode/search/bab.cc +0 -153
  889. data/ext/gecode-1.3.1/gecode/search/bab.icc +0 -101
  890. data/ext/gecode-1.3.1/gecode/search/dfs.cc +0 -63
  891. data/ext/gecode-1.3.1/gecode/search/dfs.icc +0 -144
  892. data/ext/gecode-1.3.1/gecode/search/engine-ctrl.icc +0 -109
  893. data/ext/gecode-1.3.1/gecode/search/lds.cc +0 -237
  894. data/ext/gecode-1.3.1/gecode/search/lds.icc +0 -57
  895. data/ext/gecode-1.3.1/gecode/search/reco-stack.icc +0 -219
  896. data/ext/gecode-1.3.1/gecode/search/restart.icc +0 -76
  897. data/ext/gecode-1.3.1/gecode/search/statistics.icc +0 -30
  898. data/ext/gecode-1.3.1/gecode/search/stop.cc +0 -58
  899. data/ext/gecode-1.3.1/gecode/search/stop.icc +0 -100
  900. data/ext/gecode-1.3.1/gecode/set.hh +0 -419
  901. data/ext/gecode-1.3.1/gecode/set/array.cc +0 -114
  902. data/ext/gecode-1.3.1/gecode/set/array.icc +0 -134
  903. data/ext/gecode-1.3.1/gecode/set/branch.cc +0 -57
  904. data/ext/gecode-1.3.1/gecode/set/branch.hh +0 -176
  905. data/ext/gecode-1.3.1/gecode/set/branch/select-val.icc +0 -72
  906. data/ext/gecode-1.3.1/gecode/set/branch/select-view.icc +0 -112
  907. data/ext/gecode-1.3.1/gecode/set/cardinality.cc +0 -49
  908. data/ext/gecode-1.3.1/gecode/set/convex.cc +0 -43
  909. data/ext/gecode-1.3.1/gecode/set/convex.hh +0 -92
  910. data/ext/gecode-1.3.1/gecode/set/convex/conv.cc +0 -81
  911. data/ext/gecode-1.3.1/gecode/set/convex/conv.icc +0 -51
  912. data/ext/gecode-1.3.1/gecode/set/convex/hull.cc +0 -100
  913. data/ext/gecode-1.3.1/gecode/set/convex/hull.icc +0 -52
  914. data/ext/gecode-1.3.1/gecode/set/distinct.cc +0 -48
  915. data/ext/gecode-1.3.1/gecode/set/distinct.hh +0 -97
  916. data/ext/gecode-1.3.1/gecode/set/distinct/atmostOne.cc +0 -151
  917. data/ext/gecode-1.3.1/gecode/set/distinct/atmostOne.icc +0 -50
  918. data/ext/gecode-1.3.1/gecode/set/distinct/binomial.cc +0 -46
  919. data/ext/gecode-1.3.1/gecode/set/distinct/binomial.icc +0 -157
  920. data/ext/gecode-1.3.1/gecode/set/distinct/distinct.cc +0 -124
  921. data/ext/gecode-1.3.1/gecode/set/distinct/distinct.icc +0 -58
  922. data/ext/gecode-1.3.1/gecode/set/dom.cc +0 -224
  923. data/ext/gecode-1.3.1/gecode/set/exception.icc +0 -132
  924. data/ext/gecode-1.3.1/gecode/set/int.cc +0 -139
  925. data/ext/gecode-1.3.1/gecode/set/int.hh +0 -226
  926. data/ext/gecode-1.3.1/gecode/set/int/card.cc +0 -61
  927. data/ext/gecode-1.3.1/gecode/set/int/card.icc +0 -54
  928. data/ext/gecode-1.3.1/gecode/set/int/channel.cc +0 -100
  929. data/ext/gecode-1.3.1/gecode/set/int/channel.icc +0 -75
  930. data/ext/gecode-1.3.1/gecode/set/int/match.cc +0 -148
  931. data/ext/gecode-1.3.1/gecode/set/int/match.icc +0 -67
  932. data/ext/gecode-1.3.1/gecode/set/int/minmax.cc +0 -109
  933. data/ext/gecode-1.3.1/gecode/set/int/minmax.icc +0 -63
  934. data/ext/gecode-1.3.1/gecode/set/int/weights.cc +0 -182
  935. data/ext/gecode-1.3.1/gecode/set/int/weights.icc +0 -174
  936. data/ext/gecode-1.3.1/gecode/set/projectors-compiler.hh +0 -148
  937. data/ext/gecode-1.3.1/gecode/set/projectors.cc +0 -109
  938. data/ext/gecode-1.3.1/gecode/set/projectors.hh +0 -319
  939. data/ext/gecode-1.3.1/gecode/set/projectors/compiler.cc +0 -841
  940. data/ext/gecode-1.3.1/gecode/set/projectors/projector-set.cc +0 -69
  941. data/ext/gecode-1.3.1/gecode/set/projectors/projector-set.icc +0 -66
  942. data/ext/gecode-1.3.1/gecode/set/projectors/projector.cc +0 -125
  943. data/ext/gecode-1.3.1/gecode/set/projectors/projector.icc +0 -79
  944. data/ext/gecode-1.3.1/gecode/set/projectors/propagator.hh +0 -127
  945. data/ext/gecode-1.3.1/gecode/set/projectors/propagator/card.icc +0 -96
  946. data/ext/gecode-1.3.1/gecode/set/projectors/propagator/nary.icc +0 -106
  947. data/ext/gecode-1.3.1/gecode/set/projectors/propagator/re-nary.cc +0 -76
  948. data/ext/gecode-1.3.1/gecode/set/projectors/propagator/re-nary.icc +0 -53
  949. data/ext/gecode-1.3.1/gecode/set/projectors/set-expr.cc +0 -306
  950. data/ext/gecode-1.3.1/gecode/set/projectors/set-expr.icc +0 -192
  951. data/ext/gecode-1.3.1/gecode/set/propagator.icc +0 -96
  952. data/ext/gecode-1.3.1/gecode/set/rel-op-const.cc +0 -233
  953. data/ext/gecode-1.3.1/gecode/set/rel-op.cc +0 -96
  954. data/ext/gecode-1.3.1/gecode/set/rel-op.hh +0 -267
  955. data/ext/gecode-1.3.1/gecode/set/rel-op/common.icc +0 -528
  956. data/ext/gecode-1.3.1/gecode/set/rel-op/inter.icc +0 -312
  957. data/ext/gecode-1.3.1/gecode/set/rel-op/partition.icc +0 -131
  958. data/ext/gecode-1.3.1/gecode/set/rel-op/post.icc +0 -198
  959. data/ext/gecode-1.3.1/gecode/set/rel-op/subofunion.icc +0 -150
  960. data/ext/gecode-1.3.1/gecode/set/rel-op/superofinter.icc +0 -151
  961. data/ext/gecode-1.3.1/gecode/set/rel-op/union.icc +0 -292
  962. data/ext/gecode-1.3.1/gecode/set/rel.cc +0 -201
  963. data/ext/gecode-1.3.1/gecode/set/rel.hh +0 -250
  964. data/ext/gecode-1.3.1/gecode/set/rel/common.icc +0 -109
  965. data/ext/gecode-1.3.1/gecode/set/rel/eq.icc +0 -101
  966. data/ext/gecode-1.3.1/gecode/set/rel/nosubset.icc +0 -88
  967. data/ext/gecode-1.3.1/gecode/set/rel/nq.icc +0 -132
  968. data/ext/gecode-1.3.1/gecode/set/rel/re-eq.icc +0 -142
  969. data/ext/gecode-1.3.1/gecode/set/rel/re-subset.icc +0 -121
  970. data/ext/gecode-1.3.1/gecode/set/rel/subset.icc +0 -80
  971. data/ext/gecode-1.3.1/gecode/set/select.cc +0 -88
  972. data/ext/gecode-1.3.1/gecode/set/select.hh +0 -113
  973. data/ext/gecode-1.3.1/gecode/set/select/disjoint.cc +0 -267
  974. data/ext/gecode-1.3.1/gecode/set/select/disjoint.icc +0 -59
  975. data/ext/gecode-1.3.1/gecode/set/select/idxarray.hh +0 -91
  976. data/ext/gecode-1.3.1/gecode/set/select/idxarray.icc +0 -112
  977. data/ext/gecode-1.3.1/gecode/set/select/inter.icc +0 -300
  978. data/ext/gecode-1.3.1/gecode/set/sequence.cc +0 -48
  979. data/ext/gecode-1.3.1/gecode/set/sequence.hh +0 -97
  980. data/ext/gecode-1.3.1/gecode/set/sequence/common.icc +0 -79
  981. data/ext/gecode-1.3.1/gecode/set/sequence/seq-u.cc +0 -83
  982. data/ext/gecode-1.3.1/gecode/set/sequence/seq-u.icc +0 -63
  983. data/ext/gecode-1.3.1/gecode/set/sequence/seq.cc +0 -61
  984. data/ext/gecode-1.3.1/gecode/set/sequence/seq.icc +0 -53
  985. data/ext/gecode-1.3.1/gecode/set/var-imp.vis +0 -205
  986. data/ext/gecode-1.3.1/gecode/set/var.icc +0 -1090
  987. data/ext/gecode-1.3.1/gecode/set/var/imp-body.icc +0 -192
  988. data/ext/gecode-1.3.1/gecode/set/var/imp-hdr.icc +0 -235
  989. data/ext/gecode-1.3.1/gecode/set/var/imp.cc +0 -127
  990. data/ext/gecode-1.3.1/gecode/set/var/imp.icc +0 -356
  991. data/ext/gecode-1.3.1/gecode/set/var/integerset.cc +0 -256
  992. data/ext/gecode-1.3.1/gecode/set/var/integerset.icc +0 -512
  993. data/ext/gecode-1.3.1/gecode/set/var/iter.icc +0 -47
  994. data/ext/gecode-1.3.1/gecode/set/var/set.cc +0 -99
  995. data/ext/gecode-1.3.1/gecode/set/var/set.icc +0 -282
  996. data/ext/gecode-1.3.1/gecode/set/view.icc +0 -1075
  997. data/ext/gecode-1.3.1/gecode/set/view/complement.icc +0 -525
  998. data/ext/gecode-1.3.1/gecode/set/view/const.icc +0 -651
  999. data/ext/gecode-1.3.1/gecode/set/view/print.cc +0 -120
  1000. data/ext/gecode-1.3.1/gecode/set/view/set.icc +0 -217
  1001. data/ext/gecode-1.3.1/gecode/set/view/singleton.icc +0 -348
  1002. data/ext/gecode-1.3.1/gecode/support/block-allocator.hh +0 -152
  1003. data/ext/gecode-1.3.1/gecode/support/dynamic-array.hh +0 -131
  1004. data/ext/gecode-1.3.1/gecode/support/dynamic-stack.hh +0 -157
  1005. data/ext/gecode-1.3.1/gecode/support/random.hh +0 -100
  1006. data/ext/gecode-1.3.1/gecode/support/shared-array.hh +0 -255
  1007. data/ext/gecode-1.3.1/gecode/support/sort.hh +0 -193
  1008. data/ext/gecode-1.3.1/gecode/support/static-pqueue.hh +0 -240
  1009. data/ext/gecode-1.3.1/gecode/support/static-stack.hh +0 -117
  1010. data/ext/gecode-1.3.1/misc/debian/Makefile.am +0 -8
  1011. data/ext/gecode-1.3.1/misc/debian/copyright +0 -44
  1012. data/ext/gecode-1.3.1/misc/doxygen/stylesheet.css +0 -460
  1013. data/ext/gecode-1.3.1/misc/fixproperties.sh +0 -32
  1014. data/ext/gecode-1.3.1/misc/gecode-minimodel.pc.in +0 -12
  1015. data/ext/gecode-1.3.1/misc/gecode-search.pc.in +0 -12
  1016. data/ext/gecode-1.3.1/misc/gecode.pc.in +0 -12
  1017. data/ext/gecode-1.3.1/misc/genchangelog.perl +0 -190
  1018. data/ext/gecode-1.3.1/misc/genlicense.perl +0 -113
  1019. data/ext/gecode-1.3.1/misc/genstatistics.perl +0 -155
  1020. data/ext/gecode-1.3.1/misc/gentxtchangelog.perl +0 -170
  1021. data/ext/gecode-1.3.1/misc/genvarimp.perl +0 -666
  1022. data/ext/gecode-1.3.1/misc/getrevision.perl +0 -32
  1023. data/ext/gecode-1.3.1/misc/makedepend.perl +0 -66
  1024. data/ext/gecode-1.3.1/test/int.cc +0 -497
  1025. data/ext/gecode-1.3.1/test/int.hh +0 -119
  1026. data/ext/gecode-1.3.1/test/int/arithmetic.cc +0 -262
  1027. data/ext/gecode-1.3.1/test/int/basic.cc +0 -42
  1028. data/ext/gecode-1.3.1/test/int/bool.cc +0 -189
  1029. data/ext/gecode-1.3.1/test/int/channel.cc +0 -79
  1030. data/ext/gecode-1.3.1/test/int/count.cc +0 -264
  1031. data/ext/gecode-1.3.1/test/int/distinct.cc +0 -121
  1032. data/ext/gecode-1.3.1/test/int/dom.cc +0 -69
  1033. data/ext/gecode-1.3.1/test/int/element.cc +0 -132
  1034. data/ext/gecode-1.3.1/test/int/gcc.cc +0 -592
  1035. data/ext/gecode-1.3.1/test/int/linear.cc +0 -315
  1036. data/ext/gecode-1.3.1/test/int/minimodel.cc +0 -451
  1037. data/ext/gecode-1.3.1/test/int/regular.cc +0 -105
  1038. data/ext/gecode-1.3.1/test/int/rel.cc +0 -283
  1039. data/ext/gecode-1.3.1/test/int/scheduling.cc +0 -259
  1040. data/ext/gecode-1.3.1/test/int/sortedness.cc +0 -272
  1041. data/ext/gecode-1.3.1/test/intset.cc +0 -40
  1042. data/ext/gecode-1.3.1/test/log.cc +0 -515
  1043. data/ext/gecode-1.3.1/test/log.hh +0 -68
  1044. data/ext/gecode-1.3.1/test/set.cc +0 -542
  1045. data/ext/gecode-1.3.1/test/set.hh +0 -152
  1046. data/ext/gecode-1.3.1/test/set/convex.cc +0 -94
  1047. data/ext/gecode-1.3.1/test/set/distinct.cc +0 -148
  1048. data/ext/gecode-1.3.1/test/set/dom.cc +0 -67
  1049. data/ext/gecode-1.3.1/test/set/int.cc +0 -249
  1050. data/ext/gecode-1.3.1/test/set/projection.cc +0 -333
  1051. data/ext/gecode-1.3.1/test/set/rel-op.cc +0 -662
  1052. data/ext/gecode-1.3.1/test/set/rel.cc +0 -198
  1053. data/ext/gecode-1.3.1/test/set/select.cc +0 -108
  1054. data/ext/gecode-1.3.1/test/set/sequence.cc +0 -83
  1055. data/ext/gecode-1.3.1/test/stress.cc +0 -93
  1056. data/ext/gecode-1.3.1/test/stress.hh +0 -74
  1057. data/ext/gecode-1.3.1/test/stress/distinct.cc +0 -70
  1058. data/ext/gecode-1.3.1/test/stress/domain.cc +0 -69
  1059. data/ext/gecode-1.3.1/test/stress/exec.cc +0 -60
  1060. data/ext/gecode-1.3.1/test/stress/minsort.cc +0 -63
  1061. data/ext/gecode-1.3.1/test/stress/regular.cc +0 -112
  1062. data/ext/gecode-1.3.1/test/test.cc +0 -215
  1063. data/ext/gecode-1.3.1/test/test.hh +0 -107
@@ -0,0 +1 @@
1
+ Qecode - A quantified constraint solver
@@ -0,0 +1,91 @@
1
+ /*********************************************************[valueheuristic.hh]
2
+ Copyright (c) 2007, Universite d'Orleans - Jeremie Vautard, Marco Benedetti,
3
+ Arnaud Lallouet.
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
22
+ *****************************************************************************/
23
+
24
+
25
+ #ifndef VALUEHEUR
26
+ #define VALUEHEUR
27
+ #include "qecode.hh"
28
+ #include "implicative.hh"
29
+ using namespace Gecode;
30
+ using namespace Gecode::Int;
31
+ using namespace std;
32
+
33
+
34
+ class QECODE_VTABLE_EXPORT valueHeuristic {
35
+ friend class Implicative;
36
+ protected :
37
+ int whichSpaceOwns(Implicative* imp,int var) {
38
+ return imp->whichSpaceOwns[var];
39
+ }
40
+
41
+ int nbSpaces(Implicative* imp) {
42
+ return imp->nbSpaces;
43
+ }
44
+
45
+ IntVar* getIntVar(Implicative* imp,int scope,int var) {
46
+ if (imp->type_of_v[var] != VTYPE_INT) {cout<< "valueHeuristic getIntVar : Variable "<<var<<" is not int"<<endl; abort();}
47
+ if (scope<imp->nbSpaces) {
48
+ if (imp->ruleDefined[scope])
49
+ return (static_cast<IntVar*>(imp->rules[scope]->v[var]));
50
+ else
51
+ return NULL;
52
+ }
53
+ else {
54
+ if (imp->goalDefined)
55
+ return (static_cast<IntVar*>(imp->goal->v[var]));
56
+ else
57
+ return NULL;
58
+ }
59
+ }
60
+
61
+ bool scopeDefined(Implicative* imp,int scope) {
62
+ if (scope == imp->nbSpaces) return imp->goalDefined;
63
+ else return imp->ruleDefined[scope];
64
+ }
65
+
66
+ BoolVar* getBoolVar(Implicative* imp,int scope,int var) {
67
+ if (imp->type_of_v[var] != VTYPE_INT) {cout<< "valueHeuristic getBoolVar : Variable "<<var<<" is not bool"<<endl; abort();}
68
+ if (scope<imp->nbSpaces) {
69
+ if (imp->ruleDefined[scope])
70
+ return (static_cast<BoolVar*>(imp->rules[scope]->v[var]));
71
+ else
72
+ return NULL;
73
+ }
74
+ else {
75
+ if (imp->goalDefined)
76
+ return (static_cast<BoolVar*>(imp->goal->v[var]));
77
+ else
78
+ return NULL;
79
+ }
80
+ }
81
+
82
+ public :
83
+ virtual int** subSet(Implicative* home,int var,int* nbRanges)=0;
84
+ virtual ~valueHeuristic() {}
85
+ };
86
+
87
+
88
+
89
+
90
+
91
+ #endif
@@ -0,0 +1,31 @@
1
+ /**** qecode2, [ vartype.hh ],
2
+ Copyright (c) 2007 Universite d'Orleans - Jeremie Vautard
3
+
4
+ Permission is hereby granted, free of charge, to any person obtaining a copy
5
+ of this software and associated documentation files (the "Software"), to deal
6
+ in the Software without restriction, including without limitation the rights
7
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8
+ copies of the Software, and to permit persons to whom the Software is
9
+ furnished to do so, subject to the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be included in
12
+ all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20
+ THE SOFTWARE.
21
+ *************************************************************************/
22
+
23
+ #ifndef QECODE_VARTYPE
24
+ #define QECODE_VARTYPE
25
+
26
+ enum VarType {
27
+ VTYPE_INT,
28
+ VTYPE_BOOL
29
+ };
30
+
31
+ #endif
@@ -0,0 +1,101 @@
1
+ /*****************************************************************[warner.cc]
2
+ Copyright (c) 2007, Universite d'Orleans - Jeremie Vautard, Marco Benedetti,
3
+ Arnaud Lallouet.
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
22
+ *****************************************************************************/
23
+ #include "warner.hh"
24
+
25
+ void Warner::warn(int w) {
26
+ if (bh != NULL)
27
+ bh->vartouched(w,sp);
28
+ }
29
+
30
+
31
+ void Warner::setBH(BranchingHeuristic* b) {
32
+ bh=b;
33
+ }
34
+
35
+
36
+ IntWarningProp::IntWarningProp(Space* home, int v, IntView vv, Warner* f, bool fd) : UnaryPropagator<IntView,PC_INT_DOM>(home,vv) {
37
+ var=v;
38
+ toWarn=f;
39
+ }
40
+
41
+ IntWarningProp::IntWarningProp(Space* home, bool share, IntWarningProp& p) : UnaryPropagator<IntView,PC_INT_DOM>(home,share,p) {
42
+ var=p.var;
43
+ toWarn=p.toWarn;
44
+ }
45
+
46
+ IntWarningProp::~IntWarningProp(void) {}
47
+
48
+ PropCost IntWarningProp::cost(void) const {return PC_CRAZY_HI;}
49
+
50
+ ExecStatus IntWarningProp::propagate(Space * home,ModEventDelta med) {
51
+ toWarn->warn(var);
52
+ return ES_NOFIX;
53
+ }
54
+
55
+ Actor* IntWarningProp::copy(Space* home,bool share) {return new (home) IntWarningProp(home,share,*this);}
56
+
57
+ ExecStatus IntWarningProp::warning(Space* home, int v, IntView vv, Warner* f) {
58
+ (void) new (home) IntWarningProp(home,v,vv,f);
59
+ return ES_OK;
60
+ }
61
+
62
+ void IntWarningProp::IntWarning(Space* home, int v, IntVar iv, Warner* f) {
63
+ IntView vv(iv);
64
+ GECODE_ES_FAIL(home,warning(home,v,vv,f));
65
+ }
66
+
67
+ //////////////////////////////////////////////
68
+
69
+ BoolWarningProp::BoolWarningProp(Space* home, int v, BoolView vv, Warner* f, bool fd) : UnaryPropagator<BoolView,PC_INT_DOM>(home,vv) {
70
+ var=v;
71
+ toWarn=f;
72
+ }
73
+
74
+ BoolWarningProp::BoolWarningProp(Space* home, bool share, BoolWarningProp& p) : UnaryPropagator<BoolView,PC_INT_DOM>(home,share,p) {
75
+ var=p.var;
76
+ toWarn=p.toWarn;
77
+ }
78
+
79
+ BoolWarningProp::~BoolWarningProp(void) {}
80
+
81
+ PropCost BoolWarningProp::cost(void) const {return PC_CRAZY_HI;}
82
+
83
+ ExecStatus BoolWarningProp::propagate(Space * home,ModEventDelta med) {
84
+ toWarn->warn(var);
85
+ return ES_NOFIX;
86
+ }
87
+
88
+ Actor* BoolWarningProp::copy(Space* home,bool share) {return new (home) BoolWarningProp(home,share,*this);}
89
+
90
+ ExecStatus BoolWarningProp::warning(Space* home, int v, BoolView vv, Warner* f) {
91
+ (void) new (home) BoolWarningProp(home,v,vv,f);
92
+ return ES_OK;
93
+ }
94
+
95
+ void BoolWarningProp::BoolWarning(Space* home, int v, BoolVar iv, Warner* f) {
96
+ BoolView vv(iv);
97
+ GECODE_ES_FAIL(home,warning(home,v,vv,f));
98
+ }
99
+
100
+
101
+
@@ -0,0 +1,83 @@
1
+ /*****************************************************************[warner.hh]
2
+ Copyright (c) 2007, Universite d'Orleans - Jeremie Vautard, Marco Benedetti,
3
+ Arnaud Lallouet.
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
22
+ *****************************************************************************/
23
+ #ifndef __QECODE_WARNER__
24
+ #define __QECODE_WARNER__
25
+
26
+ #include "qecode.hh"
27
+ #include <iostream>
28
+ #include <cstdlib>
29
+ #include "gecode/minimodel.hh"
30
+ #include "qecore.hh"
31
+
32
+
33
+ using namespace Gecode;
34
+ using namespace Gecode::Int;
35
+
36
+ class QECODE_VTABLE_EXPORT Warner {
37
+ private :
38
+ BranchingHeuristic* bh;
39
+ QSpace* sp;
40
+ public :
41
+ QECODE_EXPORT Warner(QSpace* qs) {bh=NULL;sp=qs;}
42
+ QECODE_EXPORT void update(QSpace* qs) {sp=qs;}
43
+ QECODE_EXPORT void setBH(BranchingHeuristic* b);
44
+ QECODE_EXPORT void warn(int w);
45
+ };
46
+
47
+
48
+ class QECODE_VTABLE_EXPORT IntWarningProp : public UnaryPropagator<IntView,PC_INT_DOM> {
49
+
50
+ private :
51
+ int var;
52
+ Warner* toWarn;
53
+
54
+ public :
55
+ QECODE_EXPORT IntWarningProp (Space* home, int v, IntView vv, Warner* f, bool fd=false);
56
+ QECODE_EXPORT IntWarningProp (Space* home,bool share, IntWarningProp& p);
57
+ QECODE_EXPORT ~IntWarningProp (void);
58
+ QECODE_EXPORT virtual PropCost cost(void) const;
59
+ QECODE_EXPORT virtual ExecStatus propagate(Space * home,ModEventDelta med);
60
+ QECODE_EXPORT virtual Actor* copy(Space* home,bool share);
61
+ QECODE_EXPORT static ExecStatus warning(Space* home, int v, IntView vv, Warner* f);
62
+ QECODE_EXPORT static void IntWarning(Space* home, int v, IntVar iv, Warner* f);
63
+ };
64
+
65
+ class QECODE_VTABLE_EXPORT BoolWarningProp : public UnaryPropagator<BoolView,PC_INT_DOM> {
66
+
67
+ private :
68
+ int var;
69
+ Warner* toWarn;
70
+
71
+ public :
72
+ QECODE_EXPORT BoolWarningProp (Space* home, int v, BoolView vv, Warner* f, bool fd=false);
73
+ QECODE_EXPORT BoolWarningProp (Space* home,bool share, BoolWarningProp& p);
74
+ QECODE_EXPORT ~BoolWarningProp (void);
75
+ QECODE_EXPORT virtual PropCost cost(void) const;
76
+ QECODE_EXPORT virtual ExecStatus propagate(Space * home,ModEventDelta med);
77
+ QECODE_EXPORT virtual Actor* copy(Space* home,bool share);
78
+ QECODE_EXPORT static ExecStatus warning(Space* home, int v, BoolView vv, Warner* f);
79
+ QECODE_EXPORT static void BoolWarning(Space* home, int v, BoolVar iv, Warner* f);
80
+ };
81
+
82
+
83
+ #endif
@@ -0,0 +1,1270 @@
1
+ # Doxyfile 1.4.2-20050421
2
+
3
+ # Main authors:
4
+ # Christian Schulte <schulte@gecode.org>
5
+ # Guido Tack <tack@gecode.org>
6
+ #
7
+ # Copyright:
8
+ # Christian Schulte, 2005
9
+ # Guido Tack, 2005
10
+ #
11
+ # Last modified:
12
+ # $Date: 2008-02-27 17:58:19 +0100 (Wed, 27 Feb 2008) $ by $Author: tack $
13
+ # $Revision: 6329 $
14
+ #
15
+ # This file is part of Gecode, the generic constraint
16
+ # development environment:
17
+ # http://www.gecode.org
18
+ #
19
+ # Permission is hereby granted, free of charge, to any person obtaining
20
+ # a copy of this software and associated documentation files (the
21
+ # "Software"), to deal in the Software without restriction, including
22
+ # without limitation the rights to use, copy, modify, merge, publish,
23
+ # distribute, sublicense, and/or sell copies of the Software, and to
24
+ # permit persons to whom the Software is furnished to do so, subject to
25
+ # the following conditions:
26
+ #
27
+ # The above copyright notice and this permission notice shall be
28
+ # included in all copies or substantial portions of the Software.
29
+ #
30
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
31
+ # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
32
+ # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
33
+ # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
34
+ # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
35
+ # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
36
+ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
37
+
38
+ # This file describes the settings to be used by the documentation system
39
+ # doxygen (www.doxygen.org) for a project
40
+ #
41
+ # All text after a hash (#) is considered a comment and will be ignored
42
+ # The format is:
43
+ # TAG = value [value, ...]
44
+ # For lists items can also be appended using:
45
+ # TAG += value [value, ...]
46
+ # Values that contain spaces should be placed between quotes (" ")
47
+
48
+ #---------------------------------------------------------------------------
49
+ # Project related configuration options
50
+ #---------------------------------------------------------------------------
51
+
52
+ # The PROJECT_NAME tag is a single word (or a sequence of words surrounded
53
+ # by quotes) that should identify the project.
54
+
55
+ PROJECT_NAME = Gecode
56
+
57
+ # The PROJECT_NUMBER tag can be used to enter a project or revision number.
58
+ # This could be handy for archiving the generated documentation or
59
+ # if some version control system is used.
60
+
61
+ PROJECT_NUMBER = @VERSION@
62
+
63
+ # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
64
+ # base path where the generated documentation will be put.
65
+ # If a relative path is entered, it will be relative to the location
66
+ # where doxygen was started. If left blank the current directory will be used.
67
+
68
+ OUTPUT_DIRECTORY = doc
69
+
70
+ # If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
71
+ # 4096 sub-directories (in 2 levels) under the output directory of each output
72
+ # format and will distribute the generated files over these directories.
73
+ # Enabling this option can be useful when feeding doxygen a huge amount of
74
+ # source files, where putting all generated files in the same directory would
75
+ # otherwise cause performance problems for the file system.
76
+
77
+ CREATE_SUBDIRS = NO
78
+
79
+ # The OUTPUT_LANGUAGE tag is used to specify the language in which all
80
+ # documentation generated by doxygen is written. Doxygen will use this
81
+ # information to generate all constant output in the proper language.
82
+ # The default language is English, other supported languages are:
83
+ # Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish,
84
+ # Dutch, Finnish, French, German, Greek, Hungarian, Italian, Japanese,
85
+ # Japanese-en (Japanese with English messages), Korean, Korean-en, Norwegian,
86
+ # Polish, Portuguese, Romanian, Russian, Serbian, Slovak, Slovene, Spanish,
87
+ # Swedish, and Ukrainian.
88
+
89
+ OUTPUT_LANGUAGE = English
90
+
91
+ # This tag can be used to specify the encoding used in the generated output.
92
+ # The encoding is not always determined by the language that is chosen,
93
+ # but also whether or not the output is meant for Windows or non-Windows users.
94
+ # In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES
95
+ # forces the Windows encoding (this is the default for the Windows binary),
96
+ # whereas setting the tag to NO uses a Unix-style encoding (the default for
97
+ # all platforms other than Windows).
98
+
99
+ USE_WINDOWS_ENCODING = YES
100
+
101
+ # If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
102
+ # include brief member descriptions after the members that are listed in
103
+ # the file and class documentation (similar to JavaDoc).
104
+ # Set to NO to disable this.
105
+
106
+ BRIEF_MEMBER_DESC = YES
107
+
108
+ # If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
109
+ # the brief description of a member or function before the detailed description.
110
+ # Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
111
+ # brief descriptions will be completely suppressed.
112
+
113
+ REPEAT_BRIEF = YES
114
+
115
+ # This tag implements a quasi-intelligent brief description abbreviator
116
+ # that is used to form the text in various listings. Each string
117
+ # in this list, if found as the leading text of the brief description, will be
118
+ # stripped from the text and the result after processing the whole list, is
119
+ # used as the annotated text. Otherwise, the brief description is used as-is.
120
+ # If left blank, the following values are used ("$name" is automatically
121
+ # replaced with the name of the entity): "The $name class" "The $name widget"
122
+ # "The $name file" "is" "provides" "specifies" "contains"
123
+ # "represents" "a" "an" "the"
124
+
125
+ ABBREVIATE_BRIEF =
126
+
127
+ # If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
128
+ # Doxygen will generate a detailed section even if there is only a brief
129
+ # description.
130
+
131
+ ALWAYS_DETAILED_SEC = NO
132
+
133
+ # If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
134
+ # inherited members of a class in the documentation of that class as if those
135
+ # members were ordinary class members. Constructors, destructors and assignment
136
+ # operators of the base classes will not be shown.
137
+
138
+ INLINE_INHERITED_MEMB = NO
139
+
140
+ # If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
141
+ # path before files name in the file list and in the header files. If set
142
+ # to NO the shortest path that makes the file name unique will be used.
143
+
144
+ FULL_PATH_NAMES = YES
145
+
146
+ # If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
147
+ # can be used to strip a user-defined part of the path. Stripping is
148
+ # only done if one of the specified strings matches the left-hand part of
149
+ # the path. The tag can be used to show relative paths in the file list.
150
+ # If left blank the directory from which doxygen is run is used as the
151
+ # path to strip.
152
+
153
+ STRIP_FROM_PATH =
154
+
155
+ # The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
156
+ # the path mentioned in the documentation of a class, which tells
157
+ # the reader which header file to include in order to use a class.
158
+ # If left blank only the name of the header file containing the class
159
+ # definition is used. Otherwise one should specify the include paths that
160
+ # are normally passed to the compiler using the -I flag.
161
+
162
+ STRIP_FROM_INC_PATH =
163
+
164
+ # If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
165
+ # (but less readable) file names. This can be useful is your file systems
166
+ # doesn't support long names like on DOS, Mac, or CD-ROM.
167
+
168
+ SHORT_NAMES = NO
169
+
170
+ # If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
171
+ # will interpret the first line (until the first dot) of a JavaDoc-style
172
+ # comment as the brief description. If set to NO, the JavaDoc
173
+ # comments will behave just like the Qt-style comments (thus requiring an
174
+ # explicit @brief command for a brief description.
175
+
176
+ JAVADOC_AUTOBRIEF = NO
177
+
178
+ # The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
179
+ # treat a multi-line C++ special comment block (i.e. a block of //! or ///
180
+ # comments) as a brief description. This used to be the default behaviour.
181
+ # The new default is to treat a multi-line C++ comment block as a detailed
182
+ # description. Set this tag to YES if you prefer the old behaviour instead.
183
+
184
+ MULTILINE_CPP_IS_BRIEF = YES
185
+
186
+ # If the DETAILS_AT_TOP tag is set to YES then Doxygen
187
+ # will output the detailed description near the top, like JavaDoc.
188
+ # If set to NO, the detailed description appears after the member
189
+ # documentation.
190
+
191
+ DETAILS_AT_TOP = YES
192
+
193
+ # If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
194
+ # member inherits the documentation from any documented member that it
195
+ # re-implements.
196
+
197
+ INHERIT_DOCS = YES
198
+
199
+ # If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
200
+ # tag is set to YES, then doxygen will reuse the documentation of the first
201
+ # member in the group (if any) for the other members of the group. By default
202
+ # all members of a group must be documented explicitly.
203
+
204
+ DISTRIBUTE_GROUP_DOC = YES
205
+
206
+ # If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce
207
+ # a new page for each member. If set to NO, the documentation of a member will
208
+ # be part of the file/class/namespace that contains it.
209
+
210
+ SEPARATE_MEMBER_PAGES = NO
211
+
212
+ # The TAB_SIZE tag can be used to set the number of spaces in a tab.
213
+ # Doxygen uses this value to replace tabs by spaces in code fragments.
214
+
215
+ TAB_SIZE = 8
216
+
217
+ # This tag can be used to specify a number of aliases that acts
218
+ # as commands in the documentation. An alias has the form "name=value".
219
+ # For example adding "sideeffect=\par Side Effects:\n" will allow you to
220
+ # put the command \sideeffect (or @sideeffect) in the documentation, which
221
+ # will result in a user-defined paragraph with heading "Side Effects:".
222
+ # You can put \n's in the value part of an alias to insert newlines.
223
+
224
+ ALIASES =
225
+
226
+ # Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C
227
+ # sources only. Doxygen will then generate output that is more tailored for C.
228
+ # For instance, some of the names that are used will be different. The list
229
+ # of all members will be omitted, etc.
230
+
231
+ OPTIMIZE_OUTPUT_FOR_C = NO
232
+
233
+ # Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources
234
+ # only. Doxygen will then generate output that is more tailored for Java.
235
+ # For instance, namespaces will be presented as packages, qualified scopes
236
+ # will look different, etc.
237
+
238
+ OPTIMIZE_OUTPUT_JAVA = NO
239
+
240
+ # Set the SUBGROUPING tag to YES (the default) to allow class member groups of
241
+ # the same type (for instance a group of public functions) to be put as a
242
+ # subgroup of that type (e.g. under the Public Functions section). Set it to
243
+ # NO to prevent subgrouping. Alternatively, this can be done per class using
244
+ # the \nosubgrouping command.
245
+
246
+ SUBGROUPING = NO
247
+
248
+ #---------------------------------------------------------------------------
249
+ # Build related configuration options
250
+ #---------------------------------------------------------------------------
251
+
252
+ # If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
253
+ # documentation are documented, even if no documentation was available.
254
+ # Private class members and static file members will be hidden unless
255
+ # the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
256
+
257
+ EXTRACT_ALL = YES
258
+
259
+ # If the EXTRACT_PRIVATE tag is set to YES all private members of a class
260
+ # will be included in the documentation.
261
+
262
+ EXTRACT_PRIVATE = NO
263
+
264
+ # If the EXTRACT_STATIC tag is set to YES all static members of a file
265
+ # will be included in the documentation.
266
+
267
+ EXTRACT_STATIC = NO
268
+
269
+ # If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
270
+ # defined locally in source files will be included in the documentation.
271
+ # If set to NO only classes defined in header files are included.
272
+
273
+ EXTRACT_LOCAL_CLASSES = YES
274
+
275
+ # This flag is only useful for Objective-C code. When set to YES local
276
+ # methods, which are defined in the implementation section but not in
277
+ # the interface are included in the documentation.
278
+ # If set to NO (the default) only methods in the interface are included.
279
+
280
+ EXTRACT_LOCAL_METHODS = YES
281
+
282
+ # If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
283
+ # undocumented members of documented classes, files or namespaces.
284
+ # If set to NO (the default) these members will be included in the
285
+ # various overviews, but no documentation section is generated.
286
+ # This option has no effect if EXTRACT_ALL is enabled.
287
+
288
+ HIDE_UNDOC_MEMBERS = YES
289
+
290
+ # If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
291
+ # undocumented classes that are normally visible in the class hierarchy.
292
+ # If set to NO (the default) these classes will be included in the various
293
+ # overviews. This option has no effect if EXTRACT_ALL is enabled.
294
+
295
+ HIDE_UNDOC_CLASSES = YES
296
+
297
+ # If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
298
+ # friend (class|struct|union) declarations.
299
+ # If set to NO (the default) these declarations will be included in the
300
+ # documentation.
301
+
302
+ HIDE_FRIEND_COMPOUNDS = YES
303
+
304
+ # If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
305
+ # documentation blocks found inside the body of a function.
306
+ # If set to NO (the default) these blocks will be appended to the
307
+ # function's detailed documentation block.
308
+
309
+ HIDE_IN_BODY_DOCS = NO
310
+
311
+ # The INTERNAL_DOCS tag determines if documentation
312
+ # that is typed after a \internal command is included. If the tag is set
313
+ # to NO (the default) then the documentation will be excluded.
314
+ # Set it to YES to include the internal documentation.
315
+
316
+ INTERNAL_DOCS = NO
317
+
318
+ # If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
319
+ # file names in lower-case letters. If set to YES upper-case letters are also
320
+ # allowed. This is useful if you have classes or files whose names only differ
321
+ # in case and if your file system supports case sensitive file names. Windows
322
+ # and Mac users are advised to set this option to NO.
323
+
324
+ CASE_SENSE_NAMES = YES
325
+
326
+ # If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
327
+ # will show members with their full class and namespace scopes in the
328
+ # documentation. If set to YES the scope will be hidden.
329
+
330
+ HIDE_SCOPE_NAMES = NO
331
+
332
+ # If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
333
+ # will put a list of the files that are included by a file in the documentation
334
+ # of that file.
335
+
336
+ SHOW_INCLUDE_FILES = YES
337
+
338
+ # If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
339
+ # is inserted in the documentation for inline members.
340
+
341
+ INLINE_INFO = YES
342
+
343
+ # If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
344
+ # will sort the (detailed) documentation of file and class members
345
+ # alphabetically by member name. If set to NO the members will appear in
346
+ # declaration order.
347
+
348
+ SORT_MEMBER_DOCS = NO
349
+
350
+ # If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the
351
+ # brief documentation of file, namespace and class members alphabetically
352
+ # by member name. If set to NO (the default) the members will appear in
353
+ # declaration order.
354
+
355
+ SORT_BRIEF_DOCS = NO
356
+
357
+ # If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be
358
+ # sorted by fully-qualified names, including namespaces. If set to
359
+ # NO (the default), the class list will be sorted only by class name,
360
+ # not including the namespace part.
361
+ # Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
362
+ # Note: This option applies only to the class list, not to the
363
+ # alphabetical list.
364
+
365
+ SORT_BY_SCOPE_NAME = YES
366
+
367
+ # The GENERATE_TODOLIST tag can be used to enable (YES) or
368
+ # disable (NO) the todo list. This list is created by putting \todo
369
+ # commands in the documentation.
370
+
371
+ GENERATE_TODOLIST = NO
372
+
373
+ # The GENERATE_TESTLIST tag can be used to enable (YES) or
374
+ # disable (NO) the test list. This list is created by putting \test
375
+ # commands in the documentation.
376
+
377
+ GENERATE_TESTLIST = YES
378
+
379
+ # The GENERATE_BUGLIST tag can be used to enable (YES) or
380
+ # disable (NO) the bug list. This list is created by putting \bug
381
+ # commands in the documentation.
382
+
383
+ GENERATE_BUGLIST = YES
384
+
385
+ # The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
386
+ # disable (NO) the deprecated list. This list is created by putting
387
+ # \deprecated commands in the documentation.
388
+
389
+ GENERATE_DEPRECATEDLIST= YES
390
+
391
+ # The ENABLED_SECTIONS tag can be used to enable conditional
392
+ # documentation sections, marked by \if sectionname ... \endif.
393
+
394
+ ENABLED_SECTIONS =
395
+
396
+ # The MAX_INITIALIZER_LINES tag determines the maximum number of lines
397
+ # the initial value of a variable or define consists of for it to appear in
398
+ # the documentation. If the initializer consists of more lines than specified
399
+ # here it will be hidden. Use a value of 0 to hide initializers completely.
400
+ # The appearance of the initializer of individual variables and defines in the
401
+ # documentation can be controlled using \showinitializer or \hideinitializer
402
+ # command in the documentation regardless of this setting.
403
+
404
+ MAX_INITIALIZER_LINES = 30
405
+
406
+ # Set the SHOW_USED_FILES tag to NO to disable the list of files generated
407
+ # at the bottom of the documentation of classes and structs. If set to YES the
408
+ # list will mention the files that were used to generate the documentation.
409
+
410
+ SHOW_USED_FILES = YES
411
+
412
+ # If the sources in your project are distributed over multiple directories
413
+ # then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy
414
+ # in the documentation.
415
+
416
+ SHOW_DIRECTORIES = YES
417
+
418
+ # The FILE_VERSION_FILTER tag can be used to specify a program or script that
419
+ # doxygen should invoke to get the current version for each file (typically from the
420
+ # version control system). Doxygen will invoke the program by executing (via
421
+ # popen()) the command <command> <input-file>, where <command> is the value of
422
+ # the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file
423
+ # provided by doxygen. Whatever the progam writes to standard output
424
+ # is used as the file version. See the manual for examples.
425
+
426
+ FILE_VERSION_FILTER = @top_srcdir@/misc/getrevision.perl
427
+
428
+ #---------------------------------------------------------------------------
429
+ # configuration options related to warning and progress messages
430
+ #---------------------------------------------------------------------------
431
+
432
+ # The QUIET tag can be used to turn on/off the messages that are generated
433
+ # by doxygen. Possible values are YES and NO. If left blank NO is used.
434
+
435
+ QUIET = NO
436
+
437
+ # The WARNINGS tag can be used to turn on/off the warning messages that are
438
+ # generated by doxygen. Possible values are YES and NO. If left blank
439
+ # NO is used.
440
+
441
+ WARNINGS = YES
442
+
443
+ # If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
444
+ # for undocumented members. If EXTRACT_ALL is set to YES then this flag will
445
+ # automatically be disabled.
446
+
447
+ WARN_IF_UNDOCUMENTED = NO
448
+
449
+ # If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
450
+ # potential errors in the documentation, such as not documenting some
451
+ # parameters in a documented function, or documenting parameters that
452
+ # don't exist or using markup commands wrongly.
453
+
454
+ WARN_IF_DOC_ERROR = YES
455
+
456
+ # This WARN_NO_PARAMDOC option can be abled to get warnings for
457
+ # functions that are documented, but have no documentation for their parameters
458
+ # or return value. If set to NO (the default) doxygen will only warn about
459
+ # wrong or incomplete parameter documentation, but not about the absence of
460
+ # documentation.
461
+
462
+ WARN_NO_PARAMDOC = NO
463
+
464
+ # The WARN_FORMAT tag determines the format of the warning messages that
465
+ # doxygen can produce. The string should contain the $file, $line, and $text
466
+ # tags, which will be replaced by the file and line number from which the
467
+ # warning originated and the warning text. Optionally the format may contain
468
+ # $version, which will be replaced by the version of the file (if it could
469
+ # be obtained via FILE_VERSION_FILTER)
470
+
471
+ WARN_FORMAT = "$file:$line: $text"
472
+
473
+ # The WARN_LOGFILE tag can be used to specify a file to which warning
474
+ # and error messages should be written. If left blank the output is written
475
+ # to stderr.
476
+
477
+ WARN_LOGFILE = doxygen.log
478
+
479
+ #---------------------------------------------------------------------------
480
+ # configuration options related to the input files
481
+ #---------------------------------------------------------------------------
482
+
483
+ # The INPUT tag can be used to specify the files and/or directories that contain
484
+ # documented source files. You may enter file names like "myfile.cpp" or
485
+ # directories like "/usr/src/myproject". Separate the files or directories
486
+ # with spaces.
487
+
488
+ INPUT = . @top_srcdir@
489
+
490
+ # If the value of the INPUT tag contains directories, you can use the
491
+ # FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
492
+ # and *.h) to filter out the source-files in the directories. If left
493
+ # blank the following patterns are tested:
494
+ # *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx
495
+ # *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm
496
+
497
+ FILE_PATTERNS = *.h \
498
+ *.c \
499
+ *.hh \
500
+ *.cc \
501
+ *.icc
502
+
503
+ # The RECURSIVE tag can be used to turn specify whether or not subdirectories
504
+ # should be searched for input files as well. Possible values are YES and NO.
505
+ # If left blank NO is used.
506
+
507
+ RECURSIVE = YES
508
+
509
+ # The EXCLUDE tag can be used to specify files and/or directories that should
510
+ # excluded from the INPUT source files. This way you can easily exclude a
511
+ # subdirectory from a directory tree whose root is specified with the INPUT tag.
512
+
513
+ EXCLUDE = \
514
+ contribs gecode/support/buddy \
515
+ gecode/serialization/boost.icc \
516
+ gecode/serialization/boost.cc \
517
+ gecode/gist.hh gecode/gist
518
+
519
+ # The EXCLUDE_SYMLINKS tag can be used select whether or not files or
520
+ # directories that are symbolic links (a Unix filesystem feature) are excluded
521
+ # from the input.
522
+
523
+ EXCLUDE_SYMLINKS = NO
524
+
525
+ # If the value of the INPUT tag contains directories, you can use the
526
+ # EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
527
+ # certain files from those directories.
528
+
529
+ EXCLUDE_PATTERNS = */.svn/*
530
+
531
+ # The EXAMPLE_PATH tag can be used to specify one or more files or
532
+ # directories that contain example code fragments that are included (see
533
+ # the \include command).
534
+
535
+ EXAMPLE_PATH =
536
+
537
+ # If the value of the EXAMPLE_PATH tag contains directories, you can use the
538
+ # EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
539
+ # and *.h) to filter out the source-files in the directories. If left
540
+ # blank all files are included.
541
+
542
+ EXAMPLE_PATTERNS = *.cc
543
+
544
+ # If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
545
+ # searched for input files to be used with the \include or \dontinclude
546
+ # commands irrespective of the value of the RECURSIVE tag.
547
+ # Possible values are YES and NO. If left blank NO is used.
548
+
549
+ EXAMPLE_RECURSIVE = NO
550
+
551
+ # The IMAGE_PATH tag can be used to specify one or more files or
552
+ # directories that contain image that are included in the documentation (see
553
+ # the \image command).
554
+
555
+ IMAGE_PATH =
556
+
557
+ # The INPUT_FILTER tag can be used to specify a program that doxygen should
558
+ # invoke to filter for each input file. Doxygen will invoke the filter program
559
+ # by executing (via popen()) the command <filter> <input-file>, where <filter>
560
+ # is the value of the INPUT_FILTER tag, and <input-file> is the name of an
561
+ # input file. Doxygen will then use the output that the filter program writes
562
+ # to standard output. If FILTER_PATTERNS is specified, this tag will be
563
+ # ignored.
564
+
565
+ INPUT_FILTER =
566
+
567
+ # The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
568
+ # basis. Doxygen will compare the file name with each pattern and apply the
569
+ # filter if there is a match. The filters are a list of the form:
570
+ # pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further
571
+ # info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER
572
+ # is applied to all files.
573
+
574
+ FILTER_PATTERNS =
575
+
576
+ # If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
577
+ # INPUT_FILTER) will be used to filter the input files when producing source
578
+ # files to browse (i.e. when SOURCE_BROWSER is set to YES).
579
+
580
+ FILTER_SOURCE_FILES = NO
581
+
582
+ #---------------------------------------------------------------------------
583
+ # configuration options related to source browsing
584
+ #---------------------------------------------------------------------------
585
+
586
+ # If the SOURCE_BROWSER tag is set to YES then a list of source files will
587
+ # be generated. Documented entities will be cross-referenced with these sources.
588
+ # Note: To get rid of all source code in the generated output, make sure also
589
+ # VERBATIM_HEADERS is set to NO.
590
+
591
+ SOURCE_BROWSER = YES
592
+
593
+ # Setting the INLINE_SOURCES tag to YES will include the body
594
+ # of functions and classes directly in the documentation.
595
+
596
+ INLINE_SOURCES = NO
597
+
598
+ # Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
599
+ # doxygen to hide any special comment blocks from generated source code
600
+ # fragments. Normal C and C++ comments will always remain visible.
601
+
602
+ STRIP_CODE_COMMENTS = YES
603
+
604
+ # If the REFERENCED_BY_RELATION tag is set to YES (the default)
605
+ # then for each documented function all documented
606
+ # functions referencing it will be listed.
607
+
608
+ REFERENCED_BY_RELATION = NO
609
+
610
+ # If the REFERENCES_RELATION tag is set to YES (the default)
611
+ # then for each documented function all documented entities
612
+ # called/used by that function will be listed.
613
+
614
+ REFERENCES_RELATION = NO
615
+
616
+ # If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
617
+ # will generate a verbatim copy of the header file for each class for
618
+ # which an include is specified. Set to NO to disable this.
619
+
620
+ VERBATIM_HEADERS = YES
621
+
622
+ #---------------------------------------------------------------------------
623
+ # configuration options related to the alphabetical class index
624
+ #---------------------------------------------------------------------------
625
+
626
+ # If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
627
+ # of all compounds will be generated. Enable this if the project
628
+ # contains a lot of classes, structs, unions or interfaces.
629
+
630
+ ALPHABETICAL_INDEX = YES
631
+
632
+ # If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
633
+ # the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
634
+ # in which this list will be split (can be a number in the range [1..20])
635
+
636
+ COLS_IN_ALPHA_INDEX = 3
637
+
638
+ # In case all classes in a project start with a common prefix, all
639
+ # classes will be put under the same header in the alphabetical index.
640
+ # The IGNORE_PREFIX tag can be used to specify one or more prefixes that
641
+ # should be ignored while generating the index headers.
642
+
643
+ IGNORE_PREFIX =
644
+
645
+ #---------------------------------------------------------------------------
646
+ # configuration options related to the HTML output
647
+ #---------------------------------------------------------------------------
648
+
649
+ # If the GENERATE_HTML tag is set to YES (the default) Doxygen will
650
+ # generate HTML output.
651
+
652
+ GENERATE_HTML = YES
653
+
654
+ # The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
655
+ # If a relative path is entered the value of OUTPUT_DIRECTORY will be
656
+ # put in front of it. If left blank `html' will be used as the default path.
657
+
658
+ HTML_OUTPUT = html
659
+
660
+ # The HTML_FILE_EXTENSION tag can be used to specify the file extension for
661
+ # each generated HTML page (for example: .htm,.php,.asp). If it is left blank
662
+ # doxygen will generate files with .html extension.
663
+
664
+ HTML_FILE_EXTENSION = .html
665
+
666
+ # The HTML_HEADER tag can be used to specify a personal HTML header for
667
+ # each generated HTML page. If it is left blank doxygen will generate a
668
+ # standard header.
669
+
670
+ HTML_HEADER = header.html
671
+
672
+ # The HTML_FOOTER tag can be used to specify a personal HTML footer for
673
+ # each generated HTML page. If it is left blank doxygen will generate a
674
+ # standard footer.
675
+
676
+ HTML_FOOTER = @top_srcdir@/misc/doxygen/footer.html
677
+
678
+ # The HTML_STYLESHEET tag can be used to specify a user-defined cascading
679
+ # style sheet that is used by each HTML page. It can be used to
680
+ # fine-tune the look of the HTML output. If the tag is left blank doxygen
681
+ # will generate a default style sheet. Note that doxygen will try to copy
682
+ # the style sheet file to the HTML output directory, so don't put your own
683
+ # stylesheet in the HTML output directory as well, or it will be erased!
684
+
685
+ HTML_STYLESHEET = @top_srcdir@/misc/doxygen/stylesheet.css
686
+
687
+ # If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
688
+ # files or namespaces will be aligned in HTML using tables. If set to
689
+ # NO a bullet list will be used.
690
+
691
+ HTML_ALIGN_MEMBERS = YES
692
+
693
+ # If the GENERATE_HTMLHELP tag is set to YES, additional index files
694
+ # will be generated that can be used as input for tools like the
695
+ # Microsoft HTML help workshop to generate a compressed HTML help file (.chm)
696
+ # of the generated HTML documentation.
697
+
698
+ GENERATE_HTMLHELP = NO
699
+
700
+ # If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
701
+ # be used to specify the file name of the resulting .chm file. You
702
+ # can add a path in front of the file if the result should not be
703
+ # written to the html output directory.
704
+
705
+ CHM_FILE = GecodeReference.chm
706
+
707
+ # If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
708
+ # be used to specify the location (absolute path including file name) of
709
+ # the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
710
+ # the HTML help compiler on the generated index.hhp.
711
+
712
+ HHC_LOCATION = hhc.exe
713
+
714
+ # If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
715
+ # controls if a separate .chi index file is generated (YES) or that
716
+ # it should be included in the master .chm file (NO).
717
+
718
+ GENERATE_CHI = NO
719
+
720
+ # If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
721
+ # controls whether a binary table of contents is generated (YES) or a
722
+ # normal table of contents (NO) in the .chm file.
723
+
724
+ BINARY_TOC = YES
725
+
726
+ # The TOC_EXPAND flag can be set to YES to add extra items for group members
727
+ # to the contents of the HTML help documentation and to the tree view.
728
+
729
+ TOC_EXPAND = YES
730
+
731
+ # The DISABLE_INDEX tag can be used to turn on/off the condensed index at
732
+ # top of each HTML page. The value NO (the default) enables the index and
733
+ # the value YES disables it.
734
+
735
+ DISABLE_INDEX = YES
736
+
737
+ # This tag can be used to set the number of enum values (range [1..20])
738
+ # that doxygen will group on one line in the generated HTML documentation.
739
+
740
+ ENUM_VALUES_PER_LINE = 4
741
+
742
+ # If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
743
+ # generated containing a tree-like index structure (just like the one that
744
+ # is generated for HTML Help). For this to work a browser that supports
745
+ # JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+,
746
+ # Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are
747
+ # probably better off using the HTML help feature.
748
+
749
+ GENERATE_TREEVIEW = NO
750
+
751
+ # If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
752
+ # used to set the initial width (in pixels) of the frame in which the tree
753
+ # is shown.
754
+
755
+ TREEVIEW_WIDTH = 250
756
+
757
+ #---------------------------------------------------------------------------
758
+ # configuration options related to the LaTeX output
759
+ #---------------------------------------------------------------------------
760
+
761
+ # If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
762
+ # generate Latex output.
763
+
764
+ GENERATE_LATEX = NO
765
+
766
+ # The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
767
+ # If a relative path is entered the value of OUTPUT_DIRECTORY will be
768
+ # put in front of it. If left blank `latex' will be used as the default path.
769
+
770
+ LATEX_OUTPUT = latex
771
+
772
+ # The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
773
+ # invoked. If left blank `latex' will be used as the default command name.
774
+
775
+ LATEX_CMD_NAME = latex
776
+
777
+ # The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
778
+ # generate index for LaTeX. If left blank `makeindex' will be used as the
779
+ # default command name.
780
+
781
+ MAKEINDEX_CMD_NAME = makeindex
782
+
783
+ # If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
784
+ # LaTeX documents. This may be useful for small projects and may help to
785
+ # save some trees in general.
786
+
787
+ COMPACT_LATEX = NO
788
+
789
+ # The PAPER_TYPE tag can be used to set the paper type that is used
790
+ # by the printer. Possible values are: a4, a4wide, letter, legal and
791
+ # executive. If left blank a4wide will be used.
792
+
793
+ PAPER_TYPE = a4wide
794
+
795
+ # The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
796
+ # packages that should be included in the LaTeX output.
797
+
798
+ EXTRA_PACKAGES = amsmath
799
+
800
+ # The LATEX_HEADER tag can be used to specify a personal LaTeX header for
801
+ # the generated latex document. The header should contain everything until
802
+ # the first chapter. If it is left blank doxygen will generate a
803
+ # standard header. Notice: only use this tag if you know what you are doing!
804
+
805
+ LATEX_HEADER =
806
+
807
+ # If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
808
+ # is prepared for conversion to pdf (using ps2pdf). The pdf file will
809
+ # contain links (just like the HTML output) instead of page references
810
+ # This makes the output suitable for online browsing using a pdf viewer.
811
+
812
+ PDF_HYPERLINKS = YES
813
+
814
+ # If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
815
+ # plain latex in the generated Makefile. Set this option to YES to get a
816
+ # higher quality PDF documentation.
817
+
818
+ USE_PDFLATEX = YES
819
+
820
+ # If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
821
+ # command to the generated LaTeX files. This will instruct LaTeX to keep
822
+ # running if errors occur, instead of asking the user for help.
823
+ # This option is also used when generating formulas in HTML.
824
+
825
+ LATEX_BATCHMODE = NO
826
+
827
+ # If LATEX_HIDE_INDICES is set to YES then doxygen will not
828
+ # include the index chapters (such as File Index, Compound Index, etc.)
829
+ # in the output.
830
+
831
+ LATEX_HIDE_INDICES = NO
832
+
833
+ #---------------------------------------------------------------------------
834
+ # configuration options related to the RTF output
835
+ #---------------------------------------------------------------------------
836
+
837
+ # If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
838
+ # The RTF output is optimized for Word 97 and may not look very pretty with
839
+ # other RTF readers or editors.
840
+
841
+ GENERATE_RTF = NO
842
+
843
+ # The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
844
+ # If a relative path is entered the value of OUTPUT_DIRECTORY will be
845
+ # put in front of it. If left blank `rtf' will be used as the default path.
846
+
847
+ RTF_OUTPUT = rtf
848
+
849
+ # If the COMPACT_RTF tag is set to YES Doxygen generates more compact
850
+ # RTF documents. This may be useful for small projects and may help to
851
+ # save some trees in general.
852
+
853
+ COMPACT_RTF = NO
854
+
855
+ # If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
856
+ # will contain hyperlink fields. The RTF file will
857
+ # contain links (just like the HTML output) instead of page references.
858
+ # This makes the output suitable for online browsing using WORD or other
859
+ # programs which support those fields.
860
+ # Note: wordpad (write) and others do not support links.
861
+
862
+ RTF_HYPERLINKS = NO
863
+
864
+ # Load stylesheet definitions from file. Syntax is similar to doxygen's
865
+ # config file, i.e. a series of assignments. You only have to provide
866
+ # replacements, missing definitions are set to their default value.
867
+
868
+ RTF_STYLESHEET_FILE =
869
+
870
+ # Set optional variables used in the generation of an rtf document.
871
+ # Syntax is similar to doxygen's config file.
872
+
873
+ RTF_EXTENSIONS_FILE =
874
+
875
+ #---------------------------------------------------------------------------
876
+ # configuration options related to the man page output
877
+ #---------------------------------------------------------------------------
878
+
879
+ # If the GENERATE_MAN tag is set to YES (the default) Doxygen will
880
+ # generate man pages
881
+
882
+ GENERATE_MAN = NO
883
+
884
+ # The MAN_OUTPUT tag is used to specify where the man pages will be put.
885
+ # If a relative path is entered the value of OUTPUT_DIRECTORY will be
886
+ # put in front of it. If left blank `man' will be used as the default path.
887
+
888
+ MAN_OUTPUT = man
889
+
890
+ # The MAN_EXTENSION tag determines the extension that is added to
891
+ # the generated man pages (default is the subroutine's section .3)
892
+
893
+ MAN_EXTENSION = .3
894
+
895
+ # If the MAN_LINKS tag is set to YES and Doxygen generates man output,
896
+ # then it will generate one additional man file for each entity
897
+ # documented in the real man page(s). These additional files
898
+ # only source the real man page, but without them the man command
899
+ # would be unable to find the correct page. The default is NO.
900
+
901
+ MAN_LINKS = NO
902
+
903
+ #---------------------------------------------------------------------------
904
+ # configuration options related to the XML output
905
+ #---------------------------------------------------------------------------
906
+
907
+ # If the GENERATE_XML tag is set to YES Doxygen will
908
+ # generate an XML file that captures the structure of
909
+ # the code including all documentation.
910
+
911
+ GENERATE_XML = NO
912
+
913
+ # The XML_OUTPUT tag is used to specify where the XML pages will be put.
914
+ # If a relative path is entered the value of OUTPUT_DIRECTORY will be
915
+ # put in front of it. If left blank `xml' will be used as the default path.
916
+
917
+ XML_OUTPUT = xml
918
+
919
+ # The XML_SCHEMA tag can be used to specify an XML schema,
920
+ # which can be used by a validating XML parser to check the
921
+ # syntax of the XML files.
922
+
923
+ XML_SCHEMA =
924
+
925
+ # The XML_DTD tag can be used to specify an XML DTD,
926
+ # which can be used by a validating XML parser to check the
927
+ # syntax of the XML files.
928
+
929
+ XML_DTD =
930
+
931
+ # If the XML_PROGRAMLISTING tag is set to YES Doxygen will
932
+ # dump the program listings (including syntax highlighting
933
+ # and cross-referencing information) to the XML output. Note that
934
+ # enabling this will significantly increase the size of the XML output.
935
+
936
+ XML_PROGRAMLISTING = YES
937
+
938
+ #---------------------------------------------------------------------------
939
+ # configuration options for the AutoGen Definitions output
940
+ #---------------------------------------------------------------------------
941
+
942
+ # If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
943
+ # generate an AutoGen Definitions (see autogen.sf.net) file
944
+ # that captures the structure of the code including all
945
+ # documentation. Note that this feature is still experimental
946
+ # and incomplete at the moment.
947
+
948
+ GENERATE_AUTOGEN_DEF = NO
949
+
950
+ #---------------------------------------------------------------------------
951
+ # configuration options related to the Perl module output
952
+ #---------------------------------------------------------------------------
953
+
954
+ # If the GENERATE_PERLMOD tag is set to YES Doxygen will
955
+ # generate a Perl module file that captures the structure of
956
+ # the code including all documentation. Note that this
957
+ # feature is still experimental and incomplete at the
958
+ # moment.
959
+
960
+ GENERATE_PERLMOD = NO
961
+
962
+ # If the PERLMOD_LATEX tag is set to YES Doxygen will generate
963
+ # the necessary Makefile rules, Perl scripts and LaTeX code to be able
964
+ # to generate PDF and DVI output from the Perl module output.
965
+
966
+ PERLMOD_LATEX = NO
967
+
968
+ # If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
969
+ # nicely formatted so it can be parsed by a human reader. This is useful
970
+ # if you want to understand what is going on. On the other hand, if this
971
+ # tag is set to NO the size of the Perl module output will be much smaller
972
+ # and Perl will parse it just the same.
973
+
974
+ PERLMOD_PRETTY = YES
975
+
976
+ # The names of the make variables in the generated doxyrules.make file
977
+ # are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
978
+ # This is useful so different doxyrules.make files included by the same
979
+ # Makefile don't overwrite each other's variables.
980
+
981
+ PERLMOD_MAKEVAR_PREFIX =
982
+
983
+ #---------------------------------------------------------------------------
984
+ # Configuration options related to the preprocessor
985
+ #---------------------------------------------------------------------------
986
+
987
+ # If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
988
+ # evaluate all C-preprocessor directives found in the sources and include
989
+ # files.
990
+
991
+ ENABLE_PREPROCESSING = YES
992
+
993
+ # If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
994
+ # names in the source code. If set to NO (the default) only conditional
995
+ # compilation will be performed. Macro expansion can be done in a controlled
996
+ # way by setting EXPAND_ONLY_PREDEF to YES.
997
+
998
+ MACRO_EXPANSION = YES
999
+
1000
+ # If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
1001
+ # then the macro expansion is limited to the macros specified with the
1002
+ # PREDEFINED and EXPAND_AS_PREDEFINED tags.
1003
+
1004
+ EXPAND_ONLY_PREDEF = YES
1005
+
1006
+ # If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
1007
+ # in the INCLUDE_PATH (see below) will be search if a #include is found.
1008
+
1009
+ SEARCH_INCLUDES = YES
1010
+
1011
+ # The INCLUDE_PATH tag can be used to specify one or more directories that
1012
+ # contain include files that are not input files but should be processed by
1013
+ # the preprocessor.
1014
+
1015
+ INCLUDE_PATH =
1016
+
1017
+ # You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
1018
+ # patterns (like *.h and *.hpp) to filter out the header-files in the
1019
+ # directories. If left blank, the patterns specified with FILE_PATTERNS will
1020
+ # be used.
1021
+
1022
+ INCLUDE_FILE_PATTERNS =
1023
+
1024
+ # The PREDEFINED tag can be used to specify one or more macro names that
1025
+ # are defined before the preprocessor is started (similar to the -D option of
1026
+ # gcc). The argument of the tag is a list of macros of the form: name
1027
+ # or name=definition (no spaces). If the definition and the = are
1028
+ # omitted =1 is assumed. To prevent a macro definition from being
1029
+ # undefined via #undef or recursively expanded use the := operator
1030
+ # instead of the = operator.
1031
+
1032
+ PREDEFINED = "GECODE_SET_EXPORT=" \
1033
+ "GECODE_INT_EXPORT=" \
1034
+ "GECODE_KERNEL_EXPORT=" \
1035
+ "GECODE_SEARCH_EXPORT=" \
1036
+ "GECODE_MINIMODEL_EXPORT=" \
1037
+ "GECODE_MSC_VIRTUAL=" \
1038
+ "GECODE_HAVE_INT_VARS=1" \
1039
+ "GECODE_HAVE_SET_VARS=1" \
1040
+ "GECODE_HAVE_CPLTSET_VARS=1" \
1041
+ "forceinline=inline"
1042
+
1043
+ # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
1044
+ # this tag can be used to specify a list of macro names that should be expanded.
1045
+ # The macro definition that is found in the sources will be used.
1046
+ # Use the PREDEFINED tag if you want to use a different macro definition.
1047
+
1048
+ EXPAND_AS_DEFINED =
1049
+
1050
+ # If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
1051
+ # doxygen's preprocessor will remove all function-like macros that are alone
1052
+ # on a line, have an all uppercase name, and do not end with a semicolon. Such
1053
+ # function macros are typically used for boiler-plate code, and will confuse
1054
+ # the parser if not removed.
1055
+
1056
+ SKIP_FUNCTION_MACROS = YES
1057
+
1058
+ #---------------------------------------------------------------------------
1059
+ # Configuration::additions related to external references
1060
+ #---------------------------------------------------------------------------
1061
+
1062
+ # The TAGFILES option can be used to specify one or more tagfiles.
1063
+ # Optionally an initial location of the external documentation
1064
+ # can be added for each tagfile. The format of a tag file without
1065
+ # this location is as follows:
1066
+ # TAGFILES = file1 file2 ...
1067
+ # Adding location for the tag files is done as follows:
1068
+ # TAGFILES = file1=loc1 "file2 = loc2" ...
1069
+ # where "loc1" and "loc2" can be relative or absolute paths or
1070
+ # URLs. If a location is present for each tag, the installdox tool
1071
+ # does not have to be run to correct the links.
1072
+ # Note that each tag file must have a unique name
1073
+ # (where the name does NOT include the path)
1074
+ # If a tag file is not located in the directory in which doxygen
1075
+ # is run, you must also specify the path to the tagfile here.
1076
+
1077
+ TAGFILES =
1078
+
1079
+ # When a file name is specified after GENERATE_TAGFILE, doxygen will create
1080
+ # a tag file that is based on the input files it reads.
1081
+
1082
+ GENERATE_TAGFILE = @GECODE_DOXYGEN_TAGFILE@
1083
+
1084
+ # If the ALLEXTERNALS tag is set to YES all external classes will be listed
1085
+ # in the class index. If set to NO only the inherited external classes
1086
+ # will be listed.
1087
+
1088
+ ALLEXTERNALS = NO
1089
+
1090
+ # If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
1091
+ # in the modules index. If set to NO, only the current project's groups will
1092
+ # be listed.
1093
+
1094
+ EXTERNAL_GROUPS = YES
1095
+
1096
+ # The PERL_PATH should be the absolute path and name of the perl script
1097
+ # interpreter (i.e. the result of `which perl').
1098
+
1099
+ PERL_PATH = /usr/bin/perl
1100
+
1101
+ #---------------------------------------------------------------------------
1102
+ # Configuration options related to the dot tool
1103
+ #---------------------------------------------------------------------------
1104
+
1105
+ # If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
1106
+ # generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base
1107
+ # or super classes. Setting the tag to NO turns the diagrams off. Note that
1108
+ # this option is superseded by the HAVE_DOT option below. This is only a
1109
+ # fallback. It is recommended to install and use dot, since it yields more
1110
+ # powerful graphs.
1111
+
1112
+ CLASS_DIAGRAMS = NO
1113
+
1114
+ # If set to YES, the inheritance and collaboration graphs will hide
1115
+ # inheritance and usage relations if the target is undocumented
1116
+ # or is not a class.
1117
+
1118
+ HIDE_UNDOC_RELATIONS = YES
1119
+
1120
+ # If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
1121
+ # available from the path. This tool is part of Graphviz, a graph visualization
1122
+ # toolkit from AT&T and Lucent Bell Labs. The other options in this section
1123
+ # have no effect if this option is set to NO (the default)
1124
+
1125
+ HAVE_DOT = YES
1126
+
1127
+ # If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
1128
+ # will generate a graph for each documented class showing the direct and
1129
+ # indirect inheritance relations. Setting this tag to YES will force the
1130
+ # the CLASS_DIAGRAMS tag to NO.
1131
+
1132
+ CLASS_GRAPH = NO
1133
+
1134
+ # If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
1135
+ # will generate a graph for each documented class showing the direct and
1136
+ # indirect implementation dependencies (inheritance, containment, and
1137
+ # class references variables) of the class with other documented classes.
1138
+
1139
+ COLLABORATION_GRAPH = NO
1140
+
1141
+ # If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen
1142
+ # will generate a graph for groups, showing the direct groups dependencies
1143
+
1144
+ GROUP_GRAPHS = NO
1145
+
1146
+ # If the UML_LOOK tag is set to YES doxygen will generate inheritance and
1147
+ # collaboration diagrams in a style similar to the OMG's Unified Modeling
1148
+ # Language.
1149
+
1150
+ UML_LOOK = YES
1151
+
1152
+ # If set to YES, the inheritance and collaboration graphs will show the
1153
+ # relations between templates and their instances.
1154
+
1155
+ TEMPLATE_RELATIONS = YES
1156
+
1157
+ # If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
1158
+ # tags are set to YES then doxygen will generate a graph for each documented
1159
+ # file showing the direct and indirect include dependencies of the file with
1160
+ # other documented files.
1161
+
1162
+ INCLUDE_GRAPH = NO
1163
+
1164
+ # If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
1165
+ # HAVE_DOT tags are set to YES then doxygen will generate a graph for each
1166
+ # documented header file showing the documented files that directly or
1167
+ # indirectly include this file.
1168
+
1169
+ INCLUDED_BY_GRAPH = NO
1170
+
1171
+ # If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will
1172
+ # generate a call dependency graph for every global function or class method.
1173
+ # Note that enabling this option will significantly increase the time of a run.
1174
+ # So in most cases it will be better to enable call graphs for selected
1175
+ # functions only using the \callgraph command.
1176
+
1177
+ CALL_GRAPH = NO
1178
+
1179
+ # If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
1180
+ # will graphical hierarchy of all classes instead of a textual one.
1181
+
1182
+ GRAPHICAL_HIERARCHY = NO
1183
+
1184
+ # If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES
1185
+ # then doxygen will show the dependencies a directory has on other directories
1186
+ # in a graphical way. The dependency relations are determined by the #include
1187
+ # relations between the files in the directories.
1188
+
1189
+ DIRECTORY_GRAPH = YES
1190
+
1191
+ # The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
1192
+ # generated by dot. Possible values are png, jpg, or gif
1193
+ # If left blank png will be used.
1194
+
1195
+ DOT_IMAGE_FORMAT = png
1196
+
1197
+ # The tag DOT_PATH can be used to specify the path where the dot tool can be
1198
+ # found. If left blank, it is assumed the dot tool can be found in the path.
1199
+
1200
+ DOT_PATH =
1201
+
1202
+ # The DOTFILE_DIRS tag can be used to specify one or more directories that
1203
+ # contain dot files that are included in the documentation (see the
1204
+ # \dotfile command).
1205
+
1206
+ DOTFILE_DIRS =
1207
+
1208
+ # The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width
1209
+ # (in pixels) of the graphs generated by dot. If a graph becomes larger than
1210
+ # this value, doxygen will try to truncate the graph, so that it fits within
1211
+ # the specified constraint. Beware that most browsers cannot cope with very
1212
+ # large images.
1213
+
1214
+ MAX_DOT_GRAPH_WIDTH = 1024
1215
+
1216
+ # The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height
1217
+ # (in pixels) of the graphs generated by dot. If a graph becomes larger than
1218
+ # this value, doxygen will try to truncate the graph, so that it fits within
1219
+ # the specified constraint. Beware that most browsers cannot cope with very
1220
+ # large images.
1221
+
1222
+ MAX_DOT_GRAPH_HEIGHT = 1024
1223
+
1224
+ # The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
1225
+ # graphs generated by dot. A depth value of 3 means that only nodes reachable
1226
+ # from the root by following a path via at most 3 edges will be shown. Nodes
1227
+ # that lay further from the root node will be omitted. Note that setting this
1228
+ # option to 1 or 2 may greatly reduce the computation time needed for large
1229
+ # code bases. Also note that a graph may be further truncated if the graph's
1230
+ # image dimensions are not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH
1231
+ # and MAX_DOT_GRAPH_HEIGHT). If 0 is used for the depth value (the default),
1232
+ # the graph is not depth-constrained.
1233
+
1234
+ MAX_DOT_GRAPH_DEPTH = 0
1235
+
1236
+ # Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
1237
+ # background. This is disabled by default, which results in a white background.
1238
+ # Warning: Depending on the platform used, enabling this option may lead to
1239
+ # badly anti-aliased labels on the edges of a graph (i.e. they become hard to
1240
+ # read).
1241
+
1242
+ DOT_TRANSPARENT = NO
1243
+
1244
+ # Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output
1245
+ # files in one run (i.e. multiple -o and -T options on the command line). This
1246
+ # makes dot run faster, but since only newer versions of dot (>1.8.10)
1247
+ # support this, this feature is disabled by default.
1248
+
1249
+ DOT_MULTI_TARGETS = NO
1250
+
1251
+ # If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
1252
+ # generate a legend page explaining the meaning of the various boxes and
1253
+ # arrows in the dot generated graphs.
1254
+
1255
+ GENERATE_LEGEND = YES
1256
+
1257
+ # If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
1258
+ # remove the intermediate dot files that are used to generate
1259
+ # the various graphs.
1260
+
1261
+ DOT_CLEANUP = YES
1262
+
1263
+ #---------------------------------------------------------------------------
1264
+ # Configuration::additions related to the search engine
1265
+ #---------------------------------------------------------------------------
1266
+
1267
+ # The SEARCHENGINE tag specifies whether or not a search engine should be
1268
+ # used. If set to NO the values of all tags below this one will be ignored.
1269
+
1270
+ SEARCHENGINE = NO